about summary refs log tree commit diff
path: root/src/test/run-make-fulldeps/coverage/conditions.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/run-make-fulldeps/coverage/conditions.rs')
-rw-r--r--src/test/run-make-fulldeps/coverage/conditions.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/test/run-make-fulldeps/coverage/conditions.rs b/src/test/run-make-fulldeps/coverage/conditions.rs
index da206e28f31..8a2a0b53e58 100644
--- a/src/test/run-make-fulldeps/coverage/conditions.rs
+++ b/src/test/run-make-fulldeps/coverage/conditions.rs
@@ -36,6 +36,26 @@ fn main() {
         return;
     }
 
+    if true {
+        let mut countdown = 0;
+        if true {
+            countdown = 10;
+        }
+
+        if countdown > 7 {
+            countdown -= 4;
+        }
+        else if countdown > 2 {
+            if countdown < 1 || countdown > 5 || countdown != 9 {
+                countdown = 0;
+            }
+            countdown -= 5;
+        } else {
+            return;
+        }
+    } // Note: closing brace shows uncovered (vs. `0` for implicit else) because condition literal
+      // `true` was const-evaluated. The compiler knows the `if` block will be executed.
+
     let mut countdown = 0;
     if true {
         countdown = 1;