Uh oh!
There was an error while loading. Please reload this page.
resolve: Inherit eager invocation parents - #159242
Conversation
rustbot
commented
Jul 13, 2026
rustbot has assigned @dingxiangfei2009. Use Why was this reviewer chosen?The reviewer was selected based on:
|
petrochenkov
commented
Jul 13, 2026
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Dnreikronos
commented
Jul 14, 2026
@rustbot ready |
petrochenkov
commented
Jul 14, 2026
r=me after squashing commits and green CI. |
rustbot
commented
Jul 14, 2026
Reminder, once the PR becomes ready for a review, use |
fbb5670 to
c8fe362CompareDnreikronos
commented
Jul 14, 2026
@rustbot ready |
Dnreikronos
commented
Jul 14, 2026
@bors r=petrochenkov |
@Dnreikronos: 🔑 Insufficient privileges: not in review users |
Dnreikronos
commented
Jul 14, 2026
Sorry for the noise, looks like I don't have bors review privileges here. The commits are squashed and CI is green now. |
petrochenkov
commented
Jul 14, 2026
@bors r+ |
Rollup of 15 pull requests Successful merges: - #159311 (Add 1.97.1 release notes) - #156220 (Implement `VecDeque::truncate_to_range`) - #158608 (Implement `#[diagnostic::opaque]` attribute to hide backtraces of macros.) - #159168 (Fix static_mut_refs lint check logic) - #159242 (resolve: Inherit eager invocation parents) - #159256 (Account for async closures when pointing at lifetime in return type) - #159310 (cleanup: upstream dropped AMX-TF32) - #158348 (Add documentation for the `inline` attribute) - #159181 (add rustc_no_writable to mem::forget and structs it uses) - #159191 (Mark `PrivateItems` with `std_internals` unstable feature.) - #159194 (rustdoc: Fix auto trait normalization env) - #159196 (OnceCell: Improve wording in module docs) - #159289 (Fix Zulip backport command suggestion) - #159294 (renovate: don't update PRs in the merge queue) - #159305 (std: clarify available_parallelism docs for Windows 11 processor groups)
Uh oh!
There was an error while loading. Please reload this page.
Rollup merge of #159242 - Dnreikronos:resolver/eager_invocation_parent, r=petrochenkov resolve: Inherit eager invocation parents Fixes#159233 `format!` eagerly expands its first arg. In this case that path ran into a glob delegation from `fn_delegation`, and resolver tried to read `invocation_parents[invoc_id]` for an eager invocation that never went through reduced-graph collection. So a bad input got an ICE instead of normal errors. This makes eager invocations copy `InvocationParent` from the eager expansion root, matching the parent-scope fallback already there. imo this is the right place to fix it: idk of a cleaner split where the scope and parent def do not drift apart. fyi the UI regression is the reported case, btw, and it still emits the expected user-facing errors without the panic.
Rollup of 15 pull requests Successful merges: - rust-lang/rust#159311 (Add 1.97.1 release notes) - rust-lang/rust#156220 (Implement `VecDeque::truncate_to_range`) - rust-lang/rust#158608 (Implement `#[diagnostic::opaque]` attribute to hide backtraces of macros.) - rust-lang/rust#159168 (Fix static_mut_refs lint check logic) - rust-lang/rust#159242 (resolve: Inherit eager invocation parents) - rust-lang/rust#159256 (Account for async closures when pointing at lifetime in return type) - rust-lang/rust#159310 (cleanup: upstream dropped AMX-TF32) - rust-lang/rust#158348 (Add documentation for the `inline` attribute) - rust-lang/rust#159181 (add rustc_no_writable to mem::forget and structs it uses) - rust-lang/rust#159191 (Mark `PrivateItems` with `std_internals` unstable feature.) - rust-lang/rust#159194 (rustdoc: Fix auto trait normalization env) - rust-lang/rust#159196 (OnceCell: Improve wording in module docs) - rust-lang/rust#159289 (Fix Zulip backport command suggestion) - rust-lang/rust#159294 (renovate: don't update PRs in the merge queue) - rust-lang/rust#159305 (std: clarify available_parallelism docs for Windows 11 processor groups)
Fixes#159233
format!eagerly expands its first arg. In this case that path ran into a glob delegation fromfn_delegation, and resolver tried to readinvocation_parents[invoc_id]for an eager invocation that never went through reduced-graph collection. So a bad input got an ICE instead of normal errors.This makes eager invocations copy
InvocationParentfrom the eager expansion root, matching the parent-scope fallback already there. imo this is the right place to fix it: idk of a cleaner split where the scope and parent def do not drift apart. fyi the UI regression is the reported case, btw, and it still emits the expected user-facing errors without the panic.