1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
// check-pass #![allow(dead_code)] trait T { type X; const X: Self::X; } fn foo<X: T>() { let _: X::X = X::X; } trait S { const X: Self::X; type X; } fn bar<X: S>() { let _: X::X = X::X; } fn main() {}