Add gcov code coverage instrumentation to C/C++ projects
Instrument C/C++ programs with gcov to measure test coverage.
gcc --coverage -o program source.c./program
# Creates .gcda files with execution dataText report:
gcov source.c
# Creates source.c.gcov with line-by-line coverageHTML report:
gcovr --html-details -o coverage.html--coverage (shorthand for -fprofile-arcs -ftest-coverage -lgcov)CFLAGS and LDFLAGSENABLE_COVERAGE ?= 0
ifeq ($(ENABLE_COVERAGE),1)
CFLAGS += --coverage
LDFLAGS += --coverage
endifoption(ENABLE_COVERAGE "Enable coverage" OFF)
if(ENABLE_COVERAGE)
add_compile_options(--coverage)
add_link_options(--coverage)
endif()--coverage to CFLAGS and LDFLAGSmake clean or rm -f *.gcda *.gcnomake ENABLE_COVERAGE=1 or cmake -DENABLE_COVERAGE=ONmake test or ./test_suitegcovr --html-details coverage.html --print-summaryText (.gcov files):
-: 0:Source:main.c
5: 42: int x = 10;
#####: 43: unused_code();5: = executed 5 times#####: = not executed-: = non-executableHTML: Interactive report with color-coded coverage
Target: 80%+ line coverage, 70%+ branch coverage
75f6956
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.