fix: Make span_to_lines return at least one line #225
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While running
rustc
's lintdoc tests, I encountered a corner case withSourceMap::span_to_lines
, where it would return noLineInfo
when it was passed the range0..0
, which ultimately caused a panic down the line. To address this, I made it sospan_to_lines
would only stop including lines when the range end was less than aLineInfo
's start_byte (end < line_info.start_byte
). This seems to be the correct fix, as we use its negation (end >= line_info.start_byte
) when determining what line a byte falls on.