rust/tests/ui/traits/unsend-future.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

23 lines
360 B
Rust
Raw Normal View History

// 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;
2023-06-24 05:02:54 -05:00
let b = a;
}
fn main() {
require_handler(handler)
//~^ ERROR future cannot be sent between threads safely
}