1 error: future cannot be sent between threads safely
2 --> $DIR/issue-64130-4-async-move.rs:15:17
4 LL | pub fn foo() -> impl Future + Send {
5 | ^^^^^^^^^^^^^^^^^^ future created by async block is not `Send`
8 LL | | match client.status() {
10 LL | | let _x = get().await;
14 | |_____- this returned value is of type `impl std::future::Future`
16 = help: the trait `std::marker::Sync` is not implemented for `(dyn std::any::Any + std::marker::Send + 'static)`
17 note: future is not `Send` as this value is used across an await
18 --> $DIR/issue-64130-4-async-move.rs:21:26
20 LL | match client.status() {
21 | ------ has type `&Client` which is not `Send`
23 LL | let _x = get().await;
24 | ^^^^^^^^^^^ await occurs here, with `client` maybe used later
27 | - `client` is later dropped here
28 help: consider moving this into a `let` binding to create a shorter lived borrow
29 --> $DIR/issue-64130-4-async-move.rs:19:15
31 LL | match client.status() {
33 = note: the return type of a function must have a statically known size
35 error: aborting due to previous error