about summary refs log tree commit diff
path: root/tests/ui/generator/overlap-locals.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/generator/overlap-locals.rs')
-rw-r--r--tests/ui/generator/overlap-locals.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/ui/generator/overlap-locals.rs b/tests/ui/generator/overlap-locals.rs
new file mode 100644
index 00000000000..101c8714fa8
--- /dev/null
+++ b/tests/ui/generator/overlap-locals.rs
@@ -0,0 +1,29 @@
+// run-pass
+
+#![feature(generators)]
+
+fn main() {
+    let a = || {
+        {
+            let w: i32 = 4;
+            yield;
+            println!("{:?}", w);
+        }
+        {
+            let x: i32 = 5;
+            yield;
+            println!("{:?}", x);
+        }
+        {
+            let y: i32 = 6;
+            yield;
+            println!("{:?}", y);
+        }
+        {
+            let z: i32 = 7;
+            yield;
+            println!("{:?}", z);
+        }
+    };
+    assert_eq!(8, std::mem::size_of_val(&a));
+}