rust/tests/ui/borrowck/borrowck-match-already-borr...

51 lines
1.4 KiB
Plaintext

error[E0503]: cannot use `foo` because it was mutably borrowed
--> $DIR/borrowck-match-already-borrowed.rs:9:19
|
LL | let p = &mut foo;
| -------- `foo` is borrowed here
LL | let _ = match foo {
| ^^^ use of borrowed `foo`
...
LL | drop(p);
| - borrow later used here
error[E0503]: cannot use `foo.0` because it was mutably borrowed
--> $DIR/borrowck-match-already-borrowed.rs:12:16
|
LL | let p = &mut foo;
| -------- `foo` is borrowed here
...
LL | Foo::A(x) => x
| ^ use of borrowed `foo`
LL | };
LL | drop(p);
| - borrow later used here
error[E0503]: cannot use `x` because it was mutably borrowed
--> $DIR/borrowck-match-already-borrowed.rs:22:9
|
LL | let r = &mut x;
| ------ `x` is borrowed here
LL | let _ = match x {
LL | x => x + 1,
| ^ use of borrowed `x`
...
LL | drop(r);
| - borrow later used here
error[E0503]: cannot use `x` because it was mutably borrowed
--> $DIR/borrowck-match-already-borrowed.rs:23:9
|
LL | let r = &mut x;
| ------ `x` is borrowed here
...
LL | y => y + 2,
| ^ use of borrowed `x`
LL | };
LL | drop(r);
| - borrow later used here
error: aborting due to 4 previous errors
For more information about this error, try `rustc --explain E0503`.