warning: byte slice in a packed struct that derives a built-in trait --> $DIR/deriving-with-repr-packed.rs:33:5 | LL | #[derive(Debug)] | ----- in this derive macro expansion ... LL | data: [u8], | ^^^^^^^^^^ | = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! = note: for more information, see issue #107457 = help: consider implementing the trait by hand, or remove the `packed` attribute = note: `#[warn(byte_slice_in_packed_struct_with_derive)]` on by default = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0507]: cannot move out of `self` which is behind a shared reference --> $DIR/deriving-with-repr-packed.rs:24:10 | LL | #[derive(Debug, Default)] | ----- in this derive macro expansion LL | #[repr(packed)] LL | struct X(Y); | ^ move occurs because `self.0` has type `Y`, which does not implement the `Copy` trait | = note: this error originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) error: aborting due to previous error; 1 warning emitted For more information about this error, try `rustc --explain E0507`. Future incompatibility report: Future breakage diagnostic: warning: byte slice in a packed struct that derives a built-in trait --> $DIR/deriving-with-repr-packed.rs:33:5 | LL | #[derive(Debug)] | ----- in this derive macro expansion ... LL | data: [u8], | ^^^^^^^^^^ | = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! = note: for more information, see issue #107457 = help: consider implementing the trait by hand, or remove the `packed` attribute = note: `#[warn(byte_slice_in_packed_struct_with_derive)]` on by default = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info)