trait X { type Y<'a>; fn foo<'a>(t : Self::Y<'a>) -> Self::Y<'a> { t } } impl X for T { fn foo<'a, T1: X>(t : T1) -> T1::Y<'a> { //~^ ERROR missing generics for associated type //~^^ ERROR missing generics for associated type t } } fn main() {}