]> git.lizzy.rs Git - rust.git/blob - tests/ui/enums_clike.rs
Auto merge of #4478 - tsurai:master, r=flip1995
[rust.git] / tests / ui / enums_clike.rs
1 // ignore-x86
2
3 #![warn(clippy::all)]
4 #![allow(unused)]
5
6 #[repr(usize)]
7 enum NonPortable {
8     X = 0x1_0000_0000,
9     Y = 0,
10     Z = 0x7FFF_FFFF,
11     A = 0xFFFF_FFFF,
12 }
13
14 enum NonPortableNoHint {
15     X = 0x1_0000_0000,
16     Y = 0,
17     Z = 0x7FFF_FFFF,
18     A = 0xFFFF_FFFF,
19 }
20
21 #[repr(isize)]
22 enum NonPortableSigned {
23     X = -1,
24     Y = 0x7FFF_FFFF,
25     Z = 0xFFFF_FFFF,
26     A = 0x1_0000_0000,
27     B = std::i32::MIN as isize,
28     C = (std::i32::MIN as isize) - 1,
29 }
30
31 enum NonPortableSignedNoHint {
32     X = -1,
33     Y = 0x7FFF_FFFF,
34     Z = 0xFFFF_FFFF,
35     A = 0x1_0000_0000,
36 }
37
38 /*
39 FIXME: uncomment once https://github.com/rust-lang/rust/issues/31910 is fixed
40 #[repr(usize)]
41 enum NonPortable2<T: Trait> {
42     X = Trait::Number,
43     Y = 0,
44 }
45
46 trait Trait {
47     const Number: usize = 0x1_0000_0000;
48 }
49 */
50
51 fn main() {}