5 //~^ NOTE associated type defined here, with 1 lifetime parameter
11 struct Impl<'a>(&'a ());
13 impl<'a> Trait<'a> for Impl<'a> {
15 type Bar<'b> = &'b ();
18 type A<'a> = Impl<'a>;
20 type B<'a> = <A<'a> as Trait>::Foo;
21 //~^ ERROR missing lifetime specifier
22 //~| NOTE expected named lifetime parameter
24 type C<'a, 'b> = <A<'a> as Trait>::Bar;
25 //~^ ERROR missing lifetime specifier
26 //~| ERROR missing generics for associated type
27 //~| NOTE expected named lifetime parameter
28 //~| NOTE these named lifetimes are available to use
29 //~| NOTE expected 1 lifetime argument