@@ -7,151 +7,305 @@ LL | f1(|_: (), _: ()| {}); //~ ERROR type mismatch
7
7
| expected signature of `for<'r, 's> fn(&'r (), &'s ()) -> _`
8
8
|
9
9
note: required by `f1`
10
- --> $DIR/anonymous-higher-ranked-lifetime.rs:16 :1
10
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:27 :1
11
11
|
12
12
LL | fn f1<F>(_: F) where F: Fn(&(), &()) {}
13
13
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
14
14
15
15
error[E0631]: type mismatch in closure arguments
16
- --> $DIR/anonymous-higher-ranked-lifetime.rs:3:5
16
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:2:5
17
+ |
18
+ LL | f1(|_: (), _: ()| {}); //~ ERROR type mismatch
19
+ | ^^ -------------- found signature of `fn((), ()) -> _`
20
+ | |
21
+ | expected signature of `fn(&(), &()) -> _`
22
+ |
23
+ note: required by `f1`
24
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:27:1
25
+ |
26
+ LL | fn f1<F>(_: F) where F: Fn(&(), &()) {}
27
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
28
+
29
+ error[E0631]: type mismatch in closure arguments
30
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:4:5
17
31
|
18
32
LL | f2(|_: (), _: ()| {}); //~ ERROR type mismatch
19
33
| ^^ -------------- found signature of `fn((), ()) -> _`
20
34
| |
21
35
| expected signature of `for<'a, 'r> fn(&'a (), &'r ()) -> _`
22
36
|
23
37
note: required by `f2`
24
- --> $DIR/anonymous-higher-ranked-lifetime.rs:17 :1
38
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:28 :1
25
39
|
26
40
LL | fn f2<F>(_: F) where F: for<'a> Fn(&'a (), &()) {}
27
41
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
28
42
29
43
error[E0631]: type mismatch in closure arguments
30
44
--> $DIR/anonymous-higher-ranked-lifetime.rs:4:5
31
45
|
46
+ LL | f2(|_: (), _: ()| {}); //~ ERROR type mismatch
47
+ | ^^ -------------- found signature of `fn((), ()) -> _`
48
+ | |
49
+ | expected signature of `fn(&'a (), &()) -> _`
50
+ |
51
+ note: required by `f2`
52
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:28:1
53
+ |
54
+ LL | fn f2<F>(_: F) where F: for<'a> Fn(&'a (), &()) {}
55
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
56
+
57
+ error[E0631]: type mismatch in closure arguments
58
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:6:5
59
+ |
32
60
LL | f3(|_: (), _: ()| {}); //~ ERROR type mismatch
33
61
| ^^ -------------- found signature of `fn((), ()) -> _`
34
62
| |
35
63
| expected signature of `for<'r> fn(&(), &'r ()) -> _`
36
64
|
37
65
note: required by `f3`
38
- --> $DIR/anonymous-higher-ranked-lifetime.rs:18 :1
66
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:29 :1
39
67
|
40
68
LL | fn f3<'a, F>(_: F) where F: Fn(&'a (), &()) {}
41
69
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
42
70
43
71
error[E0631]: type mismatch in closure arguments
44
- --> $DIR/anonymous-higher-ranked-lifetime.rs:5:5
72
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:6:5
73
+ |
74
+ LL | f3(|_: (), _: ()| {}); //~ ERROR type mismatch
75
+ | ^^ -------------- found signature of `fn((), ()) -> _`
76
+ | |
77
+ | expected signature of `fn(&(), &()) -> _`
78
+ |
79
+ note: required by `f3`
80
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:29:1
81
+ |
82
+ LL | fn f3<'a, F>(_: F) where F: Fn(&'a (), &()) {}
83
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
84
+
85
+ error[E0631]: type mismatch in closure arguments
86
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:8:5
45
87
|
46
88
LL | f4(|_: (), _: ()| {}); //~ ERROR type mismatch
47
89
| ^^ -------------- found signature of `fn((), ()) -> _`
48
90
| |
49
91
| expected signature of `for<'s, 'r> fn(&'s (), &'r ()) -> _`
50
92
|
51
93
note: required by `f4`
52
- --> $DIR/anonymous-higher-ranked-lifetime.rs:19 :1
94
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:30 :1
53
95
|
54
96
LL | fn f4<F>(_: F) where F: for<'r> Fn(&(), &'r ()) {}
55
97
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
56
98
57
99
error[E0631]: type mismatch in closure arguments
58
- --> $DIR/anonymous-higher-ranked-lifetime.rs:6:5
100
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:8:5
101
+ |
102
+ LL | f4(|_: (), _: ()| {}); //~ ERROR type mismatch
103
+ | ^^ -------------- found signature of `fn((), ()) -> _`
104
+ | |
105
+ | expected signature of `fn(&(), &'r ()) -> _`
106
+ |
107
+ note: required by `f4`
108
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:30:1
109
+ |
110
+ LL | fn f4<F>(_: F) where F: for<'r> Fn(&(), &'r ()) {}
111
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
112
+
113
+ error[E0631]: type mismatch in closure arguments
114
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:10:5
59
115
|
60
116
LL | f5(|_: (), _: ()| {}); //~ ERROR type mismatch
61
117
| ^^ -------------- found signature of `fn((), ()) -> _`
62
118
| |
63
119
| expected signature of `for<'r> fn(&'r (), &'r ()) -> _`
64
120
|
65
121
note: required by `f5`
66
- --> $DIR/anonymous-higher-ranked-lifetime.rs:20 :1
122
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:31 :1
67
123
|
68
124
LL | fn f5<F>(_: F) where F: for<'r> Fn(&'r (), &'r ()) {}
69
125
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
70
126
71
127
error[E0631]: type mismatch in closure arguments
72
- --> $DIR/anonymous-higher-ranked-lifetime.rs:7:5
128
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:10:5
129
+ |
130
+ LL | f5(|_: (), _: ()| {}); //~ ERROR type mismatch
131
+ | ^^ -------------- found signature of `fn((), ()) -> _`
132
+ | |
133
+ | expected signature of `fn(&'r (), &'r ()) -> _`
134
+ |
135
+ note: required by `f5`
136
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:31:1
137
+ |
138
+ LL | fn f5<F>(_: F) where F: for<'r> Fn(&'r (), &'r ()) {}
139
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
140
+
141
+ error[E0631]: type mismatch in closure arguments
142
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:12:5
73
143
|
74
144
LL | g1(|_: (), _: ()| {}); //~ ERROR type mismatch
75
145
| ^^ -------------- found signature of `fn((), ()) -> _`
76
146
| |
77
147
| expected signature of `for<'r> fn(&'r (), std::boxed::Box<(dyn for<'s> std::ops::Fn(&'s ()) + 'static)>) -> _`
78
148
|
79
149
note: required by `g1`
80
- --> $DIR/anonymous-higher-ranked-lifetime.rs:23 :1
150
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:34 :1
81
151
|
82
152
LL | fn g1<F>(_: F) where F: Fn(&(), Box<Fn(&())>) {}
83
153
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
84
154
85
155
error[E0631]: type mismatch in closure arguments
86
- --> $DIR/anonymous-higher-ranked-lifetime.rs:8:5
156
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:12:5
157
+ |
158
+ LL | g1(|_: (), _: ()| {}); //~ ERROR type mismatch
159
+ | ^^ -------------- found signature of `fn((), ()) -> _`
160
+ | |
161
+ | expected signature of `fn(&(), std::boxed::Box<(dyn for<'r> std::ops::Fn(&'r ()) + 'static)>) -> _`
162
+ |
163
+ note: required by `g1`
164
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:34:1
165
+ |
166
+ LL | fn g1<F>(_: F) where F: Fn(&(), Box<Fn(&())>) {}
167
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
168
+
169
+ error[E0631]: type mismatch in closure arguments
170
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:14:5
87
171
|
88
172
LL | g2(|_: (), _: ()| {}); //~ ERROR type mismatch
89
173
| ^^ -------------- found signature of `fn((), ()) -> _`
90
174
| |
91
175
| expected signature of `for<'r> fn(&'r (), for<'s> fn(&'s ())) -> _`
92
176
|
93
177
note: required by `g2`
94
- --> $DIR/anonymous-higher-ranked-lifetime.rs:24 :1
178
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:35 :1
95
179
|
96
180
LL | fn g2<F>(_: F) where F: Fn(&(), fn(&())) {}
97
181
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
98
182
99
183
error[E0631]: type mismatch in closure arguments
100
- --> $DIR/anonymous-higher-ranked-lifetime.rs:9:5
184
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:14:5
185
+ |
186
+ LL | g2(|_: (), _: ()| {}); //~ ERROR type mismatch
187
+ | ^^ -------------- found signature of `fn((), ()) -> _`
188
+ | |
189
+ | expected signature of `fn(&(), for<'r> fn(&'r ())) -> _`
190
+ |
191
+ note: required by `g2`
192
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:35:1
193
+ |
194
+ LL | fn g2<F>(_: F) where F: Fn(&(), fn(&())) {}
195
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
196
+
197
+ error[E0631]: type mismatch in closure arguments
198
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:16:5
101
199
|
102
200
LL | g3(|_: (), _: ()| {}); //~ ERROR type mismatch
103
201
| ^^ -------------- found signature of `fn((), ()) -> _`
104
202
| |
105
203
| expected signature of `for<'s> fn(&'s (), std::boxed::Box<(dyn for<'r> std::ops::Fn(&'r ()) + 'static)>) -> _`
106
204
|
107
205
note: required by `g3`
108
- --> $DIR/anonymous-higher-ranked-lifetime.rs:25 :1
206
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:36 :1
109
207
|
110
208
LL | fn g3<F>(_: F) where F: for<'s> Fn(&'s (), Box<Fn(&())>) {}
111
209
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
112
210
113
211
error[E0631]: type mismatch in closure arguments
114
- --> $DIR/anonymous-higher-ranked-lifetime.rs:10:5
212
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:16:5
213
+ |
214
+ LL | g3(|_: (), _: ()| {}); //~ ERROR type mismatch
215
+ | ^^ -------------- found signature of `fn((), ()) -> _`
216
+ | |
217
+ | expected signature of `fn(&'s (), std::boxed::Box<(dyn for<'r> std::ops::Fn(&'r ()) + 'static)>) -> _`
218
+ |
219
+ note: required by `g3`
220
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:36:1
221
+ |
222
+ LL | fn g3<F>(_: F) where F: for<'s> Fn(&'s (), Box<Fn(&())>) {}
223
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
224
+
225
+ error[E0631]: type mismatch in closure arguments
226
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:18:5
115
227
|
116
228
LL | g4(|_: (), _: ()| {}); //~ ERROR type mismatch
117
229
| ^^ -------------- found signature of `fn((), ()) -> _`
118
230
| |
119
231
| expected signature of `for<'s> fn(&'s (), for<'r> fn(&'r ())) -> _`
120
232
|
121
233
note: required by `g4`
122
- --> $DIR/anonymous-higher-ranked-lifetime.rs:26:1
234
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:37:1
235
+ |
236
+ LL | fn g4<F>(_: F) where F: Fn(&(), for<'r> fn(&'r ())) {}
237
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
238
+
239
+ error[E0631]: type mismatch in closure arguments
240
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:18:5
241
+ |
242
+ LL | g4(|_: (), _: ()| {}); //~ ERROR type mismatch
243
+ | ^^ -------------- found signature of `fn((), ()) -> _`
244
+ | |
245
+ | expected signature of `fn(&(), for<'r> fn(&'r ())) -> _`
246
+ |
247
+ note: required by `g4`
248
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:37:1
123
249
|
124
250
LL | fn g4<F>(_: F) where F: Fn(&(), for<'r> fn(&'r ())) {}
125
251
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
126
252
127
253
error[E0631]: type mismatch in closure arguments
128
- --> $DIR/anonymous-higher-ranked-lifetime.rs:11 :5
254
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:20 :5
129
255
|
130
256
LL | h1(|_: (), _: (), _: (), _: ()| {}); //~ ERROR type mismatch
131
257
| ^^ ---------------------------- found signature of `fn((), (), (), ()) -> _`
132
258
| |
133
259
| expected signature of `for<'r, 's> fn(&'r (), std::boxed::Box<(dyn for<'t0> std::ops::Fn(&'t0 ()) + 'static)>, &'s (), for<'t0, 't1> fn(&'t0 (), &'t1 ())) -> _`
134
260
|
135
261
note: required by `h1`
136
- --> $DIR/anonymous-higher-ranked-lifetime.rs:29 :1
262
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:40 :1
137
263
|
138
264
LL | fn h1<F>(_: F) where F: Fn(&(), Box<Fn(&())>, &(), fn(&(), &())) {}
139
265
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
140
266
141
267
error[E0631]: type mismatch in closure arguments
142
- --> $DIR/anonymous-higher-ranked-lifetime.rs:12:5
268
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:20:5
269
+ |
270
+ LL | h1(|_: (), _: (), _: (), _: ()| {}); //~ ERROR type mismatch
271
+ | ^^ ---------------------------- found signature of `fn((), (), (), ()) -> _`
272
+ | |
273
+ | expected signature of `fn(&(), std::boxed::Box<(dyn for<'r> std::ops::Fn(&'r ()) + 'static)>, &(), for<'r, 's> fn(&'r (), &'s ())) -> _`
274
+ |
275
+ note: required by `h1`
276
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:40:1
277
+ |
278
+ LL | fn h1<F>(_: F) where F: Fn(&(), Box<Fn(&())>, &(), fn(&(), &())) {}
279
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
280
+
281
+ error[E0631]: type mismatch in closure arguments
282
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:22:5
143
283
|
144
284
LL | h2(|_: (), _: (), _: (), _: ()| {}); //~ ERROR type mismatch
145
285
| ^^ ---------------------------- found signature of `fn((), (), (), ()) -> _`
146
286
| |
147
287
| expected signature of `for<'r, 't0> fn(&'r (), std::boxed::Box<(dyn for<'s> std::ops::Fn(&'s ()) + 'static)>, &'t0 (), for<'s, 't1> fn(&'s (), &'t1 ())) -> _`
148
288
|
149
289
note: required by `h2`
150
- --> $DIR/anonymous-higher-ranked-lifetime.rs:30:1
290
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:41:1
291
+ |
292
+ LL | fn h2<F>(_: F) where F: for<'t0> Fn(&(), Box<Fn(&())>, &'t0 (), fn(&(), &())) {}
293
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
294
+
295
+ error[E0631]: type mismatch in closure arguments
296
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:22:5
297
+ |
298
+ LL | h2(|_: (), _: (), _: (), _: ()| {}); //~ ERROR type mismatch
299
+ | ^^ ---------------------------- found signature of `fn((), (), (), ()) -> _`
300
+ | |
301
+ | expected signature of `fn(&(), std::boxed::Box<(dyn for<'r> std::ops::Fn(&'r ()) + 'static)>, &'t0 (), for<'r, 's> fn(&'r (), &'s ())) -> _`
302
+ |
303
+ note: required by `h2`
304
+ --> $DIR/anonymous-higher-ranked-lifetime.rs:41:1
151
305
|
152
306
LL | fn h2<F>(_: F) where F: for<'t0> Fn(&(), Box<Fn(&())>, &'t0 (), fn(&(), &())) {}
153
307
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
154
308
155
- error: aborting due to 11 previous errors
309
+ error: aborting due to 22 previous errors
156
310
157
311
For more information about this error, try `rustc --explain E0631`.
0 commit comments