| // This should never be allowed -- `foo.a` and `foo.b` are | |
| // overlapping, so since `x` is not `mut` we should not permit | |
| // reassignment. | |
| union Foo { | |
| a: u32, | |
| b: u32, | |
| } | |
| unsafe fn overlapping_fields() { | |
| let x: Foo; | |
| x.a = 1; //~ ERROR | |
| x.b = 22; //~ ERROR | |
| } | |
| fn main() { } |