//@ edition:2021 | |
// issue 108897 | |
trait Handler {} | |
impl<F, Fut> Handler for F | |
where | |
Fut: Send, | |
F: FnOnce() -> Fut, | |
{} | |
fn require_handler<H: Handler>(h: H) {} | |
async fn handler() { | |
let a = &1 as *const i32; | |
async {}.await; | |
let b = a; | |
} | |
fn main() { | |
require_handler(handler) | |
//~^ ERROR future cannot be sent between threads safely | |
} |