1 error[E0382]: use of moved value: `x`
2 --> $DIR/move-guard-same-consts.rs:20:24
4 LL | let x: Box<_> = Box::new(1);
5 | - move occurs because `x` has type `Box<i32>`, which does not implement the `Copy` trait
7 LL | (1, 2) if take(x) => (),
9 LL | (1, 2) if take(x) => (),
10 | ^ value used here after move
12 note: consider changing this parameter type in function `take` to borrow instead if owning the value isn't necessary
13 --> $DIR/move-guard-same-consts.rs:25:15
15 LL | fn take<T>(_: T) -> bool { false }
16 | ---- ^ this parameter takes ownership of the value
19 help: consider cloning the value if the performance cost is acceptable
21 LL | (1, 2) if take(x.clone()) => (),
24 error: aborting due to previous error
26 For more information about this error, try `rustc --explain E0382`.