summaryrefslogtreecommitdiffstats
path: root/src/test/ui/borrowck/borrowck-move-out-of-static-item.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/borrowck/borrowck-move-out-of-static-item.rs')
-rw-r--r--src/test/ui/borrowck/borrowck-move-out-of-static-item.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/test/ui/borrowck/borrowck-move-out-of-static-item.rs b/src/test/ui/borrowck/borrowck-move-out-of-static-item.rs
new file mode 100644
index 000000000..d01fb2618
--- /dev/null
+++ b/src/test/ui/borrowck/borrowck-move-out-of-static-item.rs
@@ -0,0 +1,16 @@
+// Ensure that moves out of static items is forbidden
+
+struct Foo {
+ foo: isize,
+}
+
+static BAR: Foo = Foo { foo: 5 };
+
+
+fn test(f: Foo) {
+ let _f = Foo{foo: 4, ..f};
+}
+
+fn main() {
+ test(BAR); //~ ERROR cannot move out of static item `BAR` [E0507]
+}