//@ edition:2018
#![feature(must_not_suspend)]
#![allow(must_not_suspend)]

// This tests the basic example case for the async-await-specific error.

use std::sync::Mutex;

fn is_send<T: Send>(t: T) { }

async fn foo() {
    bar(&Mutex::new(22)).await;
}

async fn bar(x: &Mutex<u32>) {
    let g = x.lock().unwrap();
    baz().await;
}

async fn baz() { }

fn main() {
    is_send(foo());
    //~^ ERROR future cannot be sent between threads safely
}
