rust/tests/pass/enum_discriminant_ptr_value.rs
2022-07-08 16:08:32 +00:00

10 lines
362 B
Rust

// A niche-optimized enum where the discriminant is a pointer value -- relies on ptr-to-int casts in
// the niche handling code.
//@compile-flags: -Zmiri-disable-stacked-borrows -Zmiri-disable-validation
fn main() {
let x = 42;
let val: Option<&i32> = unsafe { std::mem::transmute((&x as *const i32).wrapping_offset(2)) };
assert!(val.is_some());
}