about summary refs log tree commit diff
path: root/src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs')
-rw-r--r--src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs41
1 files changed, 0 insertions, 41 deletions
diff --git a/src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs b/src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs
deleted file mode 100644
index afc77355ab0..00000000000
--- a/src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs
+++ /dev/null
@@ -1,41 +0,0 @@
-// run-pass
-// This test verifies that temporaries created for `while`'s and `if`
-// conditions are dropped after the condition is evaluated.
-
-struct Temporary;
-
-static mut DROPPED: isize = 0;
-
-impl Drop for Temporary {
-    fn drop(&mut self) {
-        unsafe { DROPPED += 1; }
-    }
-}
-
-impl Temporary {
-    fn do_stuff(&self) -> bool {true}
-}
-
-fn borrow() -> Box<Temporary> { Box::new(Temporary) }
-
-
-pub fn main() {
-    let mut i = 0;
-
-    // This loop's condition
-    // should call `Temporary`'s
-    // `drop` 6 times.
-    while borrow().do_stuff() {
-        i += 1;
-        unsafe { assert_eq!(DROPPED, i) }
-        if i > 5 {
-            break;
-        }
-    }
-
-    // This if condition should
-    // call it 1 time
-    if borrow().do_stuff() {
-        unsafe { assert_eq!(DROPPED, i + 1) }
-    }
-}