rust/tests/compile-fail/fn_ptr_offset.rs
2018-10-19 12:29:49 +02:00

15 lines
384 B
Rust

// Validation makes this fail in the wrong place
// compile-flags: -Zmir-emit-validate=0 -Zmiri-disable-validation
use std::mem;
fn f() {}
fn main() {
let x : fn() = f;
let y : *mut u8 = unsafe { mem::transmute(x) };
let y = y.wrapping_offset(1);
let x : fn() = unsafe { mem::transmute(y) };
x(); //~ ERROR tried to use a function pointer after offsetting it
}