https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105171
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |WONTFIX
Status|UNCONFIRMED |RESOLVED
--- Comment #17 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
The stamp value is used to synchronize
note and data files and to synchronize merging within a data
file. It need not be an absolute time stamp, merely a ticker that
increments fast enough and cycles slow enough to distinguish
different compile/run/compile cycles.
So unlinking the da file is ok as it will be merged (remove data) correctly
anyways.
I think you are reading the comment in coverage.cc incorrectly.
/* Only remove the da file, if we're emitting coverage code and
cannot uniquely stamp it. If we can stamp it, libgcov will DTRT. */
Basically the unlink is there just in case we can't uniquely stamp the da file
and do another compile that was already there. That is it will be emptied out
when the program is run with a different timestamp; removing the file while
compiling is just in case so you don't get mix matched results.
Again there is no need to fix this.