https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82633
--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> --- I don't think so Richi: documentation says: The execution count is ‘-’ for lines containing no code. And for: $ cat removed.cpp class MyClass2 { public: void iterate() { a = 5; } int a; }; void foo() { } int main() { MyClass2 a; return 0; } -: 1:class MyClass2 -: 2:{ -: 3: public: -: 4: void iterate() { a = 5; } -: 5: -: 6: int a; -: 7:}; -: 8: #####: 9:void foo() -: 10:{ #####: 11:} -: 12: 1: 13:int main() -: 14:{ -: 15: MyClass2 a; 1: 16: return 0; -: 17:} Here we're not consistent.