about summary refs log tree commit diff
path: root/src/tools/miri/tests/fail/unaligned_pointers/alignment.rs
blob: 438e74e5b8d5228753458a87b913b43ab40a374b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//@normalize-stderr-test: "\| +\^+" -> "| ^"

fn main() {
    // No retry needed, this fails reliably.

    let mut x = [0u8; 20];
    let x_ptr: *mut u8 = x.as_mut_ptr();
    #[rustfmt::skip]
    unsafe {
        // At least one of these is definitely unaligned.
        *(x_ptr as *mut u32) = 42; *(x_ptr.add(1) as *mut u32) = 42;
        //~^ ERROR: but alignment 4 is required
    };
}