Skip to content

Commit b8c03a6

Browse files
committed
coverage: Inline prev_starts_after_next
1 parent 3517e08 commit b8c03a6

File tree

1 file changed

+5
-10
lines changed
  • compiler/rustc_mir_transform/src/coverage

1 file changed

+5
-10
lines changed

compiler/rustc_mir_transform/src/coverage/spans.rs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -487,11 +487,13 @@ impl<'a> CoverageSpansGenerator<'a> {
487487
}
488488
while let Some(curr) = self.sorted_spans_iter.next() {
489489
debug!("FOR curr={:?}", curr);
490-
if self.some_prev.is_some() && self.prev_starts_after_next(&curr) {
490+
if let Some(prev) = &self.some_prev && curr.span.lo() < prev.span.lo() {
491+
// Skip curr because prev has already advanced beyond the end of curr.
492+
// This can only happen if a prior iteration updated `prev` to skip pas a region
493+
// of code, such as skipping past a closure.
491494
debug!(
492495
" prev.span starts after curr.span, so curr will be dropped (skipping past \
493-
closure?); prev={:?}",
494-
self.prev()
496+
closure?); prev={prev:?}",
495497
);
496498
} else {
497499
// Save a copy of the original span for `curr` in case the `CoverageSpan` is changed
@@ -505,13 +507,6 @@ impl<'a> CoverageSpansGenerator<'a> {
505507
false
506508
}
507509

508-
/// Returns true if the curr span should be skipped because prev has already advanced beyond the
509-
/// end of curr. This can only happen if a prior iteration updated `prev` to skip past a region
510-
/// of code, such as skipping past a closure.
511-
fn prev_starts_after_next(&self, next_curr: &CoverageSpan) -> bool {
512-
self.prev().span.lo() > next_curr.span.lo()
513-
}
514-
515510
/// If `prev`s span extends left of the closure (`curr`), carve out the closure's span from
516511
/// `prev`'s span. (The closure's coverage counters will be injected when processing the
517512
/// closure's own MIR.) Add the portion of the span to the left of the closure; and if the span

0 commit comments

Comments
 (0)