@@ -4,11 +4,11 @@ error[E0382]: use of moved value: `lhs`
4
4
LL | fn add<A: Add<B, Output=()>, B>(lhs: A, rhs: B) {
5
5
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
6
6
LL | lhs + rhs;
7
- | --------- `lhs` moved due to usage in operator
7
+ | --------- `lhs` moved due to this method call
8
8
LL | drop(lhs);
9
9
| ^^^ value used here after move
10
10
|
11
- note: calling this operator moves the left-hand side
11
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
12
12
--> $SRC_DIR/libcore/ops/arith.rs:LL:COL
13
13
|
14
14
LL | fn add(self, rhs: Rhs) -> Self::Output;
@@ -40,11 +40,11 @@ error[E0382]: use of moved value: `lhs`
40
40
LL | fn sub<A: Sub<B, Output=()>, B>(lhs: A, rhs: B) {
41
41
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
42
42
LL | lhs - rhs;
43
- | --------- `lhs` moved due to usage in operator
43
+ | --------- `lhs` moved due to this method call
44
44
LL | drop(lhs);
45
45
| ^^^ value used here after move
46
46
|
47
- note: calling this operator moves the left-hand side
47
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
48
48
--> $SRC_DIR/libcore/ops/arith.rs:LL:COL
49
49
|
50
50
LL | fn sub(self, rhs: Rhs) -> Self::Output;
@@ -76,11 +76,11 @@ error[E0382]: use of moved value: `lhs`
76
76
LL | fn mul<A: Mul<B, Output=()>, B>(lhs: A, rhs: B) {
77
77
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
78
78
LL | lhs * rhs;
79
- | --------- `lhs` moved due to usage in operator
79
+ | --------- `lhs` moved due to this method call
80
80
LL | drop(lhs);
81
81
| ^^^ value used here after move
82
82
|
83
- note: calling this operator moves the left-hand side
83
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
84
84
--> $SRC_DIR/libcore/ops/arith.rs:LL:COL
85
85
|
86
86
LL | fn mul(self, rhs: Rhs) -> Self::Output;
@@ -112,11 +112,11 @@ error[E0382]: use of moved value: `lhs`
112
112
LL | fn div<A: Div<B, Output=()>, B>(lhs: A, rhs: B) {
113
113
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
114
114
LL | lhs / rhs;
115
- | --------- `lhs` moved due to usage in operator
115
+ | --------- `lhs` moved due to this method call
116
116
LL | drop(lhs);
117
117
| ^^^ value used here after move
118
118
|
119
- note: calling this operator moves the left-hand side
119
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
120
120
--> $SRC_DIR/libcore/ops/arith.rs:LL:COL
121
121
|
122
122
LL | fn div(self, rhs: Rhs) -> Self::Output;
@@ -148,11 +148,11 @@ error[E0382]: use of moved value: `lhs`
148
148
LL | fn rem<A: Rem<B, Output=()>, B>(lhs: A, rhs: B) {
149
149
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
150
150
LL | lhs % rhs;
151
- | --------- `lhs` moved due to usage in operator
151
+ | --------- `lhs` moved due to this method call
152
152
LL | drop(lhs);
153
153
| ^^^ value used here after move
154
154
|
155
- note: calling this operator moves the left-hand side
155
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
156
156
--> $SRC_DIR/libcore/ops/arith.rs:LL:COL
157
157
|
158
158
LL | fn rem(self, rhs: Rhs) -> Self::Output;
@@ -184,11 +184,11 @@ error[E0382]: use of moved value: `lhs`
184
184
LL | fn bitand<A: BitAnd<B, Output=()>, B>(lhs: A, rhs: B) {
185
185
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
186
186
LL | lhs & rhs;
187
- | --------- `lhs` moved due to usage in operator
187
+ | --------- `lhs` moved due to this method call
188
188
LL | drop(lhs);
189
189
| ^^^ value used here after move
190
190
|
191
- note: calling this operator moves the left-hand side
191
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
192
192
--> $SRC_DIR/libcore/ops/bit.rs:LL:COL
193
193
|
194
194
LL | fn bitand(self, rhs: Rhs) -> Self::Output;
@@ -220,11 +220,11 @@ error[E0382]: use of moved value: `lhs`
220
220
LL | fn bitor<A: BitOr<B, Output=()>, B>(lhs: A, rhs: B) {
221
221
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
222
222
LL | lhs | rhs;
223
- | --------- `lhs` moved due to usage in operator
223
+ | --------- `lhs` moved due to this method call
224
224
LL | drop(lhs);
225
225
| ^^^ value used here after move
226
226
|
227
- note: calling this operator moves the left-hand side
227
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
228
228
--> $SRC_DIR/libcore/ops/bit.rs:LL:COL
229
229
|
230
230
LL | fn bitor(self, rhs: Rhs) -> Self::Output;
@@ -256,11 +256,11 @@ error[E0382]: use of moved value: `lhs`
256
256
LL | fn bitxor<A: BitXor<B, Output=()>, B>(lhs: A, rhs: B) {
257
257
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
258
258
LL | lhs ^ rhs;
259
- | --------- `lhs` moved due to usage in operator
259
+ | --------- `lhs` moved due to this method call
260
260
LL | drop(lhs);
261
261
| ^^^ value used here after move
262
262
|
263
- note: calling this operator moves the left-hand side
263
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
264
264
--> $SRC_DIR/libcore/ops/bit.rs:LL:COL
265
265
|
266
266
LL | fn bitxor(self, rhs: Rhs) -> Self::Output;
@@ -292,11 +292,11 @@ error[E0382]: use of moved value: `lhs`
292
292
LL | fn shl<A: Shl<B, Output=()>, B>(lhs: A, rhs: B) {
293
293
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
294
294
LL | lhs << rhs;
295
- | ---------- `lhs` moved due to usage in operator
295
+ | ---------- `lhs` moved due to this method call
296
296
LL | drop(lhs);
297
297
| ^^^ value used here after move
298
298
|
299
- note: calling this operator moves the left-hand side
299
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
300
300
--> $SRC_DIR/libcore/ops/bit.rs:LL:COL
301
301
|
302
302
LL | fn shl(self, rhs: Rhs) -> Self::Output;
@@ -328,11 +328,11 @@ error[E0382]: use of moved value: `lhs`
328
328
LL | fn shr<A: Shr<B, Output=()>, B>(lhs: A, rhs: B) {
329
329
| --- move occurs because `lhs` has type `A`, which does not implement the `Copy` trait
330
330
LL | lhs >> rhs;
331
- | ---------- `lhs` moved due to usage in operator
331
+ | ---------- `lhs` moved due to this method call
332
332
LL | drop(lhs);
333
333
| ^^^ value used here after move
334
334
|
335
- note: calling this operator moves the left-hand side
335
+ note: this function consumes the receiver `self` by taking ownership of it, which moves `lhs`
336
336
--> $SRC_DIR/libcore/ops/bit.rs:LL:COL
337
337
|
338
338
LL | fn shr(self, rhs: Rhs) -> Self::Output;
0 commit comments