about summary refs log tree commit diff
path: root/src/tools/miri/tests/fail/dangling_pointers/dangling_pointer_offset.rs
blob: 54b3280e71acf9ca98038c932195774f02f8b750 (plain)
1
2
3
4
5
6
7
8
9
10
11
// Make sure we find these even with many checks disabled.
//@compile-flags: -Zmiri-disable-alignment-check -Zmiri-disable-stacked-borrows -Zmiri-disable-validation

fn main() {
    let p = {
        let b = Box::new(42);
        &*b as *const i32
    };
    let x = unsafe { p.offset(42) }; //~ ERROR: /in-bounds pointer arithmetic failed: .* has been freed/
    panic!("this should never print: {:?}", x);
}