error[E0185]: method `from` has a `&self` declaration in the impl, but not in the trait
  --> $DIR/issue-48276.rs:11: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:20: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:27: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

For more information about this error, try `rustc --explain E0185`.
