1error[E0277]: the trait bound `T: zerocopy::FromZeroes` is not satisfied
2  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
3   |
4   |             impl<$($tyvar $(: $(? $optbound +)* $($bound +)*)?),*> Subtrait for $ty {}
5   |                                                                    ^^^^^^^^ the trait `zerocopy::FromZeroes` is not implemented for `T`
6   |
7  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:26:1
8   |
926 | impl_or_verify!(T => FromZeroes for Foo<T>);
10   | ------------------------------------------- in this macro invocation
11   |
12note: required because of the requirements on the impl of `zerocopy::FromZeroes` for `Foo<T>`
13  --> tests/ui-msrv/invalid-impls/invalid-impls.rs:22:10
14   |
1522 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)]
16   |          ^^^^^^^^^^
17note: required by a bound in `_::Subtrait`
18  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
19   |
20   |             trait Subtrait: $trait {}
21   |                             ^^^^^^ required by this bound in `_::Subtrait`
22   |
23  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:26:1
24   |
2526 | impl_or_verify!(T => FromZeroes for Foo<T>);
26   | ------------------------------------------- in this macro invocation
27   = note: this error originates in the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
28help: consider restricting type parameter `T`
29   |
3026 | impl_or_verify!(T: zerocopy::FromZeroes => FromZeroes for Foo<T>);
31   |                  ++++++++++++++++++++++
32
33error[E0277]: the trait bound `T: zerocopy::FromBytes` is not satisfied
34  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
35   |
36   |             impl<$($tyvar $(: $(? $optbound +)* $($bound +)*)?),*> Subtrait for $ty {}
37   |                                                                    ^^^^^^^^ the trait `zerocopy::FromBytes` is not implemented for `T`
38   |
39  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:27:1
40   |
4127 | impl_or_verify!(T => FromBytes for Foo<T>);
42   | ------------------------------------------ in this macro invocation
43   |
44note: required because of the requirements on the impl of `zerocopy::FromBytes` for `Foo<T>`
45  --> tests/ui-msrv/invalid-impls/invalid-impls.rs:22:22
46   |
4722 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)]
48   |                      ^^^^^^^^^
49note: required by a bound in `_::Subtrait`
50  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
51   |
52   |             trait Subtrait: $trait {}
53   |                             ^^^^^^ required by this bound in `_::Subtrait`
54   |
55  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:27:1
56   |
5727 | impl_or_verify!(T => FromBytes for Foo<T>);
58   | ------------------------------------------ in this macro invocation
59   = note: this error originates in the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
60help: consider restricting type parameter `T`
61   |
6227 | impl_or_verify!(T: zerocopy::FromBytes => FromBytes for Foo<T>);
63   |                  +++++++++++++++++++++
64
65error[E0277]: the trait bound `T: zerocopy::AsBytes` is not satisfied
66  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
67   |
68   |             impl<$($tyvar $(: $(? $optbound +)* $($bound +)*)?),*> Subtrait for $ty {}
69   |                                                                    ^^^^^^^^ the trait `zerocopy::AsBytes` is not implemented for `T`
70   |
71  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:28:1
72   |
7328 | impl_or_verify!(T => AsBytes for Foo<T>);
74   | ---------------------------------------- in this macro invocation
75   |
76note: required because of the requirements on the impl of `zerocopy::AsBytes` for `Foo<T>`
77  --> tests/ui-msrv/invalid-impls/invalid-impls.rs:22:33
78   |
7922 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)]
80   |                                 ^^^^^^^
81note: required by a bound in `_::Subtrait`
82  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
83   |
84   |             trait Subtrait: $trait {}
85   |                             ^^^^^^ required by this bound in `_::Subtrait`
86   |
87  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:28:1
88   |
8928 | impl_or_verify!(T => AsBytes for Foo<T>);
90   | ---------------------------------------- in this macro invocation
91   = note: this error originates in the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
92help: consider restricting type parameter `T`
93   |
9428 | impl_or_verify!(T: zerocopy::AsBytes => AsBytes for Foo<T>);
95   |                  +++++++++++++++++++
96
97error[E0277]: the trait bound `T: zerocopy::Unaligned` is not satisfied
98  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
99   |
100   |             impl<$($tyvar $(: $(? $optbound +)* $($bound +)*)?),*> Subtrait for $ty {}
101   |                                                                    ^^^^^^^^ the trait `zerocopy::Unaligned` is not implemented for `T`
102   |
103  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:29:1
104   |
10529 | impl_or_verify!(T => Unaligned for Foo<T>);
106   | ------------------------------------------ in this macro invocation
107   |
108note: required because of the requirements on the impl of `zerocopy::Unaligned` for `Foo<T>`
109  --> tests/ui-msrv/invalid-impls/invalid-impls.rs:22:42
110   |
11122 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)]
112   |                                          ^^^^^^^^^
113note: required by a bound in `_::Subtrait`
114  --> tests/ui-msrv/invalid-impls/../../../src/macros.rs
115   |
116   |             trait Subtrait: $trait {}
117   |                             ^^^^^^ required by this bound in `_::Subtrait`
118   |
119  ::: tests/ui-msrv/invalid-impls/invalid-impls.rs:29:1
120   |
12129 | impl_or_verify!(T => Unaligned for Foo<T>);
122   | ------------------------------------------ in this macro invocation
123   = note: this error originates in the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info)
124help: consider restricting type parameter `T`
125   |
12629 | impl_or_verify!(T: zerocopy::Unaligned => Unaligned for Foo<T>);
127   |                  +++++++++++++++++++++
128