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

            Bug ID: 88728
           Summary: Boostrap with -Og fails with garbled file
                    libgcov-profiler.i
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: preprocessor
          Assignee: unassigned at gcc dot gnu.org
          Reporter: tkoenig at gcc dot gnu.org
  Target Milestone: ---

Created attachment 45360
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45360&action=edit
Generated libgcov-profiler.i file

I tried booting with -Og, with a strange result.

Setting CFLAGS and CXXFLAGS to "-Og -save-temps" and running
with a recent trunk resulted in

RMAT -DHAVE_CC_TLS  -DUSE_TLS -o _gcov_indirect_call_topn_profiler.o -MT
_gcov_indirect_call_topn_profiler.o -MD -MP -MF
_gcov_indirect_call_topn_profiler.dep -DL_gcov_indirect_call_topn_profiler -c
../../../ggdb3/libgcc/libgcov-profiler.c
../../../ggdb3/libgcc/libgcov-profiler.c:352:1: Warnung: Datendefinition hat
keinen Typ oder Speicherklasse
  352 | #endif
      | ^~~~
../../../ggdb3/libgcc/libgcov-profiler.c:352:1: Warnung: »int« ist Standardtyp
in Deklaration von »alue« [-Wimplicit-int]
../../../ggdb3/libgcc/libgcov-profiler.c:352:7: Fehler: expected identifier or
»(« before numeric constant
  352 | #endif
      |       ^
../../../ggdb3/libgcc/libgcov-profiler.c:353:23: Fehler: expected declaration
specifiers or »...« before »&« token
  353 | 
      |                       ^
../../../ggdb3/libgcc/libgcov-profiler.c:353:37: Fehler: expected declaration
specifiers or »...« before numeric constant
  353 | 
      |                                     ^
../../../ggdb3/libgcc/libgcov-profiler.c:353:40: Fehler: expected declaration
specifiers or »...« before numeric constant
  353 | 
      |                                        ^
../../../ggdb3/libgcc/libgcov-profiler.c:354:1: Fehler: expected identifier or
»(« before »}« token

The generated file libgcov-profiler.i (attached) is quite garbled:

# 159 "../../../ggdb3/libgcc/libgcov-profiler.c"
void
__gcov_one_value_profiler_atomic (gcov_type *counters, gcov_type value)
{
  __gcov_one_value_profiler_body (counters, value, 1);
}
omic)
    __atomic_fetch_add (&counters[2], 1, 0);
  else
    counters[2]++;
}
= value;

Reply via email to