https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105171

Jason A. Donenfeld <jason at zx2c4 dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|plugins                     |driver

--- Comment #1 from Jason A. Donenfeld <jason at zx2c4 dot com> ---
Hi Andrew - I see you just changed the component to "plugins". That's partially
right, but partially wrong too, because this also affects components of gcc
itself. In particular, from gcc/coverage.c:

----------------------------------------------------------------------
void
coverage_finish (void)
{
  if (bbg_file_name && gcov_close ())
    unlink (bbg_file_name);

  if (!flag_branch_probabilities && flag_test_coverage
      && (!local_tick || local_tick == (unsigned)-1))
    /* Only remove the da file, if we're emitting coverage code and
       cannot uniquely stamp it.  If we can stamp it, libgcov will DTRT.  */
    unlink (da_file_name);
----------------------------------------------------------------------

Here we have two chances for local_tick to wrap around to 0 or to -1, when
perhaps that wasn't the intention.

So I'm going to set the component field back to driver, where the bug lives, as
this clearly affects multiple things (coverage, plugins, maybe other stuff I
don't know).

Reply via email to