1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
struct Z { } impl Z { fn run(&self, z: &mut Z) { } fn start(&mut self) { self.run(&mut self); //~ ERROR cannot borrow //~| ERROR cannot borrow //~| HELP try removing `&mut` here } } fn main() { let mut z = Z {}; z.start(); }