| error[E0507]: cannot move out of borrowed content |
| --> $DIR/move-errors.rs:19:13 |
| | |
| LL | let b = *a; |
| | ^^ |
| | | |
| | cannot move out of borrowed content |
| | help: consider removing the `*`: `a` |
| |
| error[E0508]: cannot move out of type `[A; 1]`, a non-copy array |
| --> $DIR/move-errors.rs:25:13 |
| | |
| LL | let b = a[0]; |
| | ^^^^ |
| | | |
| | cannot move out of here |
| | help: consider borrowing here: `&a[0]` |
| |
| error[E0507]: cannot move out of borrowed content |
| --> $DIR/move-errors.rs:32:13 |
| | |
| LL | let s = **r; |
| | ^^^ |
| | | |
| | cannot move out of borrowed content |
| | help: consider removing the `*`: `*r` |
| |
| error[E0507]: cannot move out of an `Rc` |
| --> $DIR/move-errors.rs:40:13 |
| | |
| LL | let s = *r; |
| | ^^ |
| | | |
| | cannot move out of an `Rc` |
| | help: consider removing the `*`: `r` |
| |
| error[E0508]: cannot move out of type `[A; 1]`, a non-copy array |
| --> $DIR/move-errors.rs:45:13 |
| | |
| LL | let a = [A("".to_string())][0]; |
| | ^^^^^^^^^^^^^^^^^^^^^^ |
| | | |
| | cannot move out of here |
| | help: consider borrowing here: `&[A("".to_string())][0]` |
| |
| error[E0507]: cannot move out of borrowed content |
| --> $DIR/move-errors.rs:51:16 |
| | |
| LL | let A(s) = *a; |
| | - ^^ |
| | | | |
| | | cannot move out of borrowed content |
| | | help: consider removing the `*`: `a` |
| | data moved here |
| | |
| note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait |
| --> $DIR/move-errors.rs:51:11 |
| | |
| LL | let A(s) = *a; |
| | ^ |
| |
| error[E0509]: cannot move out of type `D`, which implements the `Drop` trait |
| --> $DIR/move-errors.rs:57:19 |
| | |
| LL | let C(D(s)) = c; |
| | - ^ cannot move out of here |
| | | |
| | data moved here |
| | |
| note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait |
| --> $DIR/move-errors.rs:57:13 |
| | |
| LL | let C(D(s)) = c; |
| | ^ |
| |
| error[E0507]: cannot move out of borrowed content |
| --> $DIR/move-errors.rs:64:9 |
| | |
| LL | b = *a; |
| | ^^ cannot move out of borrowed content |
| |
| error[E0508]: cannot move out of type `[B; 1]`, a non-copy array |
| --> $DIR/move-errors.rs:87:11 |
| | |
| LL | match x[0] { |
| | ^^^^ |
| | | |
| | cannot move out of here |
| | help: consider borrowing here: `&x[0]` |
| LL | //~^ ERROR |
| LL | B::U(d) => (), |
| | - data moved here |
| LL | B::V(s) => (), |
| | - ...and here |
| | |
| note: move occurs because these variables have types that don't implement the `Copy` trait |
| --> $DIR/move-errors.rs:89:14 |
| | |
| LL | B::U(d) => (), |
| | ^ |
| LL | B::V(s) => (), |
| | ^ |
| |
| error[E0509]: cannot move out of type `D`, which implements the `Drop` trait |
| --> $DIR/move-errors.rs:96:11 |
| | |
| LL | match x { |
| | ^ cannot move out of here |
| ... |
| LL | B::U(D(s)) => (), |
| | - data moved here |
| | |
| note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait |
| --> $DIR/move-errors.rs:99:16 |
| | |
| LL | B::U(D(s)) => (), |
| | ^ |
| |
| error[E0509]: cannot move out of type `D`, which implements the `Drop` trait |
| --> $DIR/move-errors.rs:105:11 |
| | |
| LL | match x { |
| | ^ cannot move out of here |
| ... |
| LL | (D(s), &t) => (), |
| | - data moved here |
| | |
| note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait |
| --> $DIR/move-errors.rs:108:12 |
| | |
| LL | (D(s), &t) => (), |
| | ^ |
| |
| error[E0507]: cannot move out of borrowed content |
| --> $DIR/move-errors.rs:105:11 |
| | |
| LL | match x { |
| | ^ cannot move out of borrowed content |
| ... |
| LL | (D(s), &t) => (), |
| | - data moved here |
| | |
| note: move occurs because `t` has type `std::string::String`, which does not implement the `Copy` trait |
| --> $DIR/move-errors.rs:108:17 |
| | |
| LL | (D(s), &t) => (), |
| | ^ |
| |
| error[E0509]: cannot move out of type `F`, which implements the `Drop` trait |
| --> $DIR/move-errors.rs:115:11 |
| | |
| LL | match x { |
| | ^ cannot move out of here |
| LL | //~^ ERROR |
| LL | F(s, mut t) => (), |
| | - ----- ...and here |
| | | |
| | data moved here |
| | |
| note: move occurs because these variables have types that don't implement the `Copy` trait |
| --> $DIR/move-errors.rs:117:11 |
| | |
| LL | F(s, mut t) => (), |
| | ^ ^^^^^ |
| |
| error[E0507]: cannot move out of borrowed content |
| --> $DIR/move-errors.rs:123:11 |
| | |
| LL | match *x { |
| | ^^ |
| | | |
| | cannot move out of borrowed content |
| | help: consider removing the `*`: `x` |
| LL | //~^ ERROR |
| LL | Ok(s) | Err(s) => (), |
| | - data moved here |
| | |
| note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait |
| --> $DIR/move-errors.rs:125:12 |
| | |
| LL | Ok(s) | Err(s) => (), |
| | ^ |
| |
| error: aborting due to 14 previous errors |
| |
| Some errors occurred: E0507, E0508, E0509. |
| For more information about an error, try `rustc --explain E0507`. |