@@ -398,17 +398,19 @@ impl<'a> CoverageSpansGenerator<'a> {
398
398
/// If `curr` is part of a new macro expansion, carve out and push a separate
399
399
/// span that ends just after the macro name and its subsequent `!`.
400
400
fn maybe_push_macro_name_span ( & mut self ) {
401
- let Some ( visible_macro) = self . curr ( ) . visible_macro ( self . body_span ) else { return } ;
401
+ let curr = self . curr ( ) ;
402
+
403
+ let Some ( visible_macro) = curr. visible_macro ( self . body_span ) else { return } ;
402
404
if let Some ( prev) = & self . some_prev
403
- && prev. expn_span . ctxt ( ) == self . curr ( ) . expn_span . ctxt ( )
405
+ && prev. expn_span . ctxt ( ) == curr. expn_span . ctxt ( )
404
406
{
405
407
return ;
406
408
}
407
409
408
- let merged_prefix_len = self . curr_original_span . lo ( ) - self . curr ( ) . span . lo ( ) ;
410
+ let merged_prefix_len = self . curr_original_span . lo ( ) - curr. span . lo ( ) ;
409
411
let after_macro_bang = merged_prefix_len + BytePos ( visible_macro. as_str ( ) . len ( ) as u32 + 1 ) ;
410
- let mut macro_name_cov = self . curr ( ) . clone ( ) ;
411
- self . curr_mut ( ) . span = self . curr ( ) . span . with_lo ( self . curr ( ) . span . lo ( ) + after_macro_bang) ;
412
+ let mut macro_name_cov = curr. clone ( ) ;
413
+ self . curr_mut ( ) . span = curr. span . with_lo ( curr. span . lo ( ) + after_macro_bang) ;
412
414
macro_name_cov. span =
413
415
macro_name_cov. span . with_hi ( macro_name_cov. span . lo ( ) + after_macro_bang) ;
414
416
debug ! (
@@ -521,11 +523,14 @@ impl<'a> CoverageSpansGenerator<'a> {
521
523
/// extends to the right of the closure, update `prev` to that portion of the span. For any
522
524
/// `pending_dups`, repeat the same process.
523
525
fn carve_out_span_for_closure ( & mut self ) {
524
- let curr_span = self . curr ( ) . span ;
525
- let left_cutoff = curr_span. lo ( ) ;
526
- let right_cutoff = curr_span. hi ( ) ;
527
- let has_pre_closure_span = self . prev ( ) . span . lo ( ) < right_cutoff;
528
- let has_post_closure_span = self . prev ( ) . span . hi ( ) > right_cutoff;
526
+ let prev = self . prev ( ) ;
527
+ let curr = self . curr ( ) ;
528
+
529
+ let left_cutoff = curr. span . lo ( ) ;
530
+ let right_cutoff = curr. span . hi ( ) ;
531
+ let has_pre_closure_span = prev. span . lo ( ) < right_cutoff;
532
+ let has_post_closure_span = prev. span . hi ( ) > right_cutoff;
533
+
529
534
let mut pending_dups = self . pending_dups . split_off ( 0 ) ;
530
535
if has_pre_closure_span {
531
536
let mut pre_closure = self . prev ( ) . clone ( ) ;
@@ -580,7 +585,8 @@ impl<'a> CoverageSpansGenerator<'a> {
580
585
let initial_pending_count = self . pending_dups . len ( ) ;
581
586
if initial_pending_count > 0 {
582
587
let mut pending_dups = self . pending_dups . split_off ( 0 ) ;
583
- pending_dups. retain ( |dup| !self . span_bcb_dominates ( dup, self . curr ( ) ) ) ;
588
+ let curr = self . curr ( ) ;
589
+ pending_dups. retain ( |dup| !self . span_bcb_dominates ( dup, curr) ) ;
584
590
self . pending_dups . append ( & mut pending_dups) ;
585
591
if self . pending_dups . len ( ) < initial_pending_count {
586
592
debug ! (
0 commit comments