1 // ignore-tidy-linelength
3 // Issue 23030: Detect overflowing discriminant
5 // See also run-pass/discrim-explicit-23030.rs where the suggested
6 // workaround is tested.
8 use std::{i8,u8,i16,u16,i32,u32,i64, u64};
15 OhNo, //~ ERROR enum discriminant overflowed [E0370]
26 OhNo, //~ ERROR enum discriminant overflowed [E0370]
37 OhNo, //~ ERROR enum discriminant overflowed [E0370]
48 OhNo, //~ ERROR enum discriminant overflowed [E0370]
49 //~| overflowed on value after 65535
60 OhNo, //~ ERROR enum discriminant overflowed [E0370]
61 //~| overflowed on value after 2147483647
72 OhNo, //~ ERROR enum discriminant overflowed [E0370]
73 //~| overflowed on value after 4294967295
84 OhNo, //~ ERROR enum discriminant overflowed [E0370]
85 //~| overflowed on value after 9223372036854775807
96 OhNo, //~ ERROR enum discriminant overflowed [E0370]
97 //~| overflowed on value after 18446744073709551615