|  | error[E0382]: use of moved value | 
|  | --> $DIR/track2.rs:LL:CC | 
|  | | | 
|  | LL |     let _moved @ _from = String::from("foo"); | 
|  | |         ^^^^^^   -----   ------------------- move occurs because value has type `String`, which does not implement the `Copy` trait | 
|  | |         |        | | 
|  | |         |        value moved here | 
|  | |         value used here after move | 
|  | | | 
|  | = note: -Ztrack-diagnostics: created at compiler/rustc_borrowck/src/borrowck_errors.rs:LL:CC | 
|  | help: borrow this binding in the pattern to avoid moving the value | 
|  | | | 
|  | LL |     let ref _moved @ ref _from = String::from("foo"); | 
|  | |         +++          +++ | 
|  |  | 
|  | error: aborting due to 1 previous error | 
|  |  | 
|  | For more information about this error, try `rustc --explain E0382`. |