rust/tests/compile-fail/pointer_byte_read_1.rs
2018-11-26 15:31:53 +01:00

8 lines
304 B
Rust

fn main() {
let x = 13;
let y = &x;
let z = &y as *const &i32 as *const usize;
let ptr_bytes = unsafe { *z }; // the actual deref is fine, because we read the entire pointer at once
let _val = ptr_bytes / 432; //~ ERROR invalid arithmetic on pointers that would leak base addresses
}