2019-04-22 07:40:08 +00:00
|
|
|
error[E0382]: borrow of moved value: `arc_v`
|
2020-07-25 11:04:13 +00:00
|
|
|
--> $DIR/no-capture-arc.rs:14:16
|
2018-08-08 12:28:26 +00:00
|
|
|
|
|
2019-04-22 07:40:08 +00:00
|
|
|
LL | let arc_v = Arc::new(v);
|
2020-09-02 07:40:56 +00:00
|
|
|
| ----- move occurs because `arc_v` has type `Arc<Vec<i32>>`, which does not implement the `Copy` trait
|
2022-06-08 18:07:59 +00:00
|
|
|
LL |
|
2018-08-08 12:28:26 +00:00
|
|
|
LL | thread::spawn(move|| {
|
2019-04-22 07:40:08 +00:00
|
|
|
| ------ value moved into closure here
|
|
|
|
LL | assert_eq!((*arc_v)[3], 4);
|
|
|
|
| ----- variable moved due to use in closure
|
2018-08-08 12:28:26 +00:00
|
|
|
...
|
|
|
|
LL | assert_eq!((*arc_v)[2], 3);
|
2020-07-25 11:04:13 +00:00
|
|
|
| ^^^^^^^^ value borrowed here after move
|
|
|
|
|
|
|
|
|
= note: borrow occurs due to deref coercion to `Vec<i32>`
|
2018-08-08 12:28:26 +00:00
|
|
|
|
2023-11-21 15:44:16 +00:00
|
|
|
error: aborting due to 1 previous error
|
2018-08-08 12:28:26 +00:00
|
|
|
|
|
|
|
For more information about this error, try `rustc --explain E0382`.
|