about summary refs log tree commit diff
path: root/tests/ui/async-await/issue-62658.rs
blob: 0aaeeb68a52b606354f896c7f6840f9825654938 (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
// This test created a coroutine whose size was not rounded to a multiple of its
// alignment. This caused an assertion error in codegen.

//@ build-pass
//@ edition:2018

async fn noop() {}

async fn foo() {
    // This suspend should be the largest variant.
    {
        let x = [0u8; 17];
        noop().await;
        println!("{:?}", x);
    }

    // Add one variant that's aligned to 8 bytes.
    {
        let x = 0u64;
        noop().await;
        println!("{:?}", x);
    }
}

fn main() {
    let _ = foo();
}