| error[E0626]: borrow may still be in use when generator yields |
| --> $DIR/yield-while-iterating.rs:13:18 |
| | |
| LL | for p in &x { |
| | ^^ |
| 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:58: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]); |
| | ^ immutable borrow occurs here |
| LL | Pin::new(&mut b).resume(()); |
| | ------ mutable borrow later used here |
| |
| error: aborting due to 2 previous errors |
| |
| Some errors have detailed explanations: E0502, E0626. |
| For more information about an error, try `rustc --explain E0502`. |