trait Mul { type Output; } trait Matrix: Mul<::Row, Output = ()> { type Row; type Transpose: Matrix; } fn is_mul>() {} fn f() { is_mul::(); //~^ ERROR expected one of `!`, `+`, `,`, `::`, or `>`, found `(` } fn main() {}