beebd3a4c6
Desugaring DropAndReplace at MIR build (#107844) fixed issue 70919. Add regressions tests, borrowed from #102078, to ensure we check for this in the future. Co-authored-by: Aaron Hill <aa1ronham@gmail.com>
15 lines
639 B
Plaintext
15 lines
639 B
Plaintext
error[E0506]: cannot assign to `base` because it is borrowed
|
|
--> $DIR/drop-in-loop.rs:18:9
|
|
|
|
|
LL | let mut wrapper = WrapperWithDrop(&mut base);
|
|
| --------- `base` is borrowed here
|
|
LL | loop {
|
|
LL | base = false;
|
|
| ^^^^^^^^^^^^ `base` is assigned to here but it was already borrowed
|
|
LL | wrapper = WrapperWithDrop(&mut base);
|
|
| ------- borrow might be used here, when `wrapper` is dropped and runs the `Drop` code for type `WrapperWithDrop`
|
|
|
|
error: aborting due to previous error
|
|
|
|
For more information about this error, try `rustc --explain E0506`.
|