250 lines
8.9 KiB
Plaintext
250 lines
8.9 KiB
Plaintext
error[E0277]: the trait bound `NotZerocopy: FromBytes` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:16:24
|
|
|
|
|
16 | takes_from_bytes::<NotZerocopy>();
|
|
| ^^^^^^^^^^^ unsatisfied trait bound
|
|
|
|
|
help: the trait `FromBytes` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(FromBytes)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `FromBytes`:
|
|
()
|
|
(A, B)
|
|
(A, B, C)
|
|
(A, B, C, D)
|
|
(A, B, C, D, E)
|
|
(A, B, C, D, E, F)
|
|
(A, B, C, D, E, F, G)
|
|
(A, B, C, D, E, F, G, H)
|
|
and 79 others
|
|
note: required by a bound in `takes_from_bytes`
|
|
--> $DIR/diagnostic-not-implemented.rs:77:24
|
|
|
|
|
77 | fn takes_from_bytes<T: FromBytes>() {}
|
|
| ^^^^^^^^^ required by this bound in `takes_from_bytes`
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: FromZeros` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:18:24
|
|
|
|
|
18 | takes_from_zeros::<NotZerocopy>();
|
|
| ^^^^^^^^^^^ unsatisfied trait bound
|
|
|
|
|
help: the trait `FromZeros` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(FromZeros)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `FromZeros`:
|
|
()
|
|
(A, B)
|
|
(A, B, C)
|
|
(A, B, C, D)
|
|
(A, B, C, D, E)
|
|
(A, B, C, D, E, F)
|
|
(A, B, C, D, E, F, G)
|
|
(A, B, C, D, E, F, G, H)
|
|
and 141 others
|
|
note: required by a bound in `takes_from_zeros`
|
|
--> $DIR/diagnostic-not-implemented.rs:78:24
|
|
|
|
|
78 | fn takes_from_zeros<T: FromZeros>() {}
|
|
| ^^^^^^^^^ required by this bound in `takes_from_zeros`
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: Immutable` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:20:23
|
|
|
|
|
20 | takes_immutable::<NotZerocopy>();
|
|
| ^^^^^^^^^^^ unsatisfied trait bound
|
|
|
|
|
help: the trait `Immutable` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(Immutable)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `Immutable`:
|
|
&T
|
|
&mut T
|
|
()
|
|
(A, B)
|
|
(A, B, C)
|
|
(A, B, C, D)
|
|
(A, B, C, D, E)
|
|
(A, B, C, D, E, F)
|
|
and 128 others
|
|
note: required by a bound in `takes_immutable`
|
|
--> $DIR/diagnostic-not-implemented.rs:79:23
|
|
|
|
|
79 | fn takes_immutable<T: Immutable>() {}
|
|
| ^^^^^^^^^ required by this bound in `takes_immutable`
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: IntoBytes` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:22:24
|
|
|
|
|
22 | takes_into_bytes::<NotZerocopy>();
|
|
| ^^^^^^^^^^^ unsatisfied trait bound
|
|
|
|
|
help: the trait `IntoBytes` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(IntoBytes)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `IntoBytes`:
|
|
()
|
|
AU16
|
|
AtomicBool
|
|
AtomicI16
|
|
AtomicI32
|
|
AtomicI64
|
|
AtomicI8
|
|
AtomicIsize
|
|
and 68 others
|
|
note: required by a bound in `takes_into_bytes`
|
|
--> $DIR/diagnostic-not-implemented.rs:80:24
|
|
|
|
|
80 | fn takes_into_bytes<T: IntoBytes>() {}
|
|
| ^^^^^^^^^ required by this bound in `takes_into_bytes`
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: KnownLayout` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:24:26
|
|
|
|
|
24 | takes_known_layout::<NotZerocopy>();
|
|
| ^^^^^^^^^^^ unsatisfied trait bound
|
|
|
|
|
help: the trait `KnownLayout` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(KnownLayout)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `KnownLayout`:
|
|
&T
|
|
&mut T
|
|
()
|
|
*const T
|
|
*mut T
|
|
AU16
|
|
AtomicBool
|
|
AtomicI16
|
|
and 65 others
|
|
note: required by a bound in `takes_known_layout`
|
|
--> $DIR/diagnostic-not-implemented.rs:81:26
|
|
|
|
|
81 | fn takes_known_layout<T: KnownLayout>() {}
|
|
| ^^^^^^^^^^^ required by this bound in `takes_known_layout`
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: TryFromBytes` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:26:28
|
|
|
|
|
26 | takes_try_from_bytes::<NotZerocopy>();
|
|
| ^^^^^^^^^^^ unsatisfied trait bound
|
|
|
|
|
help: the trait `TryFromBytes` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(TryFromBytes)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `TryFromBytes`:
|
|
()
|
|
(A, B)
|
|
(A, B, C)
|
|
(A, B, C, D)
|
|
(A, B, C, D, E)
|
|
(A, B, C, D, E, F)
|
|
(A, B, C, D, E, F, G)
|
|
(A, B, C, D, E, F, G, H)
|
|
and 153 others
|
|
note: required by a bound in `takes_try_from_bytes`
|
|
--> $DIR/diagnostic-not-implemented.rs:82:28
|
|
|
|
|
82 | fn takes_try_from_bytes<T: TryFromBytes>() {}
|
|
| ^^^^^^^^^^^^ required by this bound in `takes_try_from_bytes`
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: zerocopy::Unaligned` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:28:23
|
|
|
|
|
28 | takes_unaligned::<NotZerocopy>();
|
|
| ^^^^^^^^^^^ unsatisfied trait bound
|
|
|
|
|
help: the trait `zerocopy::Unaligned` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(Unaligned)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `zerocopy::Unaligned`:
|
|
()
|
|
AtomicBool
|
|
AtomicI8
|
|
AtomicU8
|
|
Cell<T>
|
|
F32<O>
|
|
F64<O>
|
|
I128<O>
|
|
and 26 others
|
|
note: required by a bound in `takes_unaligned`
|
|
--> $DIR/diagnostic-not-implemented.rs:83:23
|
|
|
|
|
83 | fn takes_unaligned<T: Unaligned>() {}
|
|
| ^^^^^^^^^ required by this bound in `takes_unaligned`
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: Immutable` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:66:19
|
|
|
|
|
66 | Foo.write_obj(NotZerocopy(()));
|
|
| --------- ^^^^^^^^^^^^^^^ the trait `Immutable` is not implemented for `NotZerocopy`
|
|
| |
|
|
| required by a bound introduced by this call
|
|
|
|
|
note: required by a bound in `Foo::write_obj`
|
|
--> $DIR/diagnostic-not-implemented.rs:73:25
|
|
|
|
|
73 | fn write_obj<T: Immutable + IntoBytes>(&mut self, _val: T) {}
|
|
| ^^^^^^^^^ required by this bound in `Foo::write_obj`
|
|
help: consider borrowing here
|
|
|
|
|
66 | Foo.write_obj(&NotZerocopy(()));
|
|
| +
|
|
66 | Foo.write_obj(&mut NotZerocopy(()));
|
|
| ++++
|
|
|
|
error[E0277]: the trait bound `NotZerocopy: IntoBytes` is not satisfied
|
|
--> $DIR/diagnostic-not-implemented.rs:66:19
|
|
|
|
|
66 | Foo.write_obj(NotZerocopy(()));
|
|
| --------- ^^^^^^^^^^^^^^^ unsatisfied trait bound
|
|
| |
|
|
| required by a bound introduced by this call
|
|
|
|
|
help: the trait `IntoBytes` is not implemented for `NotZerocopy`
|
|
--> $DIR/../include.rs:15:5
|
|
|
|
|
15 | pub struct NotZerocopy<T = ()>(pub T);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
= note: Consider adding `#[derive(IntoBytes)]` to `NotZerocopy`
|
|
= help: the following other types implement trait `IntoBytes`:
|
|
()
|
|
AU16
|
|
AtomicBool
|
|
AtomicI16
|
|
AtomicI32
|
|
AtomicI64
|
|
AtomicI8
|
|
AtomicIsize
|
|
and 68 others
|
|
note: required by a bound in `Foo::write_obj`
|
|
--> $DIR/diagnostic-not-implemented.rs:73:37
|
|
|
|
|
73 | fn write_obj<T: Immutable + IntoBytes>(&mut self, _val: T) {}
|
|
| ^^^^^^^^^ required by this bound in `Foo::write_obj`
|
|
|
|
error: aborting due to 9 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0277`.
|