| //@ edition:2015..2021 | |
| struct Bar; | |
| impl Bar { | |
| fn bar(&mut self, _: impl Fn()) {} | |
| } | |
| struct Foo { | |
| thing: Bar, | |
| number: usize, | |
| } | |
| impl Foo { | |
| fn foo(&mut self) { | |
| self.thing.bar(|| { | |
| //~^ ERROR cannot borrow `self.thing` as mutable because it is also borrowed as immutable [E0502] | |
| &self.number; | |
| }); | |
| } | |
| } | |
| fn main() {} |