Skip to content

Commit eccd08a

Browse files
committed
Use anonymous enums
1 parent d0ecc58 commit eccd08a

3 files changed

Lines changed: 30 additions & 6 deletions

File tree

tests/unit/anonymous-enum.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
#include <assert.h>
2+
13
enum {
24
FIRST_A,
35
FIRST_B,
@@ -17,5 +19,15 @@ int main() {
1719
THIRD_A,
1820
THIRD_B,
1921
};
22+
23+
assert(FIRST_A == 0);
24+
assert(FIRST_B == 1);
25+
26+
assert(S::SECOND_A == 0);
27+
assert(S::SECOND_B == 1);
28+
29+
assert(THIRD_A == 0);
30+
assert(THIRD_B == 1);
31+
2032
return 0;
2133
};

tests/unit/out/refcount/anonymous-enum.rs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ use std::io::{Read, Seek, Write};
77
use std::os::fd::AsFd;
88
use std::rc::{Rc, Weak};
99
#[derive(Clone, Copy, PartialEq, Debug, Default)]
10-
enum anon_enum_1 {
10+
enum anon_enum_3 {
1111
#[default]
1212
FIRST_A = 0,
1313
FIRST_B = 1,
1414
}
1515
#[derive(Clone, Copy, PartialEq, Debug, Default)]
16-
enum anon_enum_9 {
16+
enum anon_enum_11 {
1717
#[default]
1818
SECOND_A = 0,
1919
SECOND_B = 1,
@@ -36,10 +36,16 @@ pub fn main() {
3636
}
3737
fn main_0() -> i32 {
3838
#[derive(Clone, Copy, PartialEq, Debug, Default)]
39-
enum anon_enum_16 {
39+
enum anon_enum_18 {
4040
#[default]
4141
THIRD_A = 0,
4242
THIRD_B = 1,
4343
};
44+
assert!(((anon_enum_3::FIRST_A as i32) == 0));
45+
assert!(((anon_enum_3::FIRST_B as i32) == 1));
46+
assert!(((anon_enum_11::SECOND_A as i32) == 0));
47+
assert!(((anon_enum_11::SECOND_B as i32) == 1));
48+
assert!(((anon_enum_18::THIRD_A as i32) == 0));
49+
assert!(((anon_enum_18::THIRD_B as i32) == 1));
4450
return 0;
4551
}

tests/unit/out/unsafe/anonymous-enum.rs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ use std::io::{Read, Seek, Write};
77
use std::os::fd::{AsFd, FromRawFd, IntoRawFd};
88
use std::rc::Rc;
99
#[derive(Clone, Copy, PartialEq, Debug, Default)]
10-
enum anon_enum_1 {
10+
enum anon_enum_3 {
1111
#[default]
1212
FIRST_A = 0,
1313
FIRST_B = 1,
1414
}
1515
#[derive(Clone, Copy, PartialEq, Debug, Default)]
16-
enum anon_enum_9 {
16+
enum anon_enum_11 {
1717
#[default]
1818
SECOND_A = 0,
1919
SECOND_B = 1,
@@ -30,10 +30,16 @@ pub fn main() {
3030
}
3131
unsafe fn main_0() -> i32 {
3232
#[derive(Clone, Copy, PartialEq, Debug, Default)]
33-
enum anon_enum_16 {
33+
enum anon_enum_18 {
3434
#[default]
3535
THIRD_A = 0,
3636
THIRD_B = 1,
3737
};
38+
assert!(((anon_enum_3::FIRST_A as i32) == (0)));
39+
assert!(((anon_enum_3::FIRST_B as i32) == (1)));
40+
assert!(((anon_enum_11::SECOND_A as i32) == (0)));
41+
assert!(((anon_enum_11::SECOND_B as i32) == (1)));
42+
assert!(((anon_enum_18::THIRD_A as i32) == (0)));
43+
assert!(((anon_enum_18::THIRD_B as i32) == (1)));
3844
return 0;
3945
}

0 commit comments

Comments
 (0)