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?

Reply via email to