Changelog #21
Commit: 90f8378
Release: 2020-04-20
New Features
- 
#3958Initial support for proc-macros  To enable it, set the following settings: 1 2 3 4 { "rust-analyzer.cargo.loadOutDirsFromCheck": true, "rust-analyzer.procMacro.enabled": true } 
- 
#3990switch to Chalk recursive solver. This significantly improves type inference when associated types are involved, for example, with iterators: Before Before After After
- 
#4034addunresolvedReferencesemantic tag for names which rust-analyzer fails to resolve. Adding to VS Code config1 2 3 "editor.tokenColorCustomizationsExperimental": { "unresolvedReference": "#FF0000" } will give fast feedback about unresolved references, highlighting them in red. No default highlighting is set, as rust-analyzer still has a fair number of false positives.   
- 
#3962don’t assign shortcut for Parent Module command. The original shortcut was ctrl+u, but it conflicts with VS Code build-in. It is recommended to assign custom shortcut forrust-analyzer.parentModuleaction.
- 
#3965implement inline associated type bounds.
- 
#3966add support for bounds on associated types in trait definitions.
- 
#4026omit more parameter hints in the presence of underscores.
- 
#3894implement exhaustiveness checking for record enum variants.
Fixes
- 
#3961fix extraneous comma when merging import.
- 
#3969Add Function assist now usestodo!macro.
- 
#3967handleSelf::Typein trait definitions when referring to own associated type.
- 
#3948fix inlay hints config synchronization between client and server.
- 
#3979fix missing match arm false positive for enum with no variants.
- 
#4010fix diagnostics ranges in macros.
- 
#4011fix self-fulfilling completion.
- 
#4012fix panic on ellipsis in pattern.
- 
#4021fix type equality for dyn Trait.
- 
#4022fix panic in syntax highlighting.
- 
#4023fix another crash from wrong binders.
- 
#4027don’t qualify builtins in generated code.
- 
#4036fix name resolution in guard closes and record patterns.