error[E0382]: use of moved value: `u.a` --> $DIR/borrowck-union-move-assign.rs:17:17 | LL | let a = u.a; | - value moved here LL | let a = u.a; | ^ value used here after move | = note: move occurs because `u.a` has type `A`, which does not implement the `Copy` trait error: aborting due to previous error For more information about this error, try `rustc --explain E0382`.