aboutsummaryrefslogtreecommitdiff
path: root/tests/ui/opaque_autotraits.stderr
blob: 4f469eff4a0c089b2f6407a73b784127392582d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
error[E0277]: `*const u8` cannot be sent between threads safely
  --> $DIR/opaque_autotraits.rs:13:5
   |
8  | fn assert_send<T: Send>() {}
   |                   ---- required by this bound in `assert_send`
...
13 |     assert_send::<ffi::Opaque>();
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ `*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<T: Sync>() {}
   |                   ---- required by this bound in `assert_sync`
...
14 |     assert_sync::<ffi::Opaque>();
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ `*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<T: Unpin>() {}
   |                    ----- required by this bound in `assert_unpin`
...
15 |     assert_unpin::<ffi::Opaque>();
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ within `ffi::Opaque`, the trait `Unpin` is not implemented for `PhantomPinned`
   |
   = note: required because it appears within the type `PhantomData<PhantomPinned>`
   = note: required because it appears within the type `cxx::private::Opaque`
   = note: required because it appears within the type `ffi::Opaque`