diff --git a/tests/compile-fail/bugs/option_box_transmute_ptr.rs b/tests/compile-fail/bugs/option_box_transmute_ptr.rs new file mode 100644 index 000000000000..84161daf88dd --- /dev/null +++ b/tests/compile-fail/bugs/option_box_transmute_ptr.rs @@ -0,0 +1,13 @@ +#![feature(custom_attribute)] +#![allow(dead_code, unused_attributes)] + +#[miri_run] +fn option_box_deref() -> i32 { + let val = Some(Box::new(42)); + unsafe { + let ptr: *const i32 = std::mem::transmute(val); //~ ERROR: pointer offset outside bounds of allocation + *ptr + } +} + +fn main() {}