error: coroutine cannot be shared between threads safely --> $DIR/not-send-sync.rs:14:5 | LL | / assert_sync(|| { LL | | LL | | let a = NotSync; LL | | yield; LL | | drop(a); LL | | }); | |______^ coroutine is not `Sync` | = help: within `{coroutine@$DIR/not-send-sync.rs:14:17: 14:19}`, the trait `Sync` is not implemented for `NotSync`, which is required by `{coroutine@$DIR/not-send-sync.rs:14:17: 14:19}: Sync` note: coroutine is not `Sync` as this value is used across a yield --> $DIR/not-send-sync.rs:17:9 | LL | let a = NotSync; | - has type `NotSync` which is not `Sync` LL | yield; | ^^^^^ yield occurs here, with `a` maybe used later note: required by a bound in `assert_sync` --> $DIR/not-send-sync.rs:11:23 | LL | fn assert_sync(_: T) {} | ^^^^ required by this bound in `assert_sync` error: coroutine cannot be sent between threads safely --> $DIR/not-send-sync.rs:21:5 | LL | / assert_send(|| { LL | | LL | | let a = NotSend; LL | | yield; LL | | drop(a); LL | | }); | |______^ coroutine is not `Send` | = help: within `{coroutine@$DIR/not-send-sync.rs:21:17: 21:19}`, the trait `Send` is not implemented for `NotSend`, which is required by `{coroutine@$DIR/not-send-sync.rs:21:17: 21:19}: Send` note: coroutine is not `Send` as this value is used across a yield --> $DIR/not-send-sync.rs:24:9 | LL | let a = NotSend; | - has type `NotSend` which is not `Send` LL | yield; | ^^^^^ yield occurs here, with `a` maybe used later note: required by a bound in `assert_send` --> $DIR/not-send-sync.rs:12:23 | LL | fn assert_send(_: T) {} | ^^^^ required by this bound in `assert_send` error: aborting due to 2 previous errors