```rust trait T { type X } struct Foo{} impl T for Foo { type X = u32 type Y = u64 // <- should be an error here } ```