error[E0626]: borrow may still be in use when generator yields --> $DIR/yield-while-iterating.rs:22:18 | LL | for p in &x { //~ ERROR | ^^ LL | yield(); | ------- possible yield occurs here error[E0502]: cannot borrow `x` as immutable because it is also borrowed as mutable --> $DIR/yield-while-iterating.rs:67:20 | LL | let mut b = || { | -- mutable borrow occurs here LL | for p in &mut x { | - first borrow occurs due to use of `x` in generator ... LL | println!("{}", x[0]); //~ ERROR | ^ immutable borrow occurs here LL | b.resume(); | - mutable borrow later used here error: aborting due to 2 previous errors Some errors occurred: E0502, E0626. For more information about an error, try `rustc --explain E0502`.