blob: 3b3820bfc4af3f7641818e7c8289ab3f11fa6cd7 [file] [log] [blame] [edit]
//@ forbid-output: &mut mut self
struct Struct;
impl Struct {
fn foo(&mut self) {
(&mut self).bar(); //~ ERROR: cannot borrow
//~^ HELP: try removing `&mut` here
}
// In this case we could keep the suggestion, but to distinguish the
// two cases is pretty hard. It's an obscure case anyway.
fn bar(self: &mut Self) {
//~^ WARN: function cannot return without recursing
//~| HELP: a `loop` may express intention better if this is on purpose
//~| HELP: consider making the binding mutable if you need to reborrow multiple times
(&mut self).bar(); //~ ERROR cannot borrow
//~^ HELP: try removing `&mut` here
}
}
fn main () {}