]> git.lizzy.rs Git - rust.git/blob - src/test/ui/associated-consts/defaults-cyclic-fail.rs
unboxed-closures and type-alias-impl-trait nll revisions
[rust.git] / src / test / ui / associated-consts / defaults-cyclic-fail.rs
1 // build-fail
2 //~^ ERROR cycle detected when normalizing `<() as Tr>::A` [E0391]
3
4 // Cyclic assoc. const defaults don't error unless *used*
5 trait Tr {
6     const A: u8 = Self::B;
7
8     const B: u8 = Self::A;
9 }
10
11 // This impl is *allowed* unless its assoc. consts are used
12 impl Tr for () {}
13
14 fn main() {
15     // This triggers the cycle error
16     assert_eq!(<() as Tr>::A, 0);
17 }