summaryrefslogtreecommitdiffstats
path: root/tests/ui/async-await/try-on-option-in-async.rs
blob: afaaed2ef6e4e8473a5e77f3b5770642808b68b9 (plain)
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
#![feature(async_closure)]
// edition:2018
fn main() {}

async fn an_async_block() -> u32 {
    async {
        let x: Option<u32> = None;
        x?; //~ ERROR the `?` operator
        22
    }
    .await
}

async fn async_closure_containing_fn() -> u32 {
    let async_closure = async || {
        let x: Option<u32> = None;
        x?; //~ ERROR the `?` operator
        22_u32
    };

    async_closure().await
}

async fn an_async_function() -> u32 {
    let x: Option<u32> = None;
    x?; //~ ERROR the `?` operator
    22
}