Dejagnu: use -isystem to include system header files.
Fri Nov 12 00:29:00 GMT 2004
Yay cross-posting! I helped by adding a list!
On Thu, 11 Nov 2004, Daniel Jacobowitz wrote:
> On Thu, Nov 11, 2004 at 11:58:15AM +0000, Nick Clifton wrote:
> > Hi Guys,
> > I am going to check in the attached patch which imports a fix from
> > the mainline dejagnu sources. This fix is to use the -isystem
> > switch to include system header files rather than -I. This fixes
> > several unexpected failures in the GCC and G++ testsuites where the
> > newlib system header file <limits.h> is included in strict ANSI
> > mode, and the compiler barfs on the #include_next directive.
> This patch will break in-tree testing for yet other targets.
But presumably only for old broken systems: no non-obsolete
system should need to fake an extern "C" as is done when *not*
defining NO_IMPLICIT_EXTERN_C; they should all be C++-aware.
> I believe
> arm-elf was affected - anything which does not set
Bug in the arm-elf port: it should define NO_IMPLICIT_EXTERN_C.
Sounds like there's a bug in the -isystem interaction with
NO_IMPLICIT_EXTERN_C too. (Like, always assume
NO_IMPLICIT_EXTERN_C for all passed -isystem options aka.
never fake 'extern "C"' for path-options given on the command
> I discussed this with H-P on the dejagnu list
> but never figured out a solution, but...
Wot, there was no closure? For the record, the original email:
(the reply was in 2002-11). Our later conversation is at
I thought we had closure at
or at least at
but now that you bring it up, I just think it's more of a bug in
the arm-elf port and non-NO_IMPLICIT_EXTERN_C targets should be
xfailed for applicable tests. ;-)
> > * lib/libgloss.exp (newlib_include_flags): Use -isystem, not -I.
> > (libio_include_flags, g++_include_flags, libstdc++_include_flags,
> > winsup_include_flags): Ditto.
> ... I strongly suspect that g++ and winsup should be left out.
Mh, a bit spurious. Only actual C++ include directories could
be badly affected by non-NO_IMPLICIT_EXTERN_C-ness.
More information about the Newlib