error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:7:10
   |
LL | fn add<A: Add<B, Output=()>, B>(lhs: A, rhs: B) {
   |        -                        --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |        |
   |        consider adding a `Copy` constraint to this type argument
LL |     lhs + rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:8:10
   |
LL | fn add<A: Add<B, Output=()>, B>(lhs: A, rhs: B) {
   |                              -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                              |
   |                              consider adding a `Copy` constraint to this type argument
LL |     lhs + rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:13:10
   |
LL | fn sub<A: Sub<B, Output=()>, B>(lhs: A, rhs: B) {
   |        -                        --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |        |
   |        consider adding a `Copy` constraint to this type argument
LL |     lhs - rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:14:10
   |
LL | fn sub<A: Sub<B, Output=()>, B>(lhs: A, rhs: B) {
   |                              -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                              |
   |                              consider adding a `Copy` constraint to this type argument
LL |     lhs - rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:19:10
   |
LL | fn mul<A: Mul<B, Output=()>, B>(lhs: A, rhs: B) {
   |        -                        --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |        |
   |        consider adding a `Copy` constraint to this type argument
LL |     lhs * rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:20:10
   |
LL | fn mul<A: Mul<B, Output=()>, B>(lhs: A, rhs: B) {
   |                              -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                              |
   |                              consider adding a `Copy` constraint to this type argument
LL |     lhs * rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:25:10
   |
LL | fn div<A: Div<B, Output=()>, B>(lhs: A, rhs: B) {
   |        -                        --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |        |
   |        consider adding a `Copy` constraint to this type argument
LL |     lhs / rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:26:10
   |
LL | fn div<A: Div<B, Output=()>, B>(lhs: A, rhs: B) {
   |                              -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                              |
   |                              consider adding a `Copy` constraint to this type argument
LL |     lhs / rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:31:10
   |
LL | fn rem<A: Rem<B, Output=()>, B>(lhs: A, rhs: B) {
   |        -                        --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |        |
   |        consider adding a `Copy` constraint to this type argument
LL |     lhs % rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:32:10
   |
LL | fn rem<A: Rem<B, Output=()>, B>(lhs: A, rhs: B) {
   |                              -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                              |
   |                              consider adding a `Copy` constraint to this type argument
LL |     lhs % rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:37:10
   |
LL | fn bitand<A: BitAnd<B, Output=()>, B>(lhs: A, rhs: B) {
   |           -                           --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |           |
   |           consider adding a `Copy` constraint to this type argument
LL |     lhs & rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:38:10
   |
LL | fn bitand<A: BitAnd<B, Output=()>, B>(lhs: A, rhs: B) {
   |                                    -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                                    |
   |                                    consider adding a `Copy` constraint to this type argument
LL |     lhs & rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:43:10
   |
LL | fn bitor<A: BitOr<B, Output=()>, B>(lhs: A, rhs: B) {
   |          -                          --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |          |
   |          consider adding a `Copy` constraint to this type argument
LL |     lhs | rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:44:10
   |
LL | fn bitor<A: BitOr<B, Output=()>, B>(lhs: A, rhs: B) {
   |                                  -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                                  |
   |                                  consider adding a `Copy` constraint to this type argument
LL |     lhs | rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:49:10
   |
LL | fn bitxor<A: BitXor<B, Output=()>, B>(lhs: A, rhs: B) {
   |           -                           --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |           |
   |           consider adding a `Copy` constraint to this type argument
LL |     lhs ^ rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:50:10
   |
LL | fn bitxor<A: BitXor<B, Output=()>, B>(lhs: A, rhs: B) {
   |                                    -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                                    |
   |                                    consider adding a `Copy` constraint to this type argument
LL |     lhs ^ rhs;
   |           --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:55:10
   |
LL | fn shl<A: Shl<B, Output=()>, B>(lhs: A, rhs: B) {
   |        -                        --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |        |
   |        consider adding a `Copy` constraint to this type argument
LL |     lhs << rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:56:10
   |
LL | fn shl<A: Shl<B, Output=()>, B>(lhs: A, rhs: B) {
   |                              -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                              |
   |                              consider adding a `Copy` constraint to this type argument
LL |     lhs << rhs;
   |            --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `lhs`
  --> $DIR/binop-consume-args.rs:61:10
   |
LL | fn shr<A: Shr<B, Output=()>, B>(lhs: A, rhs: B) {
   |        -                        --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
   |        |
   |        consider adding a `Copy` constraint to this type argument
LL |     lhs >> rhs;
   |     --- value moved here
LL |     drop(lhs);
   |          ^^^ value used here after move

error[E0382]: use of moved value: `rhs`
  --> $DIR/binop-consume-args.rs:62:10
   |
LL | fn shr<A: Shr<B, Output=()>, B>(lhs: A, rhs: B) {
   |                              -          --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
   |                              |
   |                              consider adding a `Copy` constraint to this type argument
LL |     lhs >> rhs;
   |            --- value moved here
LL |     drop(lhs);
LL |     drop(rhs);
   |          ^^^ value used here after move

error: aborting due to 20 previous errors

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