Skip to content

Commit 4da1f71

Browse files
committed
Add repr(u8) to the test
1 parent 7f6d473 commit 4da1f71

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

src/test/run-pass/repr_c_int_align.rs

+16
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,12 @@ enum ReprCu8 {
1818
B,
1919
}
2020

21+
#[repr(u8)]
22+
enum Repru8 {
23+
A(u16),
24+
B,
25+
}
26+
2127
#[repr(C)]
2228
struct ReprC {
2329
tag: u8,
@@ -26,6 +32,7 @@ struct ReprC {
2632
}
2733

2834
fn main() {
35+
// Test `repr(C, u8)`.
2936
let r1 = ReprC { tag: 0, padding: 0, payload: 0 };
3037
let r2 = ReprC { tag: 0, padding: 1, payload: 1 };
3138

@@ -36,4 +43,13 @@ fn main() {
3643
(ReprCu8::A(_), ReprCu8::A(_)) => (),
3744
_ => assert!(false)
3845
};
46+
47+
// Test `repr(u8)`.
48+
let t1: &Repru8 = unsafe { std::mem::transmute(&r1) };
49+
let t2: &Repru8 = unsafe { std::mem::transmute(&r2) };
50+
51+
match (t1, t2) {
52+
(Repru8::A(_), Repru8::A(_)) => (),
53+
_ => assert!(false)
54+
};
3955
}

0 commit comments

Comments
 (0)