From: Richard Earnshaw <rearnsha@gcc.gnu.org>
To: Nick Clifton <nickc@redhat.com>
Cc: binutils@sources.redhat.com, gdb-patches@sources.redhat.com,
newlib@sources.redhat.com
Subject: Re: Dejagnu: use -isystem to include system header files.
Date: Thu, 18 Nov 2004 11:15:00 -0000 [thread overview]
Message-ID: <1100776504.23221.47.camel@pc960.cambridge.arm.com> (raw)
In-Reply-To: <419C6925.8010007@redhat.com>
On Thu, 2004-11-18 at 09:19, Nick Clifton wrote:
> Hi Richard,
>
> > Nick Clifton wrote:
> > 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.
> >
> > Unfortunately this patch causes regressions on the gcc builtins tests.
> > These tests rely on detecting newlib by looking for the definition of
> > _NEWLIB_VERSION being added by including limits.h; but the change in the
> > search order means that we now pick up a dummy version of newlib.h from
> > the gcc include directory.
> >
> > With your patch the search path has now become
> >
> > /work/rearnsha/gnu/egcs/gcc/include
> > /work/rearnsha/gnu/egcs/arm-elf/./newlib/targ-include
> > /home/rearnsha/gnusrc/egcs-cross/newlib/libc/include
> >
> > Whereas previously the gcc/include directory came later in the search.
>
> Hmmm, maybe newlib could provide the "l" variants of the builtin
> functions ? What are these functions anyway ?
Long double. I'm not sure if newlib wants to go that way, but if it
does it's probably a fair amount of work, especially since long double
means different things on different targets.
>
> Or maybe
> builtins-config.h could include say <stdio.h> rather than <limits.h> so
> that it would pickup the newlib version and not the gcc version ?
>
That might be OK for this case, but I'm not sure if will solve the
problem generally.
> Alternatively - can you think of another way of solving the problem that
> my patch was originally fixing ? Namely that several GCC and G++ tests
> fail because they include <limits.h> whilst in strict ANSI mode and this
> fails because the newlib limits.h uses the GNU extension #include_next
> directive. My first patch to solve this - by undefining __GNUC__ if
> __STRICT_ANSI__ was defined was rejected on the gcc lists.
I think the gcc/include directory must be added implicitly from the -B
option. It would appear that these add -isystem type include
directories, so it might be just a matter of ordering the -B and
-isystem options appropriately.
R.
next prev parent reply other threads:[~2004-11-18 11:15 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-17 17:47 Richard Earnshaw
2004-11-18 9:15 ` Nick Clifton
2004-11-18 11:15 ` Richard Earnshaw [this message]
2004-11-18 15:56 ` Nick Clifton
-- strict thread matches above, loose matches on Subject: below --
2004-11-18 20:07 Richard Earnshaw
2004-11-22 14:05 ` Nick Clifton
[not found] <m3pt2koaw8.fsf@redhat.com>
2004-11-11 14:22 ` Daniel Jacobowitz
2004-11-11 15:54 ` Nick Clifton
2004-11-11 17:00 ` Daniel Jacobowitz
2004-11-12 0:25 ` Hans-Peter Nilsson
2004-11-12 0:29 ` Daniel Jacobowitz
2004-11-12 1:30 ` Zack Weinberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1100776504.23221.47.camel@pc960.cambridge.arm.com \
--to=rearnsha@gcc.gnu.org \
--cc=binutils@sources.redhat.com \
--cc=gdb-patches@sources.redhat.com \
--cc=newlib@sources.redhat.com \
--cc=nickc@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox