You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Erase regions in New Abstract Consts
When an abstract const is constructed, we previously included lifetimes in the set of substitutes, so it was not able to unify two abstract consts if their lifetimes did not match but the values did, despite the values not depending on the lifetimes. This caused code that should have compiled to not compile.
Fixesrust-lang#98452
r? `@lcnr`
Erase regions in New Abstract Consts
When an abstract const is constructed, we previously included lifetimes in the set of substitutes, so it was not able to unify two abstract consts if their lifetimes did not match but the values did, despite the values not depending on the lifetimes. This caused code that should have compiled to not compile.
Fixesrust-lang#98452
r? ``@lcnr``
results in
but should compile.
I assume that the error is caused by this structural comparison here
rust/compiler/rustc_trait_selection/src/traits/const_evaluatable.rs
Lines 767 to 769 in d017d59
We probably want to erase lifetimes at some earlier point, probably during the construction of the
AbstractConst
s.The text was updated successfully, but these errors were encountered: