summaryrefslogtreecommitdiffstats
path: root/src/test/mir-opt/while_storage.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/mir-opt/while_storage.rs')
-rw-r--r--src/test/mir-opt/while_storage.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/mir-opt/while_storage.rs b/src/test/mir-opt/while_storage.rs
new file mode 100644
index 000000000..afd083acb
--- /dev/null
+++ b/src/test/mir-opt/while_storage.rs
@@ -0,0 +1,19 @@
+// Test that we correctly generate StorageDead statements for while loop
+// conditions on all branches
+
+fn get_bool(c: bool) -> bool {
+ c
+}
+
+// EMIT_MIR while_storage.while_loop.PreCodegen.after.mir
+fn while_loop(c: bool) {
+ while get_bool(c) {
+ if get_bool(c) {
+ break;
+ }
+ }
+}
+
+fn main() {
+ while_loop(false);
+}