error[E0507]: cannot move out of `y`, a captured variable in an `Fn` closure --> $DIR/unboxed-closures-move-upvar-from-non-once-ref-closure.rs:11:9 | LL | let y = vec![format!("World")]; | - captured outer variable LL | call(|| { | __________- LL | | y.into_iter(); | | ^ ----------- `y` moved due to this method call | | | | | move occurs because `y` has type `Vec`, which does not implement the `Copy` trait LL | | LL | | }); | |_____- captured by this `Fn` closure | note: this function takes ownership of the receiver `self`, which moves `y` --> $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL | LL | fn into_iter(self) -> Self::IntoIter; | ^^^^ error: aborting due to previous error For more information about this error, try `rustc --explain E0507`.