diff --git a/rust-version b/rust-version index d8673b921164..37be5591da6e 100644 --- a/rust-version +++ b/rust-version @@ -1 +1 @@ -7bdb5dee7bac15458b10b148e9e24968e633053e +a3bc0e752fad96f537b73f4e9bc805a73d404f7b diff --git a/tests/compile-fail/generator-pinned-moved.rs b/tests/compile-fail/generator-pinned-moved.rs index 8f873f37a5f8..e0ce5cb7333a 100644 --- a/tests/compile-fail/generator-pinned-moved.rs +++ b/tests/compile-fail/generator-pinned-moved.rs @@ -34,10 +34,10 @@ where fn main() { let mut generator_iterator_2 = { - let mut generator_iterator = GeneratorIteratorAdapter(firstn()); + let mut generator_iterator = Box::new(GeneratorIteratorAdapter(firstn())); generator_iterator.next(); // pin it - generator_iterator // move it + Box::new(*generator_iterator) // move it }; // *deallocate* generator_iterator generator_iterator_2.next(); // and use moved value diff --git a/tests/compile-fail/storage_dead_dangling.rs b/tests/compile-fail/storage_dead_dangling.rs index bf2503917ccb..ad8e05537e1a 100644 --- a/tests/compile-fail/storage_dead_dangling.rs +++ b/tests/compile-fail/storage_dead_dangling.rs @@ -1,5 +1,5 @@ -// This should fail even without validation -// compile-flags: -Zmiri-disable-validation +// This should fail even without validation, but some MIR opts mask the error +// compile-flags: -Zmiri-disable-validation -Zmir-opt-level=0 static mut LEAK: usize = 0; diff --git a/tests/compile-fail/validity/transmute_through_ptr.rs b/tests/compile-fail/validity/transmute_through_ptr.rs index 6a88fdaea1ee..0ef69efb86e6 100644 --- a/tests/compile-fail/validity/transmute_through_ptr.rs +++ b/tests/compile-fail/validity/transmute_through_ptr.rs @@ -1,4 +1,5 @@ #[repr(u32)] +#[derive(Debug)] enum Bool { True } fn evil(x: &mut Bool) { @@ -9,6 +10,7 @@ fn evil(x: &mut Bool) { fn main() { let mut x = Bool::True; evil(&mut x); - let _y = x; // reading this ought to be enough to trigger validation + let y = x; // reading this ought to be enough to trigger validation //~^ ERROR encountered 0x0000002c at ., but expected a valid enum tag + println!("{:?}", y); // make sure it is used (and not optimized away) }