summaryrefslogtreecommitdiffstats
path: root/src/test/ui/borrowck/borrowck-loan-blocks-mut-uniq.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/test/ui/borrowck/borrowck-loan-blocks-mut-uniq.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/test/ui/borrowck/borrowck-loan-blocks-mut-uniq.rs b/src/test/ui/borrowck/borrowck-loan-blocks-mut-uniq.rs
new file mode 100644
index 000000000..33d6af303
--- /dev/null
+++ b/src/test/ui/borrowck/borrowck-loan-blocks-mut-uniq.rs
@@ -0,0 +1,18 @@
+fn borrow<F>(v: &isize, f: F) where F: FnOnce(&isize) {
+ f(v);
+}
+
+
+
+fn box_imm() {
+ let mut v: Box<_> = Box::new(3);
+ borrow(&*v,
+ |w| { //~ ERROR cannot borrow `v` as mutable
+ v = Box::new(4);
+ assert_eq!(*v, 3);
+ assert_eq!(*w, 4);
+ })
+}
+
+fn main() {
+}