File: invalid-impls.stderr

package info (click to toggle)
rust-zerocopy 0.8.26-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 2,748 kB
  • sloc: sh: 116; makefile: 2
file content (139 lines) | stat: -rw-r--r-- 7,238 bytes parent folder | download
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
error[E0277]: the trait bound `T: zerocopy::TryFromBytes` is not satisfied
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:27:43
   |
27 |     impl_or_verify!(T => TryFromBytes for Foo<T>);
   |                                           ^^^^^^ the trait `zerocopy::TryFromBytes` is not implemented for `T`
   |
   = note: Consider adding `#[derive(TryFromBytes)]` to `T`
note: required for `Foo<T>` to implement `zerocopy::TryFromBytes`
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:10
   |
22 | #[derive(FromBytes, IntoBytes, Unaligned)]
   |          ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `_::Subtrait`
  --> tests/ui-stable/invalid-impls/../../../src/util/macros.rs
   |
   |             trait Subtrait: $trait {}
   |                             ^^^^^^ required by this bound in `Subtrait`
   |
  ::: tests/ui-stable/invalid-impls/invalid-impls.rs:27:5
   |
27 |     impl_or_verify!(T => TryFromBytes for Foo<T>);
   |     --------------------------------------------- in this macro invocation
   = note: this error originates in the derive macro `FromBytes` which comes from the expansion of the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider restricting type parameter `T` with trait `TryFromBytes`
   |
27 |     impl_or_verify!(T: zerocopy::TryFromBytes => TryFromBytes for Foo<T>);
   |                      ++++++++++++++++++++++++

error[E0277]: the trait bound `T: zerocopy::FromZeros` is not satisfied
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:28:40
   |
28 |     impl_or_verify!(T => FromZeros for Foo<T>);
   |                                        ^^^^^^ the trait `zerocopy::FromZeros` is not implemented for `T`
   |
   = note: Consider adding `#[derive(FromZeros)]` to `T`
note: required for `Foo<T>` to implement `zerocopy::FromZeros`
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:10
   |
22 | #[derive(FromBytes, IntoBytes, Unaligned)]
   |          ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `_::Subtrait`
  --> tests/ui-stable/invalid-impls/../../../src/util/macros.rs
   |
   |             trait Subtrait: $trait {}
   |                             ^^^^^^ required by this bound in `Subtrait`
   |
  ::: tests/ui-stable/invalid-impls/invalid-impls.rs:28:5
   |
28 |     impl_or_verify!(T => FromZeros for Foo<T>);
   |     ------------------------------------------ in this macro invocation
   = note: this error originates in the derive macro `FromBytes` which comes from the expansion of the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider restricting type parameter `T` with trait `FromZeros`
   |
28 |     impl_or_verify!(T: zerocopy::FromZeros => FromZeros for Foo<T>);
   |                      +++++++++++++++++++++

error[E0277]: the trait bound `T: zerocopy::FromBytes` is not satisfied
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:29:40
   |
29 |     impl_or_verify!(T => FromBytes for Foo<T>);
   |                                        ^^^^^^ the trait `zerocopy::FromBytes` is not implemented for `T`
   |
   = note: Consider adding `#[derive(FromBytes)]` to `T`
note: required for `Foo<T>` to implement `zerocopy::FromBytes`
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:10
   |
22 | #[derive(FromBytes, IntoBytes, Unaligned)]
   |          ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `_::Subtrait`
  --> tests/ui-stable/invalid-impls/../../../src/util/macros.rs
   |
   |             trait Subtrait: $trait {}
   |                             ^^^^^^ required by this bound in `Subtrait`
   |
  ::: tests/ui-stable/invalid-impls/invalid-impls.rs:29:5
   |
29 |     impl_or_verify!(T => FromBytes for Foo<T>);
   |     ------------------------------------------ in this macro invocation
   = note: this error originates in the derive macro `FromBytes` which comes from the expansion of the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider restricting type parameter `T` with trait `FromBytes`
   |
29 |     impl_or_verify!(T: zerocopy::FromBytes => FromBytes for Foo<T>);
   |                      +++++++++++++++++++++

error[E0277]: the trait bound `T: zerocopy::IntoBytes` is not satisfied
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:30:40
   |
30 |     impl_or_verify!(T => IntoBytes for Foo<T>);
   |                                        ^^^^^^ the trait `zerocopy::IntoBytes` is not implemented for `T`
   |
   = note: Consider adding `#[derive(IntoBytes)]` to `T`
note: required for `Foo<T>` to implement `zerocopy::IntoBytes`
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:21
   |
22 | #[derive(FromBytes, IntoBytes, Unaligned)]
   |                     ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `_::Subtrait`
  --> tests/ui-stable/invalid-impls/../../../src/util/macros.rs
   |
   |             trait Subtrait: $trait {}
   |                             ^^^^^^ required by this bound in `Subtrait`
   |
  ::: tests/ui-stable/invalid-impls/invalid-impls.rs:30:5
   |
30 |     impl_or_verify!(T => IntoBytes for Foo<T>);
   |     ------------------------------------------ in this macro invocation
   = note: this error originates in the derive macro `IntoBytes` which comes from the expansion of the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider restricting type parameter `T` with trait `IntoBytes`
   |
30 |     impl_or_verify!(T: zerocopy::IntoBytes => IntoBytes for Foo<T>);
   |                      +++++++++++++++++++++

error[E0277]: the trait bound `T: zerocopy::Unaligned` is not satisfied
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:31:40
   |
31 |     impl_or_verify!(T => Unaligned for Foo<T>);
   |                                        ^^^^^^ the trait `zerocopy::Unaligned` is not implemented for `T`
   |
   = note: Consider adding `#[derive(Unaligned)]` to `T`
note: required for `Foo<T>` to implement `zerocopy::Unaligned`
  --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:32
   |
22 | #[derive(FromBytes, IntoBytes, Unaligned)]
   |                                ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `_::Subtrait`
  --> tests/ui-stable/invalid-impls/../../../src/util/macros.rs
   |
   |             trait Subtrait: $trait {}
   |                             ^^^^^^ required by this bound in `Subtrait`
   |
  ::: tests/ui-stable/invalid-impls/invalid-impls.rs:31:5
   |
31 |     impl_or_verify!(T => Unaligned for Foo<T>);
   |     ------------------------------------------ in this macro invocation
   = note: this error originates in the derive macro `Unaligned` which comes from the expansion of the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider restricting type parameter `T` with trait `Unaligned`
   |
31 |     impl_or_verify!(T: zerocopy::Unaligned => Unaligned for Foo<T>);
   |                      +++++++++++++++++++++