error[E0186]: method `foo` has a `&self` declaration in the trait, but not in the impl --> $DIR/E0186.rs:8:5 | LL | fn foo(&self); | -------------- `&self` used in trait ... LL | fn foo() {} | ^^^^^^^^ expected `&self` in impl error: aborting due to previous error For more information about this error, try `rustc --explain E0186`.