1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00

[llvm-cov] Remove some asserts in the html renderer (NFC)

These asserts are making tests fragile. The renderer does not enter an
invalid state when they fail, however, it may spit out a garbled
coverage report because the source text no longer matches the provided
coverage mapping.

Another follow-up to r281072.

llvm-svn: 281076
This commit is contained in:
Vedant Kumar 2016-09-09 18:44:40 +00:00
parent eb60ada52c
commit 7f60c8b334

View File

@ -473,21 +473,17 @@ void SourceCoverageViewHTML::renderLine(
unsigned LCol = 1;
auto Snip = [&](unsigned Start, unsigned Len) {
assert(Start + Len <= Line.size() && "Snippet extends past the EOL");
Snippets.push_back(Line.substr(Start, Len));
LCol += Len;
};
Snip(LCol - 1, Segments.empty() ? 0 : (Segments.front()->Col - 1));
for (unsigned I = 1, E = Segments.size(); I < E; ++I) {
assert(LCol == Segments[I - 1]->Col && "Snippet start position is wrong");
for (unsigned I = 1, E = Segments.size(); I < E; ++I)
Snip(LCol - 1, Segments[I]->Col - LCol);
}
// |Line| + 1 is needed to avoid underflow when, e.g |Line| = 0 and LCol = 1.
Snip(LCol - 1, Line.size() + 1 - LCol);
assert(LCol == Line.size() + 1 && "Final snippet doesn't reach the EOL");
// 2. Escape all of the snippets.