| // Test for issue #57362, ensuring that the self ty is shown in cases of higher-ranked lifetimes | |
| // conflicts: the `expected` and `found` trait refs would otherwise be printed the same, leading | |
| // to confusing notes such as: | |
| // = note: expected type `Trait` | |
| // found type `Trait` | |
| // from issue #57362 | |
| trait Trait { | |
| fn f(self); | |
| } | |
| impl<T> Trait for fn(&T) { | |
| fn f(self) { | |
| println!("f"); | |
| } | |
| } | |
| fn f() { | |
| let a: fn(_) = |_: &u8| {}; | |
| a.f(); //~ ERROR no method named `f` | |
| } | |
| fn main() {} |