about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBrian Koropoff <bkoropoff@gmail.com>2014-10-11 20:10:14 -0700
committerBrian Koropoff <bkoropoff@gmail.com>2014-10-16 17:29:44 -0700
commita8f90bcb1871a8658375195f676d3706ab29a3a5 (patch)
tree0aac47b5af730768f04a96aa904315b1dce645eb
parent9094aabb12573c7a4de11144f3b80bf7126e6e1b (diff)
downloadrust-a8f90bcb1871a8658375195f676d3706ab29a3a5.tar.gz
rust-a8f90bcb1871a8658375195f676d3706ab29a3a5.zip
Update test for issue 17780 since diagnostic message have changed
The test was also renamed to be more descriptive.
-rw-r--r--src/test/compile-fail/borrow-immutable-upvar-mutation.rs (renamed from src/test/compile-fail/issue-17780.rs)27
1 files changed, 9 insertions, 18 deletions
diff --git a/src/test/compile-fail/issue-17780.rs b/src/test/compile-fail/borrow-immutable-upvar-mutation.rs
index 2072b2ee2d2..f748c400654 100644
--- a/src/test/compile-fail/issue-17780.rs
+++ b/src/test/compile-fail/borrow-immutable-upvar-mutation.rs
@@ -10,41 +10,32 @@
 
 #![feature(unboxed_closures, overloaded_calls)]
 
+// Tests that we can't assign to or mutably borrow upvars from `Fn`
+// closures (issue #17780)
+
 fn set(x: &mut uint) { *x = 5; }
 
 fn main() {
     // By-ref captures
     {
         let mut x = 0u;
-        let _f = |&:| x = 42;
-        //~^ ERROR cannot assign to data in a free
-        // variable from an immutable unboxed closure
+        let _f = |&:| x = 42; //~ ERROR cannot assign
 
         let mut y = 0u;
-        let _g = |&:| set(&mut y);
-        //~^ ERROR cannot borrow data mutably in a free
-        // variable from an immutable unboxed closure
+        let _g = |&:| set(&mut y); //~ ERROR cannot borrow
 
         let mut z = 0u;
-        let _h = |&mut:| { set(&mut z); |&:| z = 42; };
-        //~^ ERROR cannot assign to data in a
-        // free variable from an immutable unboxed closure
+        let _h = |&mut:| { set(&mut z); |&:| z = 42; }; //~ ERROR cannot assign
     }
     // By-value captures
     {
         let mut x = 0u;
-        let _f = move |&:| x = 42;
-        //~^ ERROR cannot assign to data in a free
-        // variable from an immutable unboxed closure
+        let _f = move |&:| x = 42; //~ ERROR cannot assign
 
         let mut y = 0u;
-        let _g = move |&:| set(&mut y);
-        //~^ ERROR cannot borrow data mutably in a free
-        // variable from an immutable unboxed closure
+        let _g = move |&:| set(&mut y); //~ ERROR cannot borrow
 
         let mut z = 0u;
-        let _h = move |&mut:| { set(&mut z); move |&:| z = 42; };
-        //~^ ERROR cannot assign to data in a free
-        // variable from an immutable unboxed closure
+        let _h = move |&mut:| { set(&mut z); move |&:| z = 42; }; //~ ERROR cannot assign
     }
 }