@@ -172,3 +172,142 @@ infer_msl_unmet_req = because this has an unmet lifetime requirement
172
172
infer_msl_trait_note = this has an implicit `'static` lifetime requirement
173
173
infer_msl_trait_sugg = consider relaxing the implicit `'static` requirement
174
174
infer_suggest_add_let_for_letchains = consider adding `let`
175
+
176
+ infer_explicit_lifetime_required_with_ident = explicit lifetime required in the type of `{ $simple_ident } `
177
+ .label = lifetime `{ $named } ` required
178
+
179
+ infer_explicit_lifetime_required_with_param_type = explicit lifetime required in parameter type
180
+ .label = lifetime `{ $named } ` required
181
+
182
+ infer_explicit_lifetime_required_sugg_with_ident = add explicit lifetime `{ $named } ` to the type of `{ $simple_ident } `
183
+
184
+ infer_explicit_lifetime_required_sugg_with_param_type = add explicit lifetime `{ $named } ` to type
185
+
186
+ infer_actual_impl_expl_expected_signature_two = { $leading_ellipsis ->
187
+ [ true ] ...
188
+ *[ false ] { " " }
189
+ } closure with signature `{ $ty_or_sig } ` must implement `{ $trait_path } `, for any two lifetimes `'{ $lifetime_1 } ` and `'{ $lifetime_2 } `...
190
+ infer_actual_impl_expl_expected_signature_any = { $leading_ellipsis ->
191
+ [ true ] ...
192
+ *[ false ] { " " }
193
+ } closure with signature `{ $ty_or_sig } ` must implement `{ $trait_path } `, for any lifetime `'{ $lifetime_1 } `...
194
+ infer_actual_impl_expl_expected_signature_some = { $leading_ellipsis ->
195
+ [ true ] ...
196
+ *[ false ] { " " }
197
+ } closure with signature `{ $ty_or_sig } ` must implement `{ $trait_path } `, for some specific lifetime `'{ lifetime_1 } `...
198
+ infer_actual_impl_expl_expected_signature_nothing = { $leading_ellipsis ->
199
+ [ true ] ...
200
+ *[ false ] { " " }
201
+ } closure with signature `{ $ty_or_sig } ` must implement `{ $trait_path } `
202
+ infer_actual_impl_expl_expected_passive_two = { $leading_ellipsis ->
203
+ [ true ] ...
204
+ *[ false ] { " " }
205
+ } `{ $trait_path } ` would have to be implemented for the type `{ $ty_or_sig } `, for any two lifetimes `'{ $lifetime_1 } ` and `'{ $lifetime_2 } `...
206
+ infer_actual_impl_expl_expected_passive_any = { $leading_ellipsis ->
207
+ [ true ] ...
208
+ *[ false ] { " " }
209
+ } `{ $trait_path } ` would have to be implemented for the type `{ $ty_or_sig } `, for any lifetime `'{ $lifetime_1 } `...
210
+ infer_actual_impl_expl_expected_passive_some = { $leading_ellipsis ->
211
+ [ true ] ...
212
+ *[ false ] { " " }
213
+ } `{ $trait_path } ` would have to be implemented for the type `{ $ty_or_sig } `, for some specific lifetime `'{ lifetime_1 } `...
214
+ infer_actual_impl_expl_expected_passive_nothing = { $leading_ellipsis ->
215
+ [ true ] ...
216
+ *[ false ] { " " }
217
+ } `{ $trait_path } ` would have to be implemented for the type `{ $ty_or_sig } `
218
+ infer_actual_impl_expl_expected_other_two = { $leading_ellipsis ->
219
+ [ true ] ...
220
+ *[ false ] { " " }
221
+ } `{ $ty_or_sig } ` must implement `{ $trait_path } `, for any two lifetimes `'{ $lifetime_1 } ` and `'{ $lifetime_2 } `...
222
+ infer_actual_impl_expl_expected_other_any = { $leading_ellipsis ->
223
+ [ true ] ...
224
+ *[ false ] { " " }
225
+ } `{ $ty_or_sig } ` must implement `{ $trait_path } `, for any lifetime `'{ $lifetime_1 } `...
226
+ infer_actual_impl_expl_expected_other_some = { $leading_ellipsis ->
227
+ [ true ] ...
228
+ *[ false ] { " " }
229
+ } `{ $ty_or_sig } ` must implement `{ $trait_path } `, for some specific lifetime `'{ lifetime_1 } `...
230
+ infer_actual_impl_expl_expected_other_nothing = { $leading_ellipsis ->
231
+ [ true ] ...
232
+ *[ false ] { " " }
233
+ } `{ $ty_or_sig } ` must implement `{ $trait_path } `
234
+
235
+ infer_actual_impl_expl_but_actually_implements_trait = ...but it actually implements `{ $trait_path } `{ $has_lifetime ->
236
+ [ true ] , for some specific lifetime `'{ $lifetime } `
237
+ *[ false ] { " " }
238
+ }
239
+ infer_actual_impl_expl_but_actually_implemented_for_ty = ...but `{ $trait_path } ` is actually implemented for the type `{ $ty } `{ $has_lifetime ->
240
+ [ true ] , for some specific lifetime `'{ $lifetime } `
241
+ *[ false ] { " " }
242
+ }
243
+ infer_actual_impl_expl_but_actually_ty_implements = ...but `{ $ty } ` actually implements `{ $trait_path } `{ $has_lifetime ->
244
+ [ true ] , for some specific lifetime `'{ $lifetime } `
245
+ *[ false ] { " " }
246
+ }
247
+
248
+ infer_trait_placeholder_mismatch = implementation of `{ $trait_def_id } ` is not general enough
249
+ .label_satisfy = doesn't satisfy where-clause
250
+ .label_where = due to a where-clause on `{ $def_id } `...
251
+ .label_dup = implementation of `{ $trait_def_id } ` is not general enough
252
+
253
+ infer_trait_impl_diff = `impl` item signature doesn't match `trait` item signature
254
+ .found = found `{ $found } `
255
+ .expected = expected `{ $expected } `
256
+ .expected_found = expected `{ $expected } `
257
+ { " " } found `{ $found } `
258
+
259
+ infer_tid_rel_help = verify the lifetime relationships in the `trait` and `impl` between the `self` argument, the other inputs and its output
260
+ infer_tid_consider_borrowing = consider borrowing this type parameter in the trait
261
+ infer_tid_param_help = the lifetime requirements from the `impl` do not correspond to the requirements in the `trait`
262
+
263
+ infer_dtcs_has_lifetime_req_label = this has an implicit `'static` lifetime requirement
264
+ infer_dtcs_introduces_requirement = calling this method introduces the `impl`'s 'static` requirement
265
+ infer_dtcs_has_req_note = the used `impl` has a `'static` requirement
266
+ infer_dtcs_suggestion = consider relaxing the implicit `'static` requirement
267
+
268
+ infer_but_calling_introduces = { $has_param_name ->
269
+ [ true ] `{ $param_name } `
270
+ *[ false ] `fn` parameter
271
+ } has { $lifetime_kind ->
272
+ [ named ] lifetime `{ lifetime } `
273
+ *[ anon ] an anonymous lifetime `'_`
274
+ } but calling `{ assoc_item } ` introduces an implicit `'static` lifetime requirement
275
+ .label1 = { $has_lifetime ->
276
+ [ named ] lifetime `{ lifetime } `
277
+ *[ anon ] an anonymous lifetime `'_`
278
+ }
279
+ .label2 = ...is used and required to live as long as `'static` here because of an implicit lifetime bound on the { $has_impl_path ->
280
+ [ named ] `impl` of `{ $impl_path } `
281
+ *[ anon ] inherent `impl`
282
+ }
283
+
284
+ infer_but_needs_to_satisfy = { $has_param_name ->
285
+ [ true ] `{ $param_name } `
286
+ *[ false ] `fn` parameter
287
+ } has { $has_lifetime ->
288
+ [ named ] lifetime `{ lifetime } `
289
+ *[ anon ] an anonymous lifetime `'_`
290
+ } but it needs to satisfy a `'static` lifetime requirement
291
+ .influencer = this data with { $has_lifetime ->
292
+ [ named ] lifetime `{ lifetime } `
293
+ *[ anon ] an anonymous lifetime `'_`
294
+ } ...
295
+ .require = { $spans_empty ->
296
+ *[ true ] ...is used and required to live as long as `'static` here
297
+ [ false ] ...and is required to live as long as `'static` here
298
+ }
299
+ .used_here = ...is used here...
300
+ .introduced_by_bound = 'static` lifetime requirement introduced by this bound
301
+
302
+ infer_more_targeted = { $has_param_name ->
303
+ [ true ] `{ $param_name } `
304
+ *[ false ] `fn` parameter
305
+ } has { $has_lifetime ->
306
+ [ named ] lifetime `{ lifetime } `
307
+ *[ anon ] an anonymous lifetime `'_`
308
+ } but calling `{ $ident } ` introduces an implicit `'static` lifetime requirement
309
+
310
+ infer_ril_introduced_here = `'static` requirement introduced here
311
+ infer_ril_introduced_by = requirement introduced by this return type
312
+ infer_ril_because_of = because of this returned expression
313
+ infer_ril_static_introduced_by = "`'static` lifetime requirement introduced by the return type
0 commit comments