1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
// check-pass
// edition:2021
macro_rules! m {
() => {
async {}.await
};
}
async fn with_await() {
println!("{} {:?}", "", async {}.await);
}
async fn with_macro_call_expr() {
println!("{} {:?}", "", m!());
}
async fn with_macro_call_stmt_semi() {
println!("{} {:?}", "", { m!(); });
}
async fn with_macro_call_stmt_braced() {
println!("{} {:?}", "", { m!{} });
}
fn assert_send(_: impl Send) {}
fn main() {
assert_send(with_await());
assert_send(with_macro_call_expr());
assert_send(with_macro_call_stmt_semi());
assert_send(with_macro_call_stmt_braced());
}
|