Fix ICE when macro-expanded extern crate shadows std by is57primenumber · Pull Request #153187 · rust-lang/rust
added
the
S-waiting-on-review
label
Feb 27, 2026
rustbot
added
the
T-compiler
label
Feb 27, 2026
rust-bors
bot
added
S-waiting-on-bors
and removed S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.labels
Feb 27, 2026JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request
Feb 28, 2026…ng, r=petrochenkov Fix ICE when macro-expanded extern crate shadows std Fixes rust-lang#152895 This PR fixes an ICE that occurs when a macro-expanded `extern crate` shadows a prelude name, which leaves the resolver in an inconsistent state due to `issue_145575_hack`. I disabled the assertion when the `issue_145575_hack` flag is enabled. The fix is applied in two locations to cover both cases (whether `is_error_from_last_segment` is true or false). This approach was inspired by the context and fix discussed in rust-lang#151213.
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request
Feb 28, 2026…ng, r=petrochenkov Fix ICE when macro-expanded extern crate shadows std Fixes rust-lang#152895 This PR fixes an ICE that occurs when a macro-expanded `extern crate` shadows a prelude name, which leaves the resolver in an inconsistent state due to `issue_145575_hack`. I disabled the assertion when the `issue_145575_hack` flag is enabled. The fix is applied in two locations to cover both cases (whether `is_error_from_last_segment` is true or false). This approach was inspired by the context and fix discussed in rust-lang#151213.
This was referenced
Feb 28, 2026rust-bors bot pushed a commit that referenced this pull request
Feb 28, 2026…uwer Rollup of 12 pull requests Successful merges: - #153211 (`rust-analyzer` subtree update) - #149027 (Improve cross-crate trait impl param mismatch suggestions ) - #152730 (add field representing types) - #153136 (Correctly handle `#[doc(alias = "...")]` attribute on inlined reexports) - #152165 (Normalize capture place `ty`s to prevent ICE) - #152615 (refactor 'valid for read/write' definition: exclude null) - #153109 (Fix LegacyKeyValueFormat report from docker build: aarch64-gnu-debug) - #153172 (Fix comment about placeholders) - #153187 (Fix ICE when macro-expanded extern crate shadows std) - #153190 (Don't allow subdiagnostic to use variables from their parent) - #153200 (Remove redundant clone) - #153216 (mark two polonius tests as known-bug)
rust-timer added a commit that referenced this pull request
Feb 28, 2026Rollup merge of #153187 - is57primenumber:fix-ice-on-shadowing, r=petrochenkov Fix ICE when macro-expanded extern crate shadows std Fixes #152895 This PR fixes an ICE that occurs when a macro-expanded `extern crate` shadows a prelude name, which leaves the resolver in an inconsistent state due to `issue_145575_hack`. I disabled the assertion when the `issue_145575_hack` flag is enabled. The fix is applied in two locations to cover both cases (whether `is_error_from_last_segment` is true or false). This approach was inspired by the context and fix discussed in #151213.
github-actions bot pushed a commit to rust-lang/rust-analyzer that referenced this pull request
Mar 2, 2026This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters