rust/tests/ui/coroutine/yield-while-local-borrowed.stderr
Michael Goulet 6dfc9f8886 Explain that coroutine can be marked static
And also point out the def span of the coroutine
2024-07-21 22:32:29 -04:00

37 lines
1.1 KiB
Plaintext

error[E0626]: borrow may still be in use when coroutine yields
--> $DIR/yield-while-local-borrowed.rs:13:17
|
LL | let mut b = #[coroutine] move || {
| ------- within this coroutine
LL | let a = &mut 3;
| ^^^^^^
LL |
LL | yield ();
| -------- possible yield occurs here
|
help: add `static` to mark this coroutine as unmovable
|
LL | let mut b = #[coroutine] static move || {
| ++++++
error[E0626]: borrow may still be in use when coroutine yields
--> $DIR/yield-while-local-borrowed.rs:40:21
|
LL | let mut b = #[coroutine] move || {
| ------- within this coroutine
...
LL | let b = &a;
| ^^
LL |
LL | yield ();
| -------- possible yield occurs here
|
help: add `static` to mark this coroutine as unmovable
|
LL | let mut b = #[coroutine] static move || {
| ++++++
error: aborting due to 2 previous errors
For more information about this error, try `rustc --explain E0626`.