summaryrefslogtreecommitdiffstats
path: root/src/test/ui/loops/issue-82916.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/loops/issue-82916.stderr')
-rw-r--r--src/test/ui/loops/issue-82916.stderr24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/loops/issue-82916.stderr b/src/test/ui/loops/issue-82916.stderr
new file mode 100644
index 000000000..57d76016c
--- /dev/null
+++ b/src/test/ui/loops/issue-82916.stderr
@@ -0,0 +1,24 @@
+error[E0382]: use of moved value: `x`
+ --> $DIR/issue-82916.rs:7:13
+ |
+LL | fn foo(x: Vec<S>) {
+ | - move occurs because `x` has type `Vec<S>`, which does not implement the `Copy` trait
+LL | for y in x {
+ | - `x` moved due to this implicit call to `.into_iter()`
+...
+LL | let z = x;
+ | ^ value used here after move
+ |
+note: this function takes ownership of the receiver `self`, which moves `x`
+ --> $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL
+ |
+LL | fn into_iter(self) -> Self::IntoIter;
+ | ^^^^
+help: consider iterating over a slice of the `Vec<S>`'s content to avoid moving into the `for` loop
+ |
+LL | for y in &x {
+ | +
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0382`.