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 34 35 36 37 38 39
|
//@ edition:2018
async fn foo () { }
fn bar() -> impl std::future::Future { async {} }
fn boo() {}
async fn baz() -> std::io::Result<()> {
foo().await;
boo().await; //~ ERROR `()` is not a future
bar().await;
std::io::Result::Ok(())
}
macro_rules! e {
() => {
()
};
}
macro_rules! f {
($expr:expr) => {
$expr.await
//~^ ERROR `()` is not a future
};
}
async fn with_macros() {
e!().await;
//~^ ERROR `()` is not a future
f!(());
}
// Regression test for issue #117014.
async fn desugaring_span_ctxt() {
for x in [] {}.await //~ ERROR `()` is not a future
}
fn main() {}
|