]> git.lizzy.rs Git - rust.git/blob - src/test/ui/binding/issue-53114-borrow-checks.stderr
Auto merge of #99612 - yanchen4791:issue-95079-fix, r=compiler-errors
[rust.git] / src / test / ui / binding / issue-53114-borrow-checks.stderr
1 error[E0382]: use of moved value: `m`
2   --> $DIR/issue-53114-borrow-checks.rs:22:11
3    |
4 LL |     let m = M;
5    |         - move occurs because `m` has type `M`, which does not implement the `Copy` trait
6 LL |     drop(m);
7    |          - value moved here
8 LL |     match m { _ => { } } // #53114: should eventually be accepted too
9    |           ^ value used here after move
10
11 error[E0382]: use of partially moved value: `mm`
12   --> $DIR/issue-53114-borrow-checks.rs:27:11
13    |
14 LL |     match mm { (_x, _) => { } }
15    |                 -- value partially moved here
16 LL |     match mm { (_, _y) => { } }
17    |           ^^ value used here after partial move
18    |
19    = note: partial move occurs because `mm.0` has type `M`, which does not implement the `Copy` trait
20
21 error[E0382]: use of partially moved value: `mm`
22   --> $DIR/issue-53114-borrow-checks.rs:29:11
23    |
24 LL |     match mm { (_, _y) => { } }
25    |                    -- value partially moved here
26 LL |
27 LL |     match mm { (_, _) => { } }
28    |           ^^ value used here after partial move
29    |
30    = note: partial move occurs because `mm.1` has type `M`, which does not implement the `Copy` trait
31
32 error[E0382]: use of moved value: `m`
33   --> $DIR/issue-53114-borrow-checks.rs:36:16
34    |
35 LL |     let m = M;
36    |         - move occurs because `m` has type `M`, which does not implement the `Copy` trait
37 LL |     drop(m);
38    |          - value moved here
39 LL |     if let _ = m { } // #53114: should eventually be accepted too
40    |                ^ value used here after move
41
42 error[E0382]: use of partially moved value: `mm`
43   --> $DIR/issue-53114-borrow-checks.rs:41:22
44    |
45 LL |     if let (_x, _) = mm { }
46    |             -- value partially moved here
47 LL |     if let (_, _y) = mm { }
48    |                      ^^ value used here after partial move
49    |
50    = note: partial move occurs because `mm.0` has type `M`, which does not implement the `Copy` trait
51
52 error[E0382]: use of partially moved value: `mm`
53   --> $DIR/issue-53114-borrow-checks.rs:43:21
54    |
55 LL |     if let (_, _y) = mm { }
56    |                -- value partially moved here
57 LL |
58 LL |     if let (_, _) = mm { }
59    |                     ^^ value used here after partial move
60    |
61    = note: partial move occurs because `mm.1` has type `M`, which does not implement the `Copy` trait
62
63 error: aborting due to 6 previous errors
64
65 For more information about this error, try `rustc --explain E0382`.