error[E0185]: method `from` has a `&self` declaration in the impl, but not in the trait --> $DIR/issue-48276.rs:21:5 | LL | fn from(a: A) -> Self; | ---------------------- trait method declared without `&self` ... LL | fn from(self: &'a Self) -> &'b str { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&self` used in impl error[E0185]: method `from` has a `&self` declaration in the impl, but not in the trait --> $DIR/issue-48276.rs:30:5 | LL | fn from(&self) -> B { | ^^^^^^^^^^^^^^^^^^^ `&self` used in impl | = note: `from` from trait: `fn(T) -> Self` error[E0185]: method `from` has a `&self` declaration in the impl, but not in the trait --> $DIR/issue-48276.rs:37:5 | LL | fn from(&self) -> &'static str { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&self` used in impl | = note: `from` from trait: `fn(T) -> Self` error: aborting due to 3 previous errors If you want more information on this error, try using "rustc --explain E0185"