https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64123
--- Comment #12 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
BTW the following fix the issue for me
Index: gcov-io.c
===================================================================
--- gcov-io.c (revision 220230)
+++ gcov-io.c (working copy)
@@ -39,7 +39,7 @@ static void gcov_allocate (unsigned);
/* Optimum number of gcov_unsigned_t's read from or written to disk. */
#define GCOV_BLOCK_SIZE (1 << 10)
-GCOV_LINKAGE ATTRIBUTE_HIDDEN struct gcov_var
+struct gcov_var
{
FILE *file;
gcov_position_t start; /* Position of first byte of block */
indeed we are mixing up the gcov-io routines from wrong unit via wrong mergers.
I suppose either we need to pass the io routine as parameter by pointer or
modify gcov_io to actually contain indexes into merge routine list instead of
direct pointers?