| //@ check-pass | |
| // Another minimized regression test for #112832. | |
| trait Trait { | |
| type Assoc; | |
| } | |
| trait Sub<'a>: Trait<Assoc = <Self as Sub<'a>>::SubAssoc> { | |
| type SubAssoc; | |
| } | |
| // By using the where-clause we normalize `<T as Trait>::Assoc` to | |
| // `<T as Sub<'a>>::SubAssoc` where `'a` is an unconstrained region | |
| // variable. | |
| fn foo<T>(x: <T as Trait>::Assoc) | |
| where | |
| for<'a> T: Sub<'a>, | |
| {} | |
| fn main() {} |