Error on using yield without also using #[coroutine] on the closure

And suggest adding the `#[coroutine]` to the closure
This commit is contained in:
Oli Scherer 2024-04-11 13:15:34 +00:00
parent ea91be2428
commit 83e28486dc

View file

@ -3869,7 +3869,7 @@ use std::ops::{Coroutine, CoroutineState};
use std::pin::Pin; use std::pin::Pin;
fn main() { fn main() {
let mut coroutine = || { let mut coroutine = #[coroutine] || {
yield 1; yield 1;
return "foo" return "foo"
}; };
@ -3901,7 +3901,7 @@ use std::ops::Coroutine;
use std::pin::Pin; use std::pin::Pin;
fn main() { fn main() {
let mut coroutine = || { let mut coroutine = #[coroutine] || {
println!("2"); println!("2");
yield; yield;
println!("4"); println!("4");
@ -4007,7 +4007,7 @@ use std::pin::Pin;
fn main() { fn main() {
let ret = "foo"; let ret = "foo";
let mut coroutine = move || { let mut coroutine = #[coroutine] move || {
yield 1; yield 1;
return ret return ret
}; };