]> git.lizzy.rs Git - rust.git/blob - src/test/ui/unsized-locals/double-move.stderr
Rollup merge of #61207 - taiki-e:arbitrary_self_types-lifetime-elision-2, r=Centril
[rust.git] / src / test / ui / unsized-locals / double-move.stderr
1 error[E0382]: use of moved value: `y`
2   --> $DIR/double-move.rs:20:22
3    |
4 LL |         let y = *x;
5    |             - move occurs because `y` has type `str`, which does not implement the `Copy` trait
6 LL |         drop_unsized(y);
7    |                      - value moved here
8 LL |         drop_unsized(y);
9    |                      ^ value used here after move
10
11 error[E0382]: use of moved value: `x`
12   --> $DIR/double-move.rs:26:22
13    |
14 LL |         let _y = *x;
15    |                  -- value moved here
16 LL |         drop_unsized(x);
17    |                      ^ value used here after partial move
18    |
19    = note: move occurs because `*x` has type `str`, which does not implement the `Copy` trait
20
21 error[E0382]: use of moved value: `*x`
22   --> $DIR/double-move.rs:32:18
23    |
24 LL |         let x = "hello".to_owned().into_boxed_str();
25    |             - move occurs because `x` has type `std::boxed::Box<str>`, which does not implement the `Copy` trait
26 LL |         drop_unsized(x);
27    |                      - value moved here
28 LL |         let _y = *x;
29    |                  ^^ value used here after move
30
31 error[E0382]: use of moved value: `y`
32   --> $DIR/double-move.rs:39:9
33    |
34 LL |         let y = *x;
35    |             - move occurs because `y` has type `str`, which does not implement the `Copy` trait
36 LL |         y.foo();
37    |         - value moved here
38 LL |         y.foo();
39    |         ^ value used here after move
40
41 error[E0382]: use of moved value: `*x`
42   --> $DIR/double-move.rs:45:9
43    |
44 LL |         let _y = *x;
45    |                  -- value moved here
46 LL |         x.foo();
47    |         ^ value used here after move
48    |
49    = note: move occurs because `*x` has type `str`, which does not implement the `Copy` trait
50
51 error[E0382]: use of moved value: `*x`
52   --> $DIR/double-move.rs:51:18
53    |
54 LL |         x.foo();
55    |         - value moved here
56 LL |         let _y = *x;
57    |                  ^^ value used here after move
58    |
59    = note: move occurs because `*x` has type `str`, which does not implement the `Copy` trait
60
61 error: aborting due to 6 previous errors
62
63 For more information about this error, try `rustc --explain E0382`.