rust/tests/compile-fail/stacked_borrows/unescaped_local.rs

9 lines
269 B
Rust

// Make sure we cannot use raw ptrs to access a local that
// we took the direct address of.
fn main() {
let mut x = 42;
let raw = &mut x as *mut i32 as usize as *mut i32;
let _ptr = &mut x;
unsafe { *raw = 13; } //~ ERROR does not exist on the stack
}