summaryrefslogtreecommitdiffstats
path: root/src/test/ui/generator/overlap-locals.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/generator/overlap-locals.rs')
-rw-r--r--src/test/ui/generator/overlap-locals.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/test/ui/generator/overlap-locals.rs b/src/test/ui/generator/overlap-locals.rs
new file mode 100644
index 000000000..101c8714f
--- /dev/null
+++ b/src/test/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));
+}