Also, there seems to be a find-and-replace mistake in libgcov-driver.c #if !GCOV_LOCKED /* summary for all instances of program. */ struct gcov_summary *cs_all; #endif
cs_all is declared within the !GCOV_LOCKED macro but later all references have been changed to "all", not "cs_all" #if !GCOV_LOCKED all = &all_prg->ctrs[t_ix]; and all_prg no longer has some of the members. Was the !GCOV_LOCKED path not tested for the recent changes? Thanks, David On Tue, Jun 5, 2018 at 8:28 PM David Edelsohn <dje....@gmail.com> wrote: > > Martin, > > With your recent patch, I receive the following failure building > libgcov-driver-system.c > > In file included from > /nasfarm/edelsohn/src/src/gcc/../libgcc/libgcov-driver.c:322:0: > /nasfarm/edelsohn/src/src/gcc/../libgcc/libgcov-driver-system.c: In > function 'char* replace_filename_variables(char*)': > /nasfarm/edelsohn/src/src/gcc/../libgcc/libgcov-driver-system.c:193:61: > error: 'mempcpy' was not declared in this scope > buffer_ptr = (char *)mempcpy (buffer_ptr, filename, start); > > mempcpy is a GLIBC extension and not defined in POSIX. There is no > libiberty implementation. Please avoid use of GLIBC-specific > functions. > > Thanks, David