1 // build-pass
2 
3 #![feature(generic_associated_types)]
4 
5 trait Trait {
6     type Ref<'a>;
7 }
8 
9 impl Trait for () {
10     type Ref<'a> = &'a i8;
11 }
12 
13 struct RefRef<'a, T: Trait>(&'a <T as Trait>::Ref<'a>);
14 
wrap<'a, T: Trait>(reff: &'a <T as Trait>::Ref<'a>) -> RefRef<'a, T>15 fn wrap<'a, T: Trait>(reff: &'a <T as Trait>::Ref<'a>) -> RefRef<'a, T> {
16     RefRef(reff)
17 }
18 
main()19 fn main() {}
20