blob: 23dd71d87589878acdf4ff438b63b6d39d60233c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#![forbid(unaligned_references)]
// Refs: https://github.com/rust-lang/rust/issues/82523
#[repr(packed)]
struct Packed {
f: u32,
}
#[repr(packed(2))]
struct PackedN {
f: u32,
}
fn main() {
let a = Packed { f: 1 };
&a.f; //~ ERROR reference to packed field is unaligned
let _ = &a.f; //~ ERROR reference to packed field is unaligned
let b = PackedN { f: 1 };
&b.f; //~ ERROR reference to packed field is unaligned
let _ = &b.f; //~ ERROR reference to packed field is unaligned
}
|