1error[E0277]: the trait bound `T: zerocopy::FromZeroes` is not satisfied 2 --> tests/ui-stable/invalid-impls/invalid-impls.rs:26:37 3 | 426 | impl_or_verify!(T => FromZeroes for Foo<T>); 5 | ^^^^^^ the trait `zerocopy::FromZeroes` is not implemented for `T`, which is required by `Foo<T>: zerocopy::FromZeroes` 6 | 7note: required for `Foo<T>` to implement `zerocopy::FromZeroes` 8 --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:10 9 | 1022 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)] 11 | ^^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro 12note: required by a bound in `_::Subtrait` 13 --> tests/ui-stable/invalid-impls/../../../src/macros.rs 14 | 15 | trait Subtrait: $trait {} 16 | ^^^^^^ required by this bound in `Subtrait` 17 | 18 ::: tests/ui-stable/invalid-impls/invalid-impls.rs:26:1 19 | 2026 | impl_or_verify!(T => FromZeroes for Foo<T>); 21 | ------------------------------------------- in this macro invocation 22 = note: this error originates in the derive macro `FromZeroes` which comes from the expansion of the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info) 23help: consider restricting type parameter `T` 24 | 2526 | impl_or_verify!(T: zerocopy::FromZeroes => FromZeroes for Foo<T>); 26 | ++++++++++++++++++++++ 27 28error[E0277]: the trait bound `T: zerocopy::FromBytes` is not satisfied 29 --> tests/ui-stable/invalid-impls/invalid-impls.rs:27:36 30 | 3127 | impl_or_verify!(T => FromBytes for Foo<T>); 32 | ^^^^^^ the trait `zerocopy::FromBytes` is not implemented for `T`, which is required by `Foo<T>: zerocopy::FromBytes` 33 | 34note: required for `Foo<T>` to implement `zerocopy::FromBytes` 35 --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:22 36 | 3722 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)] 38 | ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro 39note: required by a bound in `_::Subtrait` 40 --> tests/ui-stable/invalid-impls/../../../src/macros.rs 41 | 42 | trait Subtrait: $trait {} 43 | ^^^^^^ required by this bound in `Subtrait` 44 | 45 ::: tests/ui-stable/invalid-impls/invalid-impls.rs:27:1 46 | 4727 | impl_or_verify!(T => FromBytes for Foo<T>); 48 | ------------------------------------------ in this macro invocation 49 = 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) 50help: consider restricting type parameter `T` 51 | 5227 | impl_or_verify!(T: zerocopy::FromBytes => FromBytes for Foo<T>); 53 | +++++++++++++++++++++ 54 55error[E0277]: the trait bound `T: zerocopy::AsBytes` is not satisfied 56 --> tests/ui-stable/invalid-impls/invalid-impls.rs:28:34 57 | 5828 | impl_or_verify!(T => AsBytes for Foo<T>); 59 | ^^^^^^ the trait `zerocopy::AsBytes` is not implemented for `T`, which is required by `Foo<T>: zerocopy::AsBytes` 60 | 61note: required for `Foo<T>` to implement `zerocopy::AsBytes` 62 --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:33 63 | 6422 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)] 65 | ^^^^^^^ unsatisfied trait bound introduced in this `derive` macro 66note: required by a bound in `_::Subtrait` 67 --> tests/ui-stable/invalid-impls/../../../src/macros.rs 68 | 69 | trait Subtrait: $trait {} 70 | ^^^^^^ required by this bound in `Subtrait` 71 | 72 ::: tests/ui-stable/invalid-impls/invalid-impls.rs:28:1 73 | 7428 | impl_or_verify!(T => AsBytes for Foo<T>); 75 | ---------------------------------------- in this macro invocation 76 = note: this error originates in the derive macro `AsBytes` which comes from the expansion of the macro `impl_or_verify` (in Nightly builds, run with -Z macro-backtrace for more info) 77help: consider restricting type parameter `T` 78 | 7928 | impl_or_verify!(T: zerocopy::AsBytes => AsBytes for Foo<T>); 80 | +++++++++++++++++++ 81 82error[E0277]: the trait bound `T: zerocopy::Unaligned` is not satisfied 83 --> tests/ui-stable/invalid-impls/invalid-impls.rs:29:36 84 | 8529 | impl_or_verify!(T => Unaligned for Foo<T>); 86 | ^^^^^^ the trait `zerocopy::Unaligned` is not implemented for `T`, which is required by `Foo<T>: zerocopy::Unaligned` 87 | 88note: required for `Foo<T>` to implement `zerocopy::Unaligned` 89 --> tests/ui-stable/invalid-impls/invalid-impls.rs:22:42 90 | 9122 | #[derive(FromZeroes, FromBytes, AsBytes, Unaligned)] 92 | ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro 93note: required by a bound in `_::Subtrait` 94 --> tests/ui-stable/invalid-impls/../../../src/macros.rs 95 | 96 | trait Subtrait: $trait {} 97 | ^^^^^^ required by this bound in `Subtrait` 98 | 99 ::: tests/ui-stable/invalid-impls/invalid-impls.rs:29:1 100 | 10129 | impl_or_verify!(T => Unaligned for Foo<T>); 102 | ------------------------------------------ in this macro invocation 103 = 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) 104help: consider restricting type parameter `T` 105 | 10629 | impl_or_verify!(T: zerocopy::Unaligned => Unaligned for Foo<T>); 107 | +++++++++++++++++++++ 108