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.