1error[E0277]: `*const cxx::void` cannot be sent between threads safely 2 --> $DIR/opaque_autotraits.rs:13:5 3 | 413 | assert_send::<ffi::Opaque>(); 5 | ^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const cxx::void` cannot be sent between threads safely 6 | 7 = help: within `ffi::Opaque`, the trait `Send` is not implemented for `*const cxx::void` 8 = note: required because it appears within the type `[*const cxx::void; 0]` 9 = note: required because it appears within the type `cxx::private::Opaque` 10note: required because it appears within the type `ffi::Opaque` 11 --> $DIR/opaque_autotraits.rs:4:14 12 | 134 | type Opaque; 14 | ^^^^^^ 15note: required by a bound in `assert_send` 16 --> $DIR/opaque_autotraits.rs:8:19 17 | 188 | fn assert_send<T: Send>() {} 19 | ^^^^ required by this bound in `assert_send` 20 21error[E0277]: `*const cxx::void` cannot be shared between threads safely 22 --> $DIR/opaque_autotraits.rs:14:5 23 | 2414 | assert_sync::<ffi::Opaque>(); 25 | ^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const cxx::void` cannot be shared between threads safely 26 | 27 = help: within `ffi::Opaque`, the trait `Sync` is not implemented for `*const cxx::void` 28 = note: required because it appears within the type `[*const cxx::void; 0]` 29 = note: required because it appears within the type `cxx::private::Opaque` 30note: required because it appears within the type `ffi::Opaque` 31 --> $DIR/opaque_autotraits.rs:4:14 32 | 334 | type Opaque; 34 | ^^^^^^ 35note: required by a bound in `assert_sync` 36 --> $DIR/opaque_autotraits.rs:9:19 37 | 389 | fn assert_sync<T: Sync>() {} 39 | ^^^^ required by this bound in `assert_sync` 40 41error[E0277]: `PhantomPinned` cannot be unpinned 42 --> $DIR/opaque_autotraits.rs:15:5 43 | 4415 | assert_unpin::<ffi::Opaque>(); 45 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ within `ffi::Opaque`, the trait `Unpin` is not implemented for `PhantomPinned` 46 | 47 = note: consider using `Box::pin` 48 = note: required because it appears within the type `PhantomData<PhantomPinned>` 49 = note: required because it appears within the type `cxx::private::Opaque` 50note: required because it appears within the type `ffi::Opaque` 51 --> $DIR/opaque_autotraits.rs:4:14 52 | 534 | type Opaque; 54 | ^^^^^^ 55note: required by a bound in `assert_unpin` 56 --> $DIR/opaque_autotraits.rs:10:20 57 | 5810 | fn assert_unpin<T: Unpin>() {} 59 | ^^^^^ required by this bound in `assert_unpin` 60