| error[E0277]: `*const cxx::void` cannot be sent between threads safely |
| --> tests/ui/vector_autotraits.rs:20:19 |
| | |
| 20 | assert_send::<CxxVector<ffi::NotThreadSafe>>(); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const cxx::void` cannot be sent between threads safely |
| | |
| = help: within `CxxVector<NotThreadSafe>`, the trait `Send` is not implemented for `*const cxx::void`, which is required by `CxxVector<NotThreadSafe>: Send` |
| = note: required because it appears within the type `[*const cxx::void; 0]` |
| note: required because it appears within the type `cxx::private::Opaque` |
| --> src/opaque.rs |
| | |
| | pub struct Opaque { |
| | ^^^^^^ |
| note: required because it appears within the type `NotThreadSafe` |
| --> tests/ui/vector_autotraits.rs:7:14 |
| | |
| 7 | type NotThreadSafe; |
| | ^^^^^^^^^^^^^ |
| = note: required because it appears within the type `[NotThreadSafe]` |
| note: required because it appears within the type `PhantomData<[NotThreadSafe]>` |
| --> $RUST/core/src/marker.rs |
| | |
| | pub struct PhantomData<T: ?Sized>; |
| | ^^^^^^^^^^^ |
| note: required because it appears within the type `CxxVector<NotThreadSafe>` |
| --> src/cxx_vector.rs |
| | |
| | pub struct CxxVector<T> { |
| | ^^^^^^^^^ |
| note: required by a bound in `assert_send` |
| --> tests/ui/vector_autotraits.rs:16:19 |
| | |
| 16 | fn assert_send<T: Send>() {} |
| | ^^^^ required by this bound in `assert_send` |