mirror of https://github.com/rust-lang/rust
118 lines
3.5 KiB
Plaintext
118 lines
3.5 KiB
Plaintext
error[E0382]: use of moved value: `a`
|
|
--> $DIR/dbg-issue-120327.rs:4:12
|
|
|
|
|
LL | let a = String::new();
|
|
| - move occurs because `a` has type `String`, which does not implement the `Copy` trait
|
|
LL | dbg!(a);
|
|
| ------- value moved here
|
|
LL | return a;
|
|
| ^ value used here after move
|
|
|
|
|
help: consider borrowing instead of transferring ownership
|
|
|
|
|
LL | dbg!(&a);
|
|
| +
|
|
|
|
error[E0382]: use of moved value: `a`
|
|
--> $DIR/dbg-issue-120327.rs:10:12
|
|
|
|
|
LL | let a = String::new();
|
|
| - move occurs because `a` has type `String`, which does not implement the `Copy` trait
|
|
LL | dbg!(1, 2, a, 1, 2);
|
|
| ------------------- value moved here
|
|
LL | return a;
|
|
| ^ value used here after move
|
|
|
|
|
help: consider borrowing instead of transferring ownership
|
|
|
|
|
LL | dbg!(1, 2, &a, 1, 2);
|
|
| +
|
|
|
|
error[E0382]: use of moved value: `b`
|
|
--> $DIR/dbg-issue-120327.rs:16:12
|
|
|
|
|
LL | let b: String = "".to_string();
|
|
| - move occurs because `b` has type `String`, which does not implement the `Copy` trait
|
|
LL | dbg!(a, b);
|
|
| ---------- value moved here
|
|
LL | return b;
|
|
| ^ value used here after move
|
|
|
|
|
help: consider borrowing instead of transferring ownership
|
|
|
|
|
LL | dbg!(a, &b);
|
|
| +
|
|
|
|
error[E0382]: use of moved value: `a`
|
|
--> $DIR/dbg-issue-120327.rs:22:12
|
|
|
|
|
LL | fn x(a: String) -> String {
|
|
| - move occurs because `a` has type `String`, which does not implement the `Copy` trait
|
|
LL | let b: String = "".to_string();
|
|
LL | dbg!(a, b);
|
|
| ---------- value moved here
|
|
LL | return a;
|
|
| ^ value used here after move
|
|
|
|
|
help: consider borrowing instead of transferring ownership
|
|
|
|
|
LL | dbg!(&a, b);
|
|
| +
|
|
|
|
error[E0382]: use of moved value: `b`
|
|
--> $DIR/dbg-issue-120327.rs:46:12
|
|
|
|
|
LL | tmp => {
|
|
| --- value moved here
|
|
...
|
|
LL | let b: String = "".to_string();
|
|
| - move occurs because `b` has type `String`, which does not implement the `Copy` trait
|
|
LL | my_dbg!(b, 1);
|
|
LL | return b;
|
|
| ^ value used here after move
|
|
|
|
|
help: consider borrowing instead of transferring ownership
|
|
|
|
|
LL | my_dbg!(&b, 1);
|
|
| +
|
|
help: borrow this binding in the pattern to avoid moving the value
|
|
|
|
|
LL | ref tmp => {
|
|
| +++
|
|
|
|
error[E0382]: use of moved value: `a`
|
|
--> $DIR/dbg-issue-120327.rs:57:12
|
|
|
|
|
LL | let a = String::new();
|
|
| - move occurs because `a` has type `String`, which does not implement the `Copy` trait
|
|
LL | let _b = match a {
|
|
LL | tmp => {
|
|
| --- value moved here
|
|
...
|
|
LL | return a;
|
|
| ^ value used here after move
|
|
|
|
|
help: borrow this binding in the pattern to avoid moving the value
|
|
|
|
|
LL | ref tmp => {
|
|
| +++
|
|
|
|
error[E0382]: borrow of moved value: `a`
|
|
--> $DIR/dbg-issue-120327.rs:65:14
|
|
|
|
|
LL | let a: String = "".to_string();
|
|
| - move occurs because `a` has type `String`, which does not implement the `Copy` trait
|
|
LL | let _res = get_expr(dbg!(a));
|
|
| ------- value moved here
|
|
LL | let _l = a.len();
|
|
| ^ value borrowed here after move
|
|
|
|
|
help: consider borrowing instead of transferring ownership
|
|
|
|
|
LL | let _res = get_expr(dbg!(&a));
|
|
| +
|
|
|
|
error: aborting due to 7 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0382`.
|