Open
Description
Given a goal like u32: Trait<'a, 'a>
, should this be canonicalized to exists<'0> u32: Trait<'0, '0>
or exists<'0, '1> u32: Trait<'0, '1>
? Using the first variant causes issues in MIR typeck (#27). Going with the second approach will force us to use a semantic lookup for opaque types (#17).
We ended up going back to uniquifying region constraints in rust-lang/rust#114117. This feels like the only way to avoid the ICEs in MIR typeck from #27
Activity