1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-15 20:46:37 +08:00

CTest: Handle non-coverage lines in gcov files

This implements a TODO in gcov file handling.
This commit is contained in:
Tobias Ellinghaus
2020-05-29 16:08:47 +02:00
parent 9656a0f55a
commit ed6d20ddcb

View File

@@ -1215,8 +1215,6 @@ int cmCTestCoverageHandler::HandleGCovCoverage(
while (cmSystemTools::GetLineFromStream(ifile, nl)) {
cnt++;
// TODO: Handle gcov 3.0 non-coverage lines
// Skip empty lines
if (nl.empty()) {
continue;
@@ -1227,6 +1225,14 @@ int cmCTestCoverageHandler::HandleGCovCoverage(
continue;
}
// Handle gcov 3.0 non-coverage lines
// non-coverage lines seem to always start with something not
// a space and don't have a ':' in the 9th position
// TODO: Verify that this is actually a robust metric
if (nl[0] != ' ' && nl[9] != ':') {
continue;
}
// Read the coverage count from the beginning of the gcov output
// line
std::string prefix = nl.substr(0, 12);