rust/tests/compile-fail/ptr_int_cast.rs
2017-06-24 11:05:13 -07:00

9 lines
317 B
Rust

fn main() {
let x = &1;
// Casting down to u8 and back up to a pointer loses too much precision; this must not work.
let x = x as *const i32;
let x = x as u8; //~ ERROR: a raw memory access tried to access part of a pointer value as raw bytes
let x = x as *const i32;
let _ = unsafe { *x };
}