summaryrefslogtreecommitdiffstats
path: root/src/test/ui/borrowck/borrowck-in-static.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/borrowck/borrowck-in-static.rs')
-rw-r--r--src/test/ui/borrowck/borrowck-in-static.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/test/ui/borrowck/borrowck-in-static.rs b/src/test/ui/borrowck/borrowck-in-static.rs
new file mode 100644
index 000000000..a45f7b18e
--- /dev/null
+++ b/src/test/ui/borrowck/borrowck-in-static.rs
@@ -0,0 +1,12 @@
+// check that borrowck looks inside consts/statics
+
+static FN : &'static (dyn Fn() -> (Box<dyn Fn()->Box<i32>>) + Sync) = &|| {
+ let x = Box::new(0);
+ Box::new(|| x) //~ ERROR cannot move out of `x`, a captured variable in an `Fn` closure
+};
+
+fn main() {
+ let f = (FN)();
+ f();
+ f();
+}