//@ compile-flags: -Znext-solver trait Trait { type Assoc; } struct W(*mut T); impl Trait for W> where W: Trait, { type Assoc = (); } trait NoOverlap {} impl NoOverlap for T {} impl> NoOverlap for W {} //~^ ERROR conflicting implementations of trait `NoOverlap` for type `W<_>` fn main() {}