rust-lang / rust-lang/rust-analyzer
2024 Edition
Open
Nobody has claimed this yet.
C-tracking-issue
- Dominant language
- Rust
- Stars
- 16.9k
- Forks
- 2.2k
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 72
Description
Issue to track new edition things we need to implement
Quoting the edition guide:
- RPIT lifetime capture rules
- if let temporary scope: probably needs to be reflected in our mir?
- Tail expression temporary scope: same as above
- Match ergonomics: will likely only ship backwards compat diagnostics
- Unsafe extern blocks: Mostly done, diagnostic for missing unsafe in edition 2024 is missing though
- Unsafe attributes: Supported, but no diagnostics yet for missing
unsafewrapping for the given attributes - unsafe_op_in_unsafe_fn warning
- Disallow references to static mut
- Never type fallback change: We always had this behavior I believe
- Macro Fragment Specifiers
- Missing macro fragment specifiers
- gen keyword
- Reserved syntax
- Add IntoIterator for Box<[T]>
- Unsafe functions
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with one unchecked Rust 2024 Edition Guide item, such as temporary scopes, match ergonomics, unsafe extern blocks, unsafe attributes, or static mut references. Read its linked guide section and determine the rust-analyzer behavior it requires; done means that item is implemented and can be marked complete in this tracking issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100