summaryrefslogtreecommitdiffstats
path: root/src/test/ui/no-reuse-move-arc.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/no-reuse-move-arc.rs')
-rw-r--r--src/test/ui/no-reuse-move-arc.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/test/ui/no-reuse-move-arc.rs b/src/test/ui/no-reuse-move-arc.rs
new file mode 100644
index 000000000..9c957a4e0
--- /dev/null
+++ b/src/test/ui/no-reuse-move-arc.rs
@@ -0,0 +1,15 @@
+use std::sync::Arc;
+use std::thread;
+
+fn main() {
+ let v = vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
+ let arc_v = Arc::new(v);
+
+ thread::spawn(move|| {
+ assert_eq!((*arc_v)[3], 4);
+ });
+
+ assert_eq!((*arc_v)[2], 3); //~ ERROR borrow of moved value: `arc_v`
+
+ println!("{:?}", *arc_v);
+}