error: future cannot be sent between threads safely --> $DIR/issue-70935-complex-spans.rs:15:23 | LL | fn foo(x: NotSync) -> impl Future + Send { | ^^^^^^^^^^^^^^^^^^ future created by async block is not `Send` | = help: within `NotSync`, the trait `Sync` is not implemented for `*mut ()` note: future is not `Send` as this value is used across an await --> $DIR/issue-70935-complex-spans.rs:20:12 | LL | baz(|| async { | _____________- LL | | foo(x.clone()); LL | | }).await; | | - ^^^^^- the value is later dropped here | | | | | |_________| await occurs here, with the value maybe used later | has type `{closure@$DIR/issue-70935-complex-spans.rs:18:13: 18:15}` which is not `Send` error: aborting due to previous error