diff --git a/tests/compile-fail-fullmir/stacked_borrows/illegal_write2.rs b/tests/compile-fail-fullmir/stacked_borrows/illegal_write2.rs index b53655c8214..f4fefaad5e2 100644 --- a/tests/compile-fail-fullmir/stacked_borrows/illegal_write2.rs +++ b/tests/compile-fail-fullmir/stacked_borrows/illegal_write2.rs @@ -1,7 +1,3 @@ -// We fail to detect this when neither this nor libstd are optimized/have retagging. -// FIXME: Investigate that. -// compile-flags: -Zmir-opt-level=0 - #![allow(unused_variables)] fn main() { diff --git a/tests/compile-fail-fullmir/stacked_borrows/pointer_smuggling.rs b/tests/compile-fail-fullmir/stacked_borrows/pointer_smuggling.rs index 68f3d2923b1..bd5e28b47e8 100644 --- a/tests/compile-fail-fullmir/stacked_borrows/pointer_smuggling.rs +++ b/tests/compile-fail-fullmir/stacked_borrows/pointer_smuggling.rs @@ -1,5 +1,3 @@ -#![allow(unused_variables)] - static mut PTR: *mut u8 = 0 as *mut _; fn fun1(x: &mut u8) { @@ -14,7 +12,8 @@ fn fun2() { } fn main() { - let val = &mut 0; // FIXME: This should also work with a local variable, but currently it does not. + let mut val = 0; + let val = &mut val; fun1(val); *val = 2; // this invalidates any raw ptrs `fun1` might have created. fun2(); // if they now use a raw ptr they break our reference diff --git a/tests/compiletest.rs b/tests/compiletest.rs index 7aa55ef6634..de693bd4632 100644 --- a/tests/compiletest.rs +++ b/tests/compiletest.rs @@ -106,7 +106,7 @@ fn miri_pass(sysroot: &Path, path: &str, target: &str, host: &str, need_fullmir: flags.push("-Zmir-opt-level=1".to_owned()); } if !have_fullmir() { - // Validation relies on the EscapeToRaw statements being emitted + // FIXME: Validation relies on the EscapeToRaw statements being emitted flags.push("-Zmiri-disable-validation".to_owned()); } diff --git a/tests/run-pass/dst-struct.rs b/tests/run-pass/dst-struct.rs index 0820614ab5c..6ef0a6330f7 100644 --- a/tests/run-pass/dst-struct.rs +++ b/tests/run-pass/dst-struct.rs @@ -127,8 +127,9 @@ pub fn main() { let f2 : Box> = f1; foo(&*f2); - // FIXME (#22405): Replace `Box::new` with `box` here when/if possible. let f3 : Box> = Box::>::new(Fat { f1: 5, f2: "some str", ptr: [1, 2, 3] }); foo(&*f3); + let f4 : Box> = box Fat { f1: 5, f2: "some str", ptr: [1, 2, 3] }; + foo(&*f4); } diff --git a/tests/run-pass/sums.rs b/tests/run-pass/sums.rs index a8dfd5ed66a..daeba060a78 100644 --- a/tests/run-pass/sums.rs +++ b/tests/run-pass/sums.rs @@ -1,6 +1,3 @@ -// FIXME(solson): 32-bit mode doesn't test anything currently. -#![cfg_attr(target_pointer_width = "32", allow(dead_code))] - #[derive(Debug, PartialEq)] enum Unit { Unit(()) } // Force non-C-enum representation. diff --git a/tests/run-pass/vec-matching-fold.rs b/tests/run-pass/vec-matching-fold.rs index 1a30f875580..396846b2323 100644 --- a/tests/run-pass/vec-matching-fold.rs +++ b/tests/run-pass/vec-matching-fold.rs @@ -22,7 +22,6 @@ fn foldl(values: &[T], &[ref head, ref tail..] => foldl(tail, function(initial, head), function), &[] => { - // FIXME: call guards let res = initial.clone(); res } } @@ -39,7 +38,6 @@ fn foldr(values: &[T], &[ref head.., ref tail] => foldr(head, function(tail, initial), function), &[] => { - // FIXME: call guards let res = initial.clone(); res } }