rust-lang / rust-lang/rust-analyzer
"rust-intrinsic" ABI and `#[rustc_intrinsic_must_be_overridden]` support has been removed from the compiler
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 16.9k
- Forks
- 2.2k
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 72
Description
It came up in rust-lang/rust#132735 that support for #[rustc_intrinsic_must_be_overridden] has been removed from rustc but is still present in rust-analyzer.
It was suggested https://github.com/rust-lang/rust/issues/132735#issuecomment-2784024026 to open an issue here.
Relevant sections of code are
- https://github.com/rust-lang/rust-analyzer/blob/c5882732e6e6e09ac75cddd13545e95860be1c42/crates/hir-expand/src/inert_attr_macro.rs#L643-L646
- https://github.com/rust-lang/rust-analyzer/blob/c5882732e6e6e09ac75cddd13545e95860be1c42/crates/hir-ty/src/mir/eval/shim.rs#L85
- https://github.com/rust-lang/rust-analyzer/blob/c5882732e6e6e09ac75cddd13545e95860be1c42/crates/intern/src/symbol/symbols.rs#L447
"rust-intrinsic" support had been removed a bit hastily in https://github.com/rust-lang/rust/commit/51b51b51d7931da85280382a81c4dd80c73ca754 which has been reverted in rust-lang/rust#139496
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 the references in crates/hir-expand/src/inert_attr_macro.rs, crates/hir-ty/src/mir/eval/shim.rs, and crates/intern/src/symbol/symbols.rs. Compare their handling of the removed rustc_intrinsic_must_be_overridden and rust-intrinsic support with current rustc behavior. Done means stale support is removed or updated consistently across these locations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100