rust/tests/ui/coroutine/derived-drop-parent-expr.rs
Oli Scherer aef0f4024a Error on using yield without also using #[coroutine] on the closure
And suggest adding the `#[coroutine]` to the closure
2024-04-24 08:05:29 +00:00

17 lines
415 B
Rust

//@ build-pass
//! Like drop-tracking-parent-expression, but also tests that this doesn't ICE when building MIR
#![feature(coroutines, stmt_expr_attributes)]
fn assert_send<T: Send>(_thing: T) {}
#[derive(Default)]
pub struct Client { pub nickname: String }
fn main() {
let g = #[coroutine] move || match drop(Client { ..Client::default() }) {
_status => yield,
};
assert_send(g);
}