2019-01-25 18:35:35 +00:00
|
|
|
// 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| {};
|
2019-02-20 17:52:23 +00:00
|
|
|
a.f(); //~ ERROR no method named `f`
|
2019-01-25 18:35:35 +00:00
|
|
|
}
|
|
|
|
|
2019-01-25 19:53:59 +00:00
|
|
|
fn main() {}
|