blob: 49df267c4c3e25179d0e6ef906621747a8776f13 [file] [log] [blame]
use std::alloc::{Layout, alloc, dealloc};
fn main() {
unsafe {
let x = alloc(Layout::from_size_align_unchecked(1, 1));
let ptr1 = (&mut *x) as *mut u8;
let ptr2 = (&mut *ptr1) as *mut u8;
// Invalidate ptr2 by writing to ptr1.
ptr1.write(0);
// Deallocate through ptr2.
dealloc(ptr2, Layout::from_size_align_unchecked(1, 1));
//~^ERROR: /deallocation .* tag does not exist in the borrow stack/
}
}