GCC Code Coverage Report


exclude-line-branch/
Coverage:
low: ≥ 0%
medium: ≥ 75.0%
high: ≥ 90.0%
Lines:
7 / 9, 5 excl
77.8%
Branches:
6 / 8, 8 excl
75.0%
Conditions:
6 / 8, 8 excl
75.0%
Functions:
1 / 1
100.0%

foo.cpp
Line Branch Condition Exec Source
1
2 5 int foo(int param) {
3
4/4
✓ Branch 2 → 3 taken 4 times.
✓ Branch 2 → 4 taken 1 time.
✓ Branch 3 → 4 taken 1 time.
✓ Branch 3 → 5 taken 3 times.
4/4
✓ Condition 0: Fully covered.
✓ Condition 1: Fully covered.
5 if (param == 0 || param == 1) { // 4/4 branches
4 2 return 1;
5 − } else if (param == 2 || param == 5) { // 3/4 branches, excluded, GCOV_EXCL_LINE
6 1 return 0;
7
1/2
✗ Branch 8 → 9 not taken.
✓ Branch 8 → 10 taken 2 times.
1/2
✗ True not covered.
2 } else if (param == 10) { // 1/2 branches
8 ✗ return 2;
9
1/2
✗ Branch 10 → 11 not taken.
✓ Branch 10 → 12 taken 2 times.
1/2
✗ True not covered.
2 } else if (param == 11) { // 1/2 branches
10 ✗ return 3;
11 }
12
13 // GCOV_EXCL_START
14 − if (param == 4) { // 2/2 branches, excluded
15 − return 1;
16 − } else if (param == 5) { // 1/2 branches, excluded
17 − return 0;
18 }
19 // GCOV_EXCL_STOP
20
21 1 return 0;
22 }
23