error[E0277]: the trait bound `B<C>: Copy` is not satisfied
  --> $DIR/deriving-copyclone.rs:31:26
   |
LL |     is_copy(B { a: 1, b: C });
   |     -------              ^ the trait `Copy` is not implemented for `B<C>`
   |     |
   |     required by a bound introduced by this call
   |
note: required for `B<C>` to implement `Copy`
  --> $DIR/deriving-copyclone.rs:9:10
   |
LL | #[derive(Copy, Clone)]
   |          ^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `is_copy`
  --> $DIR/deriving-copyclone.rs:18:15
   |
LL | fn is_copy<T: Copy>(_: T) {}
   |               ^^^^ required by this bound in `is_copy`
   = note: this error originates in the derive macro `Copy` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider borrowing here
   |
LL |     is_copy(B { a: 1, b: &C });
   |                          +

error[E0277]: the trait bound `B<C>: Clone` is not satisfied
  --> $DIR/deriving-copyclone.rs:32:27
   |
LL |     is_clone(B { a: 1, b: C });
   |     --------              ^ the trait `Clone` is not implemented for `B<C>`
   |     |
   |     required by a bound introduced by this call
   |
note: required for `B<C>` to implement `Clone`
  --> $DIR/deriving-copyclone.rs:9:16
   |
LL | #[derive(Copy, Clone)]
   |                ^^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `is_clone`
  --> $DIR/deriving-copyclone.rs:19:16
   |
LL | fn is_clone<T: Clone>(_: T) {}
   |                ^^^^^ required by this bound in `is_clone`
   = note: this error originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider borrowing here
   |
LL |     is_clone(B { a: 1, b: &C });
   |                           +

error[E0277]: the trait bound `B<D>: Copy` is not satisfied
  --> $DIR/deriving-copyclone.rs:35:26
   |
LL |     is_copy(B { a: 1, b: D });
   |     -------              ^ the trait `Copy` is not implemented for `B<D>`
   |     |
   |     required by a bound introduced by this call
   |
note: required for `B<D>` to implement `Copy`
  --> $DIR/deriving-copyclone.rs:9:10
   |
LL | #[derive(Copy, Clone)]
   |          ^^^^ unsatisfied trait bound introduced in this `derive` macro
note: required by a bound in `is_copy`
  --> $DIR/deriving-copyclone.rs:18:15
   |
LL | fn is_copy<T: Copy>(_: T) {}
   |               ^^^^ required by this bound in `is_copy`
   = note: this error originates in the derive macro `Copy` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider borrowing here
   |
LL |     is_copy(B { a: 1, b: &D });
   |                          +

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0277`.
