//~ ERROR the parameter type `Self` may not live long enough trait GatTrait { type Gat<'a> where Self: 'a; } trait SuperTrait: for<'a> GatTrait = T> { fn c(&self) -> dyn SuperTrait; //~^ ERROR associated item referring to unboxed trait object for its own trait //~| ERROR the trait `SuperTrait` cannot be made into an object } fn main() {}