mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-24 07:44:10 +00:00
22 lines
848 B
Plaintext
22 lines
848 B
Plaintext
error[E0505]: cannot move out of `s` because it is borrowed
|
|
--> $DIR/btreemap_dropck.rs:15:10
|
|
|
|
|
LL | let s = String::from("Hello World!");
|
|
| - binding `s` declared here
|
|
LL | let _map = BTreeMap::from_iter([((), PrintOnDrop(&s))]);
|
|
| -- borrow of `s` occurs here
|
|
LL | drop(s);
|
|
| ^ move out of `s` occurs here
|
|
LL | }
|
|
| - borrow might be used here, when `_map` is dropped and runs the `Drop` code for type `BTreeMap`
|
|
|
|
|
help: consider cloning the value if the performance cost is acceptable
|
|
|
|
|
LL - let _map = BTreeMap::from_iter([((), PrintOnDrop(&s))]);
|
|
LL + let _map = BTreeMap::from_iter([((), PrintOnDrop(s.clone()))]);
|
|
|
|
|
|
|
error: aborting due to 1 previous error
|
|
|
|
For more information about this error, try `rustc --explain E0505`.
|