error: future cannot be shared between threads safely
  --> $DIR/issue-64130-1-sync.rs:25:13
   |
LL |     is_sync(bar());
   |             ^^^^^ future returned by `bar` is not `Sync`
   |
   = help: within `impl Future<Output = ()>`, the trait `Sync` is not implemented for `Foo`
note: future is not `Sync` as this value is used across an await
  --> $DIR/issue-64130-1-sync.rs:18:10
   |
LL |     let x = Foo;
   |         - has type `Foo` which is not `Sync`
LL |     baz().await;
   |          ^^^^^^ await occurs here, with `x` maybe used later
LL |     drop(x);
LL | }
   | - `x` is later dropped here
note: required by a bound in `is_sync`
  --> $DIR/issue-64130-1-sync.rs:14:15
   |
LL | fn is_sync<T: Sync>(t: T) { }
   |               ^^^^ required by this bound in `is_sync`

error: aborting due to previous error