diff options
Diffstat (limited to 'src/test/ui/cleanup-shortcircuit.rs')
-rw-r--r-- | src/test/ui/cleanup-shortcircuit.rs | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/src/test/ui/cleanup-shortcircuit.rs b/src/test/ui/cleanup-shortcircuit.rs deleted file mode 100644 index fe867ce1f..000000000 --- a/src/test/ui/cleanup-shortcircuit.rs +++ /dev/null @@ -1,24 +0,0 @@ -// run-pass -// Test that cleanups for the RHS of shortcircuiting operators work. - -// pretty-expanded FIXME #23616 - -#![allow(deref_nullptr)] - - -use std::env; - -pub fn main() { - let args: Vec<String> = env::args().collect(); - - // Here, the rvalue `"signal".to_string()` requires cleanup. Older versions - // of the code had a problem that the cleanup scope for this - // expression was the end of the `if`, and as the `"signal".to_string()` - // expression was never evaluated, we wound up trying to clean - // uninitialized memory. - - if args.len() >= 2 && args[1] == "signal" { - // Raise a segfault. - unsafe { *std::ptr::null_mut::<isize>() = 0; } - } -} |