1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// revisions: rpass cfail trait Tr where (Self::Arr,): Sized, { type Arr; const C: usize = 0; } impl Tr for str { #[cfg(rpass)] type Arr = [u8; 8]; #[cfg(cfail)] type Arr = [u8; Self::C]; //[cfail]~^ ERROR cycle detected when evaluating type-level constant } fn main() {}