1 error[E0382]: use of moved value: `x`
2 --> $DIR/issue-82916.rs:7:13
4 LL | fn foo(x: Vec<S>) {
5 | - move occurs because `x` has type `Vec<S>`, which does not implement the `Copy` trait
9 | `x` moved due to this implicit call to `.into_iter()`
10 | help: consider borrowing to avoid moving into the for loop: `&x`
13 | ^ value used here after move
15 note: this function takes ownership of the receiver `self`, which moves `x`
16 --> $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL
18 LL | fn into_iter(self) -> Self::IntoIter;
21 error: aborting due to previous error
23 For more information about this error, try `rustc --explain E0382`.