On Wed, Jan 15, 2025 at 4:44 PM Tom Lane <t...@sss.pgh.pa.us> wrote: > With this, I got plausible-looking html output (I didn't vet it > in detail, but a couple of spot checks looked sane). > > I'm curious whether a similar workaround will help with the > Debian toolchain.
Looks like it will. I was able to get the lcov git master branch's tip to produce a Postgres coverage report (same compiler version and OS as before). Unfortunately, I had to use an even grottier incantation to get this to work: make -s coverage-html GENHTML_FLAGS="-q --legend --ignore-errors unmapped,unmapped,empty,empty,inconsistent,inconsistent,corrupt,corrupt,range,range" LCOVFLAGS="--ignore-errors empty,empty,negative,negative,inconsistent,inconsistent" (As you can imagine, I came up with this through pure trial and error.) The final report seems fine, though -- at least on a quick look. The number of times that we actually relied on the suppressions seems to have been fairly limited, in the end: Message summary: 11 ignore messages: empty: 1 inconsistent: 3 negative: 7 Overall coverage rate: source files: 1527 lines.......: 78.7% (396815 of 504471 lines) functions...: 86.3% (23710 of 27474 functions) Note also: I had to install gcov to /usr/local this time. I couldn't get away with installing it to my home directory (something about Perl not being able to see lcovutil.pm in @INC). -- Peter Geoghegan