3 trait Trait { type Assoc; }
4 impl<'a> Trait for &'a () { type Assoc = &'a (); }
6 struct MyTuple<T, U = <&'static () as Trait>::Assoc>(T, U);
7 fn test_tuple(x: &(), y: &()) {
10 let _: MyTuple::<_> = MyTuple((), y);
14 struct MyStruct<T, U = <&'static () as Trait>::Assoc> { val: (T, U), }
15 fn test_struct(x: &(), y: &()) {
16 MyStruct::<_> { val: ((), x) };
18 let _: MyStruct::<_> = MyStruct { val: ((), y) };