]> git.lizzy.rs Git - rust.git/blobdiff - tests/compile-fail/reallocate-change-alloc.rs
Auto merge of #1308 - RalfJung:miri, r=RalfJung
[rust.git] / tests / compile-fail / reallocate-change-alloc.rs
index 03040cd178da2009010ad0ae5ef816bd7f849fea..297029676962bd702ce058a0a3defa46c304068b 100644 (file)
@@ -1,15 +1,9 @@
-#![feature(alloc, allocator_api)]
-
-extern crate alloc;
-
-use alloc::alloc::Global;
-use std::alloc::*;
+use std::alloc::{alloc, realloc, Layout};
 
 fn main() {
     unsafe {
-        let x = Global.alloc(Layout::from_size_align_unchecked(1, 1)).unwrap();
-        let _y = Global.realloc(x, Layout::from_size_align_unchecked(1, 1), 1).unwrap();
-        let _z = *(x.as_ptr() as *mut u8); //~ ERROR constant evaluation error [E0080]
-        //~^ NOTE dangling pointer was dereferenced
+        let x = alloc(Layout::from_size_align_unchecked(1, 1));
+        realloc(x, Layout::from_size_align_unchecked(1, 1), 1);
+        let _z = *x; //~ ERROR dereferenced after this allocation got freed
     }
 }