Consider the following code:
fn main() {
let x = box 5i;
let y = x;
println!("{}", *x);
}
This yields error: use of partially moved value: *x.
What exactly is a "partially moved value"?
I think that a value should either be moved, or not be moved.
Perhaps a cleaner message could be:
"x" is no longer a valid pointer, did you mean "y"? or something along these lines.