about summary refs log tree commit diff
path: root/tests/ui/coroutine/derived-drop-parent-expr.rs
blob: cc217e4960e9029ceeead2dda0a651306ea2ea3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//@ 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);
}