As stated in the gcov documentation: When you use the -b option, your output looks like this: $ gcov -b tmp.c 90.00% of 10 source lines executed in file tmp.c 80.00% of 5 branches executed in file tmp.c 80.00% of 5 branches taken at least once in file tmp.c 50.00% of 2 calls executed in file tmp.c Creating tmp.c.gcov. When using gcov in practice: $ gcov -b tmp.c File `tmp.c' Lines executed:88.89% of 9 Branches executed:100.00% of 4 Taken at least once:75.00% of 4 Calls executed:66.67% of 3 tmp.c:creating `tmp.c.gcov' I consider this buggy behavior when compared to what the documentation states how this example should have been reported for the example. Perhaps this is what the project trucov is trying to work out. Kind Regards, Frodak