]>
Commit | Line | Data |
---|---|---|
60c5eb7d | 1 | // check-pass |
3157f602 | 2 | |
a1dfa0c6 | 3 | #![feature(untagged_unions)] |
3157f602 | 4 | |
a1dfa0c6 XL |
5 | struct A; |
6 | struct B; | |
7 | ||
8 | union U { | |
9 | a: A, | |
10 | b: B, | |
11 | } | |
a7813a04 | 12 | |
970d7e83 | 13 | fn main() { |
a1dfa0c6 XL |
14 | unsafe { |
15 | { | |
16 | let mut u = U { a: A }; | |
17 | let a = u.a; | |
18 | u.a = A; | |
19 | let a = u.a; // OK | |
20 | } | |
21 | { | |
22 | let mut u = U { a: A }; | |
23 | let a = u.a; | |
24 | u.b = B; | |
25 | let a = u.a; // OK | |
26 | } | |
27 | } | |
223e47cc | 28 | } |