rust/tests/ui/suggestions/issue-102972.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

40 lines
737 B
Rust
Raw Normal View History

//@ run-rustfix
fn test1() {
let mut chars = "Hello".chars();
for _c in chars.by_ref() {
chars.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();
for _i in iter {
iter.next(); //~ ERROR borrow of moved value: `iter`
}
}
fn test3() {
let v = vec![(), (), ()];
let mut i = v.iter();
for () in i.by_ref() {
i.next(); //~ ERROR cannot borrow `i`
}
}
fn test4() {
let v = vec![(), (), ()];
let mut iter = v.iter();
for () in iter {
iter.next(); //~ ERROR borrow of moved value: `iter`
}
}
fn main() {
test1();
test2();
test3();
test4();
}