trait Proj { type Assoc; } impl Proj for T { type Assoc = T; } struct Fail, U>(T); impl Fail { const C: () = (); } fn main() { Fail::::C //~^ ERROR: type mismatch //~| ERROR no associated item named `C` found for struct `Fail` in the current scope }