My reference was dropped, why is the compiler complaining about multiple borrows?

from blog ntietz.com blog - technically a blog, | ↗ original
↗ original
Recently someone I was talking to ran into a fun borrow checker problem in Rust which is illustrative of some current underlying limitations of Rust's borrow checker. The problem boiled down to: they took a reference in a loop (dropped on each iteration), and the borrow checker complains that it cannot borrow it mutably multiple times, since it...