https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96010
Bug ID: 96010 Summary: std::make_tuple called over multiple lines reports lines as "not run" Product: gcc Version: 10.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: gcov-profile Assignee: unassigned at gcc dot gnu.org Reporter: loximann at gmail dot com CC: marxin at gcc dot gnu.org Target Milestone: --- I hope that the gcov file is self-explanatory: -: 0:Source:coverage_test.cpp -: 0:Graph:coverage_test.gcno -: 0:Data:coverage_test.gcda -: 0:Runs:1 -: 1:#include <tuple> -: 2: 1: 3:auto g(int, int, int) -: 4:{ 1: 5: return 0; -: 6:} -: 7: 1: 8:auto f() -: 9:{ 1: 10: return g(1, -: 11: 2, 1: 12: 3); -: 13:} -: 14: 1: 15:auto h() -: 16:{ #####: 17: return std::make_tuple(1, #####: 18: 2, 2: 19: 3); -: 20:} -: 21: 1: 22:int main(int argc, char *argv[]) { 1: 23: f(); 1: 24: h(); 1: 25: return 0; -: 26:} I do not know if this happens for other functions, but with that simple dummy function the lines were annotated correctly.