error[E0382]: use of partially moved value: `maybe` (Ast) --> $DIR/issue-41962.rs:17:30 | LL | if let Some(thing) = maybe { | ----- ^^^^^ value used here after move | | | value moved here | = note: move occurs because the value has type `std::vec::Vec`, which does not implement the `Copy` trait error[E0382]: use of moved value: `(maybe as std::prelude::v1::Some).0` (Ast) --> $DIR/issue-41962.rs:17:21 | LL | if let Some(thing) = maybe { | ^^^^^ value moved here in previous iteration of loop | = note: move occurs because the value has type `std::vec::Vec`, which does not implement the `Copy` trait error[E0382]: use of moved value (Mir) --> $DIR/issue-41962.rs:17:21 | LL | if let Some(thing) = maybe { | ^^^^^ value moved here in previous iteration of loop | = note: move occurs because value has type `std::vec::Vec`, which does not implement the `Copy` trait error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0382`.