error: `#[derive]` can't be used on a `#[repr(packed)]` struct with type or const parameters (error E0133)
  --> $DIR/deriving-with-repr-packed.rs:8:16
   |
LL | #[derive(Copy, Clone, PartialEq, Eq)]
   |                ^^^^^
   |
note: the lint level is defined here
  --> $DIR/deriving-with-repr-packed.rs:1:9
   |
LL | #![deny(safe_packed_borrows)]
   |         ^^^^^^^^^^^^^^^^^^^
   = 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 #46043 <https://github.com/rust-lang/rust/issues/46043>
   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: `#[derive]` can't be used on a `#[repr(packed)]` struct with type or const parameters (error E0133)
  --> $DIR/deriving-with-repr-packed.rs:8:23
   |
LL | #[derive(Copy, Clone, PartialEq, Eq)]
   |                       ^^^^^^^^^
   |
   = 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 #46043 <https://github.com/rust-lang/rust/issues/46043>
   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: `#[derive]` can't be used on a `#[repr(packed)]` struct that does not derive Copy (error E0133)
  --> $DIR/deriving-with-repr-packed.rs:16:10
   |
LL | #[derive(PartialEq, Eq)]
   |          ^^^^^^^^^
   |
   = 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 #46043 <https://github.com/rust-lang/rust/issues/46043>
   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: `#[derive]` can't be used on a `#[repr(packed)]` struct that does not derive Copy (error E0133)
  --> $DIR/deriving-with-repr-packed.rs:25:10
   |
LL | #[derive(PartialEq)]
   |          ^^^^^^^^^
   |
   = 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 #46043 <https://github.com/rust-lang/rust/issues/46043>
   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 4 previous errors

