summaryrefslogtreecommitdiffstats
path: root/src/test/ui/nll/ref-suggestion.stderr
blob: b1f5117cb0243abc1781cc2f9632399f9ad01b4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
error[E0382]: use of moved value: `x`
  --> $DIR/ref-suggestion.rs:4:5
   |
LL |     let x = vec![1];
   |         - move occurs because `x` has type `Vec<i32>`, which does not implement the `Copy` trait
LL |     let y = x;
   |             - value moved here
LL |     x;
   |     ^ value used here after move
   |
help: consider cloning the value if the performance cost is acceptable
   |
LL |     let y = x.clone();
   |              ++++++++

error[E0382]: use of moved value: `x`
  --> $DIR/ref-suggestion.rs:8:5
   |
LL |     let x = vec![1];
   |         - move occurs because `x` has type `Vec<i32>`, which does not implement the `Copy` trait
LL |     let mut y = x;
   |                 - value moved here
LL |     x;
   |     ^ value used here after move
   |
help: consider cloning the value if the performance cost is acceptable
   |
LL |     let mut y = x.clone();
   |                  ++++++++

error[E0382]: use of partially moved value: `x`
  --> $DIR/ref-suggestion.rs:16:5
   |
LL |         (Some(y), ()) => {},
   |               - value partially moved here
...
LL |     x;
   |     ^ value used here after partial move
   |
   = note: partial move occurs because value has type `Vec<i32>`, which does not implement the `Copy` trait
help: borrow this binding in the pattern to avoid moving the value
   |
LL |         (Some(ref y), ()) => {},
   |               +++

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0382`.