| //@ 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()); |
| } |