1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
//@ compile-flags: -Znext-solver //@ check-pass trait Mirror { type Assoc; } impl<T> Mirror for T { type Assoc = T; } struct Foo; impl Foo { fn new() -> Self { Foo } } fn main() { <Foo as Mirror>::Assoc::new(); }