diff options
Diffstat (limited to 'tests/ui/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs')
-rw-r--r-- | tests/ui/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/ui/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs b/tests/ui/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs new file mode 100644 index 000000000..71405f7a7 --- /dev/null +++ b/tests/ui/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs @@ -0,0 +1,17 @@ +// verify that an error is raised when trying to move out of a +// borrowed path. + + + + + +fn main() { + let a: Box<Box<_>> = Box::new(Box::new(2)); + let b = &a; + + let z = *a; //~ ERROR: cannot move out of `*a` because it is borrowed + b.use_ref(); +} + +trait Fake { fn use_mut(&mut self) { } fn use_ref(&self) { } } +impl<T> Fake for T { } |