error[E0382]: use of moved value: `x` --> $DIR/move-in-guard-2.rs:10:24 | LL | (_, 2) if take(x) => (), | ^ value moved here in previous iteration of loop | = note: move occurs because `x` has type `std::boxed::Box`, which does not implement the `Copy` trait error: aborting due to previous error For more information about this error, try `rustc --explain E0382`.