error[E0382]: borrow of moved value: `arc_v` --> $DIR/no-capture-arc.rs:14:18 | LL | let arc_v = Arc::new(v); | ----- move occurs because `arc_v` has type `std::sync::Arc>`, which does not implement the `Copy` trait LL | LL | thread::spawn(move|| { | ------ value moved into closure here LL | assert_eq!((*arc_v)[3], 4); | ----- variable moved due to use in closure ... LL | assert_eq!((*arc_v)[2], 3); | ^^^^^ value borrowed here after move error: aborting due to previous error For more information about this error, try `rustc --explain E0382`.