trait Sup { type Assoc: Default; } impl Sup for () { type Assoc = T; } impl Dyn for () {} trait Dyn: Sup + Sup {} fn main() { let q: as Sup>::Assoc = Default::default(); //~^ ERROR the value of the associated type `Assoc` in `Sup` must be specified }