error[E0277]: `*const u8` cannot be sent between threads safely --> $DIR/opaque_autotraits.rs:13:5 | 8 | fn assert_send() {} | ---- required by this bound in `assert_send` ... 13 | assert_send::(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const u8` cannot be sent between threads safely | = help: within `ffi::Opaque`, the trait `Send` is not implemented for `*const u8` = note: required because it appears within the type `[*const u8; 0]` = note: required because it appears within the type `cxx::private::Opaque` = note: required because it appears within the type `ffi::Opaque` error[E0277]: `*const u8` cannot be shared between threads safely --> $DIR/opaque_autotraits.rs:14:5 | 9 | fn assert_sync() {} | ---- required by this bound in `assert_sync` ... 14 | assert_sync::(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const u8` cannot be shared between threads safely | = help: within `ffi::Opaque`, the trait `Sync` is not implemented for `*const u8` = note: required because it appears within the type `[*const u8; 0]` = note: required because it appears within the type `cxx::private::Opaque` = note: required because it appears within the type `ffi::Opaque` error[E0277]: `PhantomPinned` cannot be unpinned --> $DIR/opaque_autotraits.rs:15:5 | 10 | fn assert_unpin() {} | ----- required by this bound in `assert_unpin` ... 15 | assert_unpin::(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ within `ffi::Opaque`, the trait `Unpin` is not implemented for `PhantomPinned` | = note: required because it appears within the type `PhantomData` = note: required because it appears within the type `cxx::private::Opaque` = note: required because it appears within the type `ffi::Opaque`