about summary refs log tree commit diff
path: root/tests/ui/pattern/rfc-3627-match-ergonomics-2024/experimental/borrowck-errors.structural2024.stderr
blob: e1764fa1d55da16555f063aa6ca3303692329bc0 (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
error[E0507]: cannot move out of a shared reference
  --> $DIR/borrowck-errors.rs:33:29
   |
LL |     if let Some(&Some(x)) = Some(&Some(&mut 0)) {
   |                       -     ^^^^^^^^^^^^^^^^^^^
   |                       |
   |                       data moved here
   |                       move occurs because `x` has type `&mut u32`, which does not implement the `Copy` trait
   |
help: consider removing the borrow
   |
LL -     if let Some(&Some(x)) = Some(&Some(&mut 0)) {
LL +     if let Some(Some(x)) = Some(&Some(&mut 0)) {
   |

error[E0596]: cannot borrow data in a `&` reference as mutable
  --> $DIR/borrowck-errors.rs:38:10
   |
LL |     let &ref mut x = &0;
   |          ^^^^^^^^^ cannot borrow as mutable

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0507, E0596.
For more information about an error, try `rustc --explain E0507`.