// run-rustfix trait TraitB { type Item; } trait TraitA<A> { type Type; fn bar<T>(_: T) -> Self; fn baz<T>(_: T) -> Self where T: TraitB, <T as TraitB>::Item: Copy; } struct S; struct Type; impl TraitA<()> for S { //~ ERROR not all trait items implemented fn baz<T>(_: T) -> Self where T: TraitB, <T as TraitB>::Item: Copy { todo!() } fn bar<T>(_: T) -> Self { todo!() } type Type = Type; } fn main() {}