| use std::mem; | |
| #[allow(unused)] | |
| #[repr(C)] | |
| union U { | |
| field: (u8, u16), | |
| } | |
| fn main() { | |
| unsafe { | |
| let p: U = mem::transmute(0u32); // The copy when `U` is returned from `transmute` should destroy padding. | |
| let c = &p as *const _ as *const [u8; 4]; | |
| // Read the entire thing, definitely contains the padding byte. | |
| let _val = *c; | |
| //~^ERROR: uninitialized | |
| } | |
| } |