http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53463
Bug #: 53463
Summary: [4.8 Regression]: system header not recognized,
yielding warnings about long long preprocessor
constant
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Keywords: diagnostic, rejects-valid
Severity: normal
Priority: P3
Component: preprocessor
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
Host: x86_64-unknown-linux-gnu
Target: cris-axis-elf
Created attachment 27483
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27483
First test-case failing, preprocessed.
These below tests previously passed, now they fails.
The svn revision r187587 exposed or caused these regressions. Since then they
fail as follows:
Running /tmp/bad0516b/gcc/gcc/testsuite/gcc.dg/cpp/cpp.exp ...
FAIL: gcc.dg/cpp/19990407-1.c (test for excess errors)
WARNING: gcc.dg/cpp/19990407-1.c compilation failed to produce executable
FAIL: gcc.dg/cpp/paste12.c (test for excess errors)
FAIL: gcc.dg/cpp/strp1.c (test for excess errors)
WARNING: gcc.dg/cpp/strp1.c compilation failed to produce executable
FAIL: gcc.dg/cpp/strp2.c (test for excess errors)
WARNING: gcc.dg/cpp/strp2.c compilation failed to produce executable
...
Running /tmp/bad0516b/gcc/gcc/testsuite/gcc.dg/dg.exp ...
...
FAIL: gcc.dg/struct-ret-libc.c (test for excess errors)
WARNING: gcc.dg/struct-ret-libc.c compilation failed to produce executable
...
Running /tmp/bad0516b/gcc/gcc/testsuite/g++.dg/dg.exp ...
...
FAIL: g++.dg/warn/format1.C -std=gnu++98 (test for excess errors)
FAIL: g++.dg/warn/format1.C -std=gnu++11 (test for excess errors)
FAIL: g++.dg/warn/huge-val1.C -std=gnu++98 (test for excess errors)
...
Running /tmp/bad0516b/gcc/gcc/testsuite/gfortran.dg/dg.exp ...
FAIL: gfortran.dg/bind_c_usage_16.f03 -O0 (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -O0 compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_16.f03 -O1 (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -O1 compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_16.f03 -O2 (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -O2 compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_16.f03 -O3 -fomit-frame-pointer (test for
excess errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -O3 -fomit-frame-pointer compilation
failed to produce executable
FAIL: gfortran.dg/bind_c_usage_16.f03 -O3 -fomit-frame-pointer -funroll-loops
(test for excess errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -O3 -fomit-frame-pointer
-funroll-loops compilation failed to produce execut\
able
FAIL: gfortran.dg/bind_c_usage_16.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions (test for excess\
errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions compilation f\
ailed to produce executable
FAIL: gfortran.dg/bind_c_usage_16.f03 -O3 -g (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -O3 -g compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_16.f03 -Os (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_16.f03 -Os compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_24.f90 -O0 (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -O0 compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_24.f90 -O1 (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -O1 compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_24.f90 -O2 (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -O2 compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_24.f90 -O3 -fomit-frame-pointer (test for
excess errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -O3 -fomit-frame-pointer compilation
failed to produce executable
FAIL: gfortran.dg/bind_c_usage_24.f90 -O3 -fomit-frame-pointer -funroll-loops
(test for excess errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -O3 -fomit-frame-pointer
-funroll-loops compilation failed to produce execut\
able
FAIL: gfortran.dg/bind_c_usage_24.f90 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions (test for excess\
errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions compilation f\
ailed to produce executable
FAIL: gfortran.dg/bind_c_usage_24.f90 -O3 -g (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -O3 -g compilation failed to produce
executable
FAIL: gfortran.dg/bind_c_usage_24.f90 -Os (test for excess errors)
WARNING: gfortran.dg/bind_c_usage_24.f90 -Os compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_3.f03 -O0 (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -O0 compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_3.f03 -O1 (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -O1 compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_3.f03 -O2 (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -O2 compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_3.f03 -O3 -fomit-frame-pointer (test for
excess errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -O3 -fomit-frame-pointer
compilation failed to produce executable
FAIL: gfortran.dg/c_funloc_tests_3.f03 -O3 -fomit-frame-pointer -funroll-loops
(test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -O3 -fomit-frame-pointer
-funroll-loops compilation failed to produce execu\
table
FAIL: gfortran.dg/c_funloc_tests_3.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions (test for exces\
s errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions compilation \
failed to produce executable
FAIL: gfortran.dg/c_funloc_tests_3.f03 -O3 -g (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -O3 -g compilation failed to
produce executable
FAIL: gfortran.dg/c_funloc_tests_3.f03 -Os (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_3.f03 -Os compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_4.f03 -O0 (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -O0 compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_4.f03 -O1 (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -O1 compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_4.f03 -O2 (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -O2 compilation failed to produce
executable
FAIL: gfortran.dg/c_funloc_tests_4.f03 -O3 -fomit-frame-pointer (test for
excess errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -O3 -fomit-frame-pointer
compilation failed to produce executable
FAIL: gfortran.dg/c_funloc_tests_4.f03 -O3 -fomit-frame-pointer -funroll-loops
(test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -O3 -fomit-frame-pointer
-funroll-loops compilation failed to produce execu\
table
FAIL: gfortran.dg/c_funloc_tests_4.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions (test for exces\
s errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions compilation \
failed to produce executable
FAIL: gfortran.dg/c_funloc_tests_4.f03 -O3 -g (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -O3 -g compilation failed to
produce executable
FAIL: gfortran.dg/c_funloc_tests_4.f03 -Os (test for excess errors)
WARNING: gfortran.dg/c_funloc_tests_4.f03 -Os compilation failed to produce
executable
FAIL: gfortran.dg/c_ptr_tests_8.f03 -O0 (test for excess errors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -O0 compilation failed to produce
executable
FAIL: gfortran.dg/c_ptr_tests_8.f03 -O1 (test for excess errors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -O1 compilation failed to produce
executable
FAIL: gfortran.dg/c_ptr_tests_8.f03 -O2 (test for excess errors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -O2 compilation failed to produce
executable
FAIL: gfortran.dg/c_ptr_tests_8.f03 -O3 -fomit-frame-pointer (test for excess
errors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -O3 -fomit-frame-pointer compilation
failed to produce executable
FAIL: gfortran.dg/c_ptr_tests_8.f03 -O3 -fomit-frame-pointer -funroll-loops
(test for excess errors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -O3 -fomit-frame-pointer -funroll-loops
compilation failed to produce executab\
le
FAIL: gfortran.dg/c_ptr_tests_8.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions (test for excess e\
rrors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions compilation fai\
led to produce executable
FAIL: gfortran.dg/c_ptr_tests_8.f03 -O3 -g (test for excess errors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -O3 -g compilation failed to produce
executable
FAIL: gfortran.dg/c_ptr_tests_8.f03 -Os (test for excess errors)
WARNING: gfortran.dg/c_ptr_tests_8.f03 -Os compilation failed to produce
executable
FAIL: gfortran.dg/c_size_t_test.f03 -O0 (test for excess errors)
WARNING: gfortran.dg/c_size_t_test.f03 -O0 compilation failed to produce
executable
FAIL: gfortran.dg/c_size_t_test.f03 -O1 (test for excess errors)
WARNING: gfortran.dg/c_size_t_test.f03 -O1 compilation failed to produce
executable
FAIL: gfortran.dg/c_size_t_test.f03 -O2 (test for excess errors)
WARNING: gfortran.dg/c_size_t_test.f03 -O2 compilation failed to produce
executable
FAIL: gfortran.dg/c_size_t_test.f03 -O3 -fomit-frame-pointer (test for excess
errors)
WARNING: gfortran.dg/c_size_t_test.f03 -O3 -fomit-frame-pointer compilation
failed to produce executable
FAIL: gfortran.dg/c_size_t_test.f03 -O3 -fomit-frame-pointer -funroll-loops
(test for excess errors)
WARNING: gfortran.dg/c_size_t_test.f03 -O3 -fomit-frame-pointer -funroll-loops
compilation failed to produce executab\
le
FAIL: gfortran.dg/c_size_t_test.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions (test for excess e\
rrors)
WARNING: gfortran.dg/c_size_t_test.f03 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions compilation fai\
led to produce executable
FAIL: gfortran.dg/c_size_t_test.f03 -O3 -g (test for excess errors)
WARNING: gfortran.dg/c_size_t_test.f03 -O3 -g compilation failed to produce
executable
FAIL: gfortran.dg/c_size_t_test.f03 -Os (test for excess errors)
WARNING: gfortran.dg/c_size_t_test.f03 -Os compilation failed to produce
executable
The messages in the logfiles are similar:
Executing on host: /tmp/bad0516b/gccobj/gcc/xgcc -B/tmp/bad0516b/gccobj/gcc/
/tmp/bad0516b/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c
-fno-diagnostics-show-caret -ansi -pedantic-errors -isystem
/tmp/bad0516b/gccobj/cris-elf/./newlib/targ-include -isystem
/tmp/bad0516b/gcc/newlib/libc/include
-B/tmp/bad0516b/gccobj/cris-elf/./libgloss/cris/
-L/tmp/bad0516b/gccobj/cris-elf/./libgloss/cris
-L/tmp/bad0516b/gcc/libgloss/cris -B/tmp/bad0516b/gccobj/cris-elf/./newlib/
-L/tmp/bad0516b/gccobj/cris-elf/./newlib -sim3 -lm -o ./19990407-1.exe
(timeout = 300)
/tmp/bad0516b/gcc/newlib/libc/include/machine/_default_types.h:98:39: error:
use of C99 long long integer constant [-Wlong-long]^M
compiler exited with status 1
output is:
/tmp/bad0516b/gcc/newlib/libc/include/machine/_default_types.h:98:39: error:
use of C99 long long integer constant [-Wlong-long]^M
FAIL: gcc.dg/cpp/19990407-1.c (test for excess errors)
Excess errors:
/tmp/bad0516b/gcc/newlib/libc/include/machine/_default_types.h:98:39: error:
use of C99 long long integer constant [-Wlong-long]
WARNING: gcc.dg/cpp/19990407-1.c compilation failed to produce executable
I'm attaching 19990407-1.i and _default_types.h. From what I can see, the
latter is considered a system header by the preprocessor just as before, still
a warning is now emitted that wasn't before. A -Wno-system-headers has no
effect.
According to -v, the preprocessor is invoked as "/tmp/bad0516b/gccobj/gcc/cc1
-E -quiet -v -iprefix /tmp/bad0516b/gccobj/gcc/../lib/gcc/cris-elf/4.8.0/
-isystem /tmp/bad0516b/gccobj/gcc/include -isystem
/tmp/bad0516b/gccobj/gcc/include-fixed -isystem
/tmp/bad0516b/gccobj/cris-elf/./newlib/targ-include -isystem
/tmp/bad0516b/gcc/newlib/libc/include
/tmp/bad0516b/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c -melf -ansi
-pedantic-errors -fno-diagnostics-show-caret -fpch-preprocess -o 19990407-1.i"
which yields:
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/cris-elf/4.8.0/include"
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/cris-elf/4.8.0/include-fixed"
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/cris-elf/4.8.0/../../../../cris-elf/sys-include"
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/cris-elf/4.8.0/../../../../cris-elf/include"
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/../../lib/gcc/cris-elf/4.8.0/include"
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/../../lib/gcc/cris-elf/4.8.0/include-fixed"
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/../../lib/gcc/cris-elf/4.8.0/../../../../cris-elf/sys-include"
ignoring nonexistent directory
"/tmp/bad0516b/gccobj/gcc/../lib/gcc/../../lib/gcc/cris-elf/4.8.0/../../../../cris-elf/include"
#include "..." search starts here:
#include <...> search starts here:
/tmp/bad0516b/gccobj/gcc/include
/tmp/bad0516b/gccobj/gcc/include-fixed
/tmp/bad0516b/gccobj/cris-elf/./newlib/targ-include
/tmp/bad0516b/gcc/newlib/libc/include
End of search list.
/tmp/bad0516b/gcc/newlib/libc/include/machine/_default_types.h:98:39: error:
use of C99 long long integer constant [-Wlong-long]
Author of the patch in that revision is CC:ed.