Fix large_futures ICE with the next solver
With the new trait solver enabled by default in nightly-2026-08-22 [1], large_futures can ICE while inspecting an awaited future. The lint switches to Codegen mode to obtain coroutine layouts but passes a type whose opaque aliases are still marked rigid from type checking. Because layout_of receives an already-Codegen environment, its environment-change path does not clear those markers. Clear alias rigidity and normalize the awaited type in that environment before querying its layout. Codegen mode must remain: post-analysis layout queries cannot compute coroutine sizes [2]. The regression covers direct and pinned futures under both solvers, without other lint errors that could hide a delayed ICE. Fixes rust-lang/rust#161495. [1]: https://github.com/rust-lang/rust/pull/160619 [2]: https://github.com/rust-lang/rust/pull/145477
T
Tamir Duberstein committed
9ec68e875800b4eed15d0093d0e023f3faac6de0
Parent: e57f468