1 error[E0382]: use of moved value: `lhs`
2 --> $DIR/binop-consume-args.rs:7:10
4 LL | fn add<A: Add<B, Output=()>, B>(lhs: A, rhs: B) {
5 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
7 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
11 | ^^^ value used here after move
13 error[E0382]: use of moved value: `rhs`
14 --> $DIR/binop-consume-args.rs:8:10
16 LL | fn add<A: Add<B, Output=()>, B>(lhs: A, rhs: B) {
17 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
19 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
21 | --- value moved here
24 | ^^^ value used here after move
26 error[E0382]: use of moved value: `lhs`
27 --> $DIR/binop-consume-args.rs:13:10
29 LL | fn sub<A: Sub<B, Output=()>, B>(lhs: A, rhs: B) {
30 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
32 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
34 | --- value moved here
36 | ^^^ value used here after move
38 error[E0382]: use of moved value: `rhs`
39 --> $DIR/binop-consume-args.rs:14:10
41 LL | fn sub<A: Sub<B, Output=()>, B>(lhs: A, rhs: B) {
42 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
44 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
46 | --- value moved here
49 | ^^^ value used here after move
51 error[E0382]: use of moved value: `lhs`
52 --> $DIR/binop-consume-args.rs:19:10
54 LL | fn mul<A: Mul<B, Output=()>, B>(lhs: A, rhs: B) {
55 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
57 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
59 | --- value moved here
61 | ^^^ value used here after move
63 error[E0382]: use of moved value: `rhs`
64 --> $DIR/binop-consume-args.rs:20:10
66 LL | fn mul<A: Mul<B, Output=()>, B>(lhs: A, rhs: B) {
67 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
69 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
71 | --- value moved here
74 | ^^^ value used here after move
76 error[E0382]: use of moved value: `lhs`
77 --> $DIR/binop-consume-args.rs:25:10
79 LL | fn div<A: Div<B, Output=()>, B>(lhs: A, rhs: B) {
80 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
82 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
84 | --- value moved here
86 | ^^^ value used here after move
88 error[E0382]: use of moved value: `rhs`
89 --> $DIR/binop-consume-args.rs:26:10
91 LL | fn div<A: Div<B, Output=()>, B>(lhs: A, rhs: B) {
92 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
94 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
96 | --- value moved here
99 | ^^^ value used here after move
101 error[E0382]: use of moved value: `lhs`
102 --> $DIR/binop-consume-args.rs:31:10
104 LL | fn rem<A: Rem<B, Output=()>, B>(lhs: A, rhs: B) {
105 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
107 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
109 | --- value moved here
111 | ^^^ value used here after move
113 error[E0382]: use of moved value: `rhs`
114 --> $DIR/binop-consume-args.rs:32:10
116 LL | fn rem<A: Rem<B, Output=()>, B>(lhs: A, rhs: B) {
117 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
119 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
121 | --- value moved here
124 | ^^^ value used here after move
126 error[E0382]: use of moved value: `lhs`
127 --> $DIR/binop-consume-args.rs:37:10
129 LL | fn bitand<A: BitAnd<B, Output=()>, B>(lhs: A, rhs: B) {
130 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
132 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
134 | --- value moved here
136 | ^^^ value used here after move
138 error[E0382]: use of moved value: `rhs`
139 --> $DIR/binop-consume-args.rs:38:10
141 LL | fn bitand<A: BitAnd<B, Output=()>, B>(lhs: A, rhs: B) {
142 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
144 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
146 | --- value moved here
149 | ^^^ value used here after move
151 error[E0382]: use of moved value: `lhs`
152 --> $DIR/binop-consume-args.rs:43:10
154 LL | fn bitor<A: BitOr<B, Output=()>, B>(lhs: A, rhs: B) {
155 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
157 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
159 | --- value moved here
161 | ^^^ value used here after move
163 error[E0382]: use of moved value: `rhs`
164 --> $DIR/binop-consume-args.rs:44:10
166 LL | fn bitor<A: BitOr<B, Output=()>, B>(lhs: A, rhs: B) {
167 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
169 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
171 | --- value moved here
174 | ^^^ value used here after move
176 error[E0382]: use of moved value: `lhs`
177 --> $DIR/binop-consume-args.rs:49:10
179 LL | fn bitxor<A: BitXor<B, Output=()>, B>(lhs: A, rhs: B) {
180 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
182 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
184 | --- value moved here
186 | ^^^ value used here after move
188 error[E0382]: use of moved value: `rhs`
189 --> $DIR/binop-consume-args.rs:50:10
191 LL | fn bitxor<A: BitXor<B, Output=()>, B>(lhs: A, rhs: B) {
192 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
194 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
196 | --- value moved here
199 | ^^^ value used here after move
201 error[E0382]: use of moved value: `lhs`
202 --> $DIR/binop-consume-args.rs:55:10
204 LL | fn shl<A: Shl<B, Output=()>, B>(lhs: A, rhs: B) {
205 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
207 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
209 | --- value moved here
211 | ^^^ value used here after move
213 error[E0382]: use of moved value: `rhs`
214 --> $DIR/binop-consume-args.rs:56:10
216 LL | fn shl<A: Shl<B, Output=()>, B>(lhs: A, rhs: B) {
217 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
219 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
221 | --- value moved here
224 | ^^^ value used here after move
226 error[E0382]: use of moved value: `lhs`
227 --> $DIR/binop-consume-args.rs:61:10
229 LL | fn shr<A: Shr<B, Output=()>, B>(lhs: A, rhs: B) {
230 | -- --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
232 | help: consider adding a `Copy` constraint to this type argument: `A: Copy +`
234 | --- value moved here
236 | ^^^ value used here after move
238 error[E0382]: use of moved value: `rhs`
239 --> $DIR/binop-consume-args.rs:62:10
241 LL | fn shr<A: Shr<B, Output=()>, B>(lhs: A, rhs: B) {
242 | - --- move occurs because `rhs` has type `B`, which does not implement the `Copy` trait
244 | help: consider adding a `Copy` constraint to this type argument: `B: Copy`
246 | --- value moved here
249 | ^^^ value used here after move
251 error: aborting due to 20 previous errors
253 For more information about this error, try `rustc --explain E0382`.