summaryrefslogtreecommitdiffstats
path: root/tests/ui/suggestions/issue-102972.fixed
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/suggestions/issue-102972.fixed')
-rw-r--r--tests/ui/suggestions/issue-102972.fixed41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/ui/suggestions/issue-102972.fixed b/tests/ui/suggestions/issue-102972.fixed
new file mode 100644
index 000000000..ebd73b2dc
--- /dev/null
+++ b/tests/ui/suggestions/issue-102972.fixed
@@ -0,0 +1,41 @@
+// run-rustfix
+
+fn test1() {
+ let mut chars = "Hello".chars();
+ let iter = chars.by_ref();
+ while let Some(_c) = iter.next() {
+ iter.next(); //~ ERROR cannot borrow `chars` as mutable more than once at a time
+ }
+}
+
+fn test2() {
+ let v = vec![1, 2, 3];
+ let mut iter = v.iter();
+ while let Some(_i) = iter.next() {
+ iter.next(); //~ ERROR borrow of moved value: `iter`
+ }
+}
+
+fn test3() {
+ let v = vec![(), (), ()];
+ let mut i = v.iter();
+ let iter = i.by_ref();
+ while let Some(()) = iter.next() {
+ iter.next(); //~ ERROR cannot borrow `i`
+ }
+}
+
+fn test4() {
+ let v = vec![(), (), ()];
+ let mut iter = v.iter();
+ while let Some(()) = iter.next() {
+ iter.next(); //~ ERROR borrow of moved value: `iter`
+ }
+}
+
+fn main() {
+ test1();
+ test2();
+ test3();
+ test4();
+}