I read about gcov for the first time in the Tor documentation , which says :
'-' before a line means
that the compiler generated no code for that line. '######' means that the
line was never reached. Lines with numbers were called that number of times.
There is not exactly a Tor test suite, and by the above description, it looks like gcov tests line coverage during compilation.
Other references that I find about gcov suggest that it is used to detect which lines have been hit during execution (whether during normal use or a test suite). But they do not make that very clear. What, after all, is the function of gcov?