@@ -17,7 +17,7 @@ use rustc_ast::{
17
17
} ;
18
18
use rustc_ast_pretty:: pprust;
19
19
use rustc_data_structures:: fx:: FxHashSet ;
20
- use rustc_errors:: { pluralize, struct_span_err, Diagnostic , ErrorGuaranteed } ;
20
+ use rustc_errors:: { pluralize, struct_span_err, Diagnostic , EmissionGuarantee , ErrorGuaranteed } ;
21
21
use rustc_errors:: { Applicability , DiagnosticBuilder , Handler , PResult } ;
22
22
use rustc_span:: source_map:: Spanned ;
23
23
use rustc_span:: symbol:: { kw, Ident } ;
@@ -225,13 +225,13 @@ struct MultiSugg {
225
225
}
226
226
227
227
impl MultiSugg {
228
- fn emit ( self , err : & mut DiagnosticBuilder < ' _ > ) {
228
+ fn emit < G : EmissionGuarantee > ( self , err : & mut DiagnosticBuilder < ' _ , G > ) {
229
229
err. multipart_suggestion ( & self . msg , self . patches , self . applicability ) ;
230
230
}
231
231
232
232
/// Overrides individual messages and applicabilities.
233
- fn emit_many (
234
- err : & mut DiagnosticBuilder < ' _ > ,
233
+ fn emit_many < G : EmissionGuarantee > (
234
+ err : & mut DiagnosticBuilder < ' _ , G > ,
235
235
msg : & str ,
236
236
applicability : Applicability ,
237
237
suggestions : impl Iterator < Item = Self > ,
@@ -1289,7 +1289,7 @@ impl<'a> Parser<'a> {
1289
1289
) ;
1290
1290
err. span_label ( op_span, & format ! ( "not a valid {} operator" , kind. fixity) ) ;
1291
1291
1292
- let help_base_case = |mut err : DiagnosticBuilder < ' _ > , base| {
1292
+ let help_base_case = |mut err : DiagnosticBuilder < ' _ , _ > , base| {
1293
1293
err. help ( & format ! ( "use `{}= 1` instead" , kind. op. chr( ) ) ) ;
1294
1294
err. emit ( ) ;
1295
1295
Ok ( base)
0 commit comments