1 // Issue 23030: Detect overflowing discriminant
3 // See also run-pass/discrim-explicit-23030.rs where the suggested
4 // workaround is tested.
6 use std::{i8,u8,i16,u16,i32,u32,i64, u64};
13 OhNo, //~ ERROR enum discriminant overflowed [E0370]
24 OhNo, //~ ERROR enum discriminant overflowed [E0370]
35 OhNo, //~ ERROR enum discriminant overflowed [E0370]
46 OhNo, //~ ERROR enum discriminant overflowed [E0370]
47 //~| overflowed on value after 65535
58 OhNo, //~ ERROR enum discriminant overflowed [E0370]
59 //~| overflowed on value after 2147483647
70 OhNo, //~ ERROR enum discriminant overflowed [E0370]
71 //~| overflowed on value after 4294967295
82 OhNo, //~ ERROR enum discriminant overflowed [E0370]
83 //~| overflowed on value after 9223372036854775807
94 OhNo, //~ ERROR enum discriminant overflowed [E0370]
95 //~| overflowed on value after 18446744073709551615