1 #![feature(generic_associated_types)]
2 #![feature(associated_type_defaults)]
5 type A<'a> where Self: 'a;
6 type B<'a, 'b> where 'a: 'b;
7 type C where Self: Clone;
8 fn d() where Self: Clone;
11 #[derive(Copy, Clone)]
14 impl<T> Foo for Fooy<T> {
15 type A<'a> where Self: 'static = (&'a ());
16 //~^ ERROR the parameter type `T` may not live long enough
17 type B<'a, 'b> where 'b: 'a = (&'a(), &'b ());
18 //~^ ERROR `impl` associated type
19 //~| ERROR lifetime bound not satisfied
20 type C where Self: Copy = String;
21 //~^ ERROR the trait bound `T: Copy` is not satisfied
22 fn d() where Self: Copy {}
23 //~^ ERROR the trait bound `T: Copy` is not satisfied