about summary refs log tree commit diff
path: root/tests/ui/issues/issue-11192.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/issues/issue-11192.rs')
-rw-r--r--tests/ui/issues/issue-11192.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/ui/issues/issue-11192.rs b/tests/ui/issues/issue-11192.rs
new file mode 100644
index 00000000000..1a3d8c9fe58
--- /dev/null
+++ b/tests/ui/issues/issue-11192.rs
@@ -0,0 +1,22 @@
+struct Foo {
+    x: isize
+}
+
+
+impl Drop for Foo {
+    fn drop(&mut self) {
+        println!("drop {}", self.x);
+    }
+}
+
+
+fn main() {
+    let mut ptr: Box<_> = Box::new(Foo { x: 0 });
+    let mut test = |foo: &Foo| {
+        println!("access {}", foo.x);
+        ptr = Box::new(Foo { x: ptr.x + 1 });
+        println!("access {}", foo.x);
+    };
+    test(&*ptr);
+    //~^ ERROR: cannot borrow `*ptr` as immutable
+}