File tree Expand file tree Collapse file tree 3 files changed +24
-17
lines changed Expand file tree Collapse file tree 3 files changed +24
-17
lines changed Original file line number Diff line number Diff line change
1
+ // Test for issue #57362, ensuring that the self ty is shown in cases of higher-ranked lifetimes
2
+ // conflicts: the `expected` and `found` trait refs would otherwise be printed the same, leading
3
+ // to confusing notes such as:
4
+ // = note: expected type `Trait`
5
+ // found type `Trait`
6
+
7
+ // from issue #57362
8
+ trait Trait {
9
+ fn f ( self ) ;
10
+ }
11
+
12
+ impl < T > Trait for fn ( & T ) {
13
+ fn f ( self ) {
14
+ println ! ( "f" ) ;
15
+ }
16
+ }
17
+
18
+ fn f ( ) {
19
+ let a: fn ( _) = |_: & u8 | { } ;
20
+ a. f ( ) ; //~ ERROR not general enough
21
+ }
22
+
23
+ fn main ( ) { }
File renamed without changes.
Original file line number Diff line number Diff line change 4
4
// = note: expected type `Trait`
5
5
// found type `Trait`
6
6
7
- // from issue #57362
8
- trait Trait {
9
- fn f ( self ) ;
10
- }
11
-
12
- impl < T > Trait for fn ( & T ) {
13
- fn f ( self ) {
14
- println ! ( "f" ) ;
15
- }
16
- }
17
-
18
- fn f ( ) {
19
- let a: fn ( _) = |_: & u8 | { } ;
20
- a. f ( ) ; //~ ERROR not general enough
21
- }
22
-
23
7
// extracted from a similar issue: #57642
24
8
trait X {
25
9
type G ;
@@ -38,4 +22,4 @@ fn g() {
38
22
let x = <fn ( & ( ) ) >:: make_g ( ) ; //~ ERROR not general enough
39
23
}
40
24
41
- fn main ( ) { }
25
+ fn main ( ) { }
You can’t perform that action at this time.
0 commit comments