Skip to content

Commit 33a83f8

Browse files
kkaeferclaude
andcommitted
Fix lcov line mismatch errors in coverage generation
Add error suppression flags to handle template-heavy C++ code: - --ignore-errors gcov,source,mismatch for lcov capture - --ignore-errors source for genhtml generation These flags resolve line number mismatches that occur with compiler optimizations and template instantiations in complex C++ codebases. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
1 parent 69c0ab2 commit 33a83f8

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

.github/workflows/build.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,9 @@ jobs:
118118
# Create coverage directory
119119
mkdir -p coverage
120120
121-
# Capture coverage data
122-
lcov --capture --directory build --output-file coverage/coverage_raw.info
121+
# Capture coverage data with error suppression for template-heavy code
122+
lcov --capture --directory build --output-file coverage/coverage_raw.info \
123+
--ignore-errors gcov,source,mismatch --gcov-tool gcov
123124
124125
# Remove system headers, vendor files, and test files from coverage
125126
lcov --remove coverage/coverage_raw.info '/usr/*' --output-file coverage/coverage.info
@@ -132,7 +133,9 @@ jobs:
132133
lcov --extract coverage/coverage.info '*/include/*' --output-file coverage/coverage.info
133134
134135
# Generate HTML report
135-
genhtml coverage/coverage.info --output-directory coverage/html --title "Earcut.hpp Coverage Report" --legend
136+
genhtml coverage/coverage.info --output-directory coverage/html \
137+
--title "Earcut.hpp Coverage Report" --legend \
138+
--ignore-errors source
136139
137140
# Show summary
138141
lcov --summary coverage/coverage.info

0 commit comments

Comments
 (0)