blob: 45c827ab094634ccd90f7b83214b78addd88a96d [file] [edit]
trait Trait {
fn run(&self);
}
struct Test;
impl Test {
fn run(self, x: f32) {}
}
impl Trait for Test {
fn run(&self) {}
}
struct Test2;
trait Trait2: Sized {
fn run(self, _x: f32) {}
}
impl Trait2 for Test2 {
fn run(self, _x: f32) {}
}
impl Trait for Test2 {
fn run(&self) {}
}
struct Test3;
impl Trait for Test3 {
fn run(&self) {}
}
fn main() {
(&Test).run();
(&Test).run(); //~ needless_borrow
(&Test2).run();
(&Test2).run(); //~ needless_borrow
Test3.run(); //~ needless_borrow
Test3.run(); //~ needless_borrow
}