rust/tests/ui/borrowck/issue-58776-borrowck-scans-children.stderr
Giacomo Pasini b3a47d9b6b
Desugars drop and replace at MIR build
This commit desugars the drop and replace deriving from an
assignment at MIR build, avoiding the construction of the
DropAndReplace terminator (which will be removed in a followign PR)

In order to retain the same error messages for replaces a new
DesugaringKind::Replace variant is introduced.
2023-03-03 16:33:11 +01:00

18 lines
667 B
Plaintext

error[E0506]: cannot assign to `greeting` because it is borrowed
--> $DIR/issue-58776-borrowck-scans-children.rs:5:5
|
LL | let res = (|| (|| &greeting)())();
| -- -------- borrow occurs due to use in closure
| |
| `greeting` is borrowed here
LL |
LL | greeting = "DEALLOCATED".to_string();
| ^^^^^^^^ `greeting` is assigned to here but it was already borrowed
...
LL | println!("thread result: {:?}", res);
| --- borrow later used here
error: aborting due to previous error
For more information about this error, try `rustc --explain E0506`.