@@ -333,18 +333,10 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
333
333
lhs_ty) ;
334
334
335
335
if !lhs_expr. span . eq ( & rhs_expr. span ) {
336
- err. span_label ( lhs_expr. span , lhs_ty. to_string ( ) ) ;
337
- if let FnDef ( ..) = lhs_ty. sty {
338
- err. span_label ( lhs_expr. span , "did you forget `()`?" ) ;
339
- }
340
-
341
- err. span_label ( rhs_expr. span , rhs_ty. to_string ( ) ) ;
342
- if let FnDef ( ..) = rhs_ty. sty {
343
- err. span_label ( rhs_expr. span , "did you forget `()`?" ) ;
344
- }
336
+ self . add_type_neq_err_label ( & mut err, lhs_expr. span , lhs_ty) ;
337
+ self . add_type_neq_err_label ( & mut err, rhs_expr. span , rhs_ty) ;
345
338
}
346
339
347
-
348
340
let mut suggested_deref = false ;
349
341
if let Ref ( _, mut rty, _) = lhs_ty. sty {
350
342
if {
@@ -423,6 +415,18 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
423
415
( lhs_ty, rhs_ty, return_ty)
424
416
}
425
417
418
+ fn add_type_neq_err_label (
419
+ & self ,
420
+ err : & mut errors:: DiagnosticBuilder < ' _ > ,
421
+ span : Span ,
422
+ ty : Ty < ' tcx > ,
423
+ ) {
424
+ err. span_label ( span, ty. to_string ( ) ) ;
425
+ if let FnDef ( ..) = ty. sty {
426
+ err. span_label ( span, "did you forget `()`?" ) ;
427
+ }
428
+ }
429
+
426
430
fn check_str_addition (
427
431
& self ,
428
432
expr : & ' gcx hir:: Expr ,
0 commit comments