This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: c/2677: Need something to #ifdef on when -pedantic/-pedantic-errors


The following reply was made to PR c/2677; it has been noted by GNATS.

From: "Zack Weinberg" <zackw@stanford.edu>
To: "Ronald F. Guilmette" <rfg@monkeys.com>
Cc: "Joseph S. Myers" <jsm28@cam.ac.uk>, gcc-gnats@gcc.gnu.org,
   gcc-bugs@gcc.gnu.org
Subject: Re: c/2677: Need something to #ifdef on when -pedantic/-pedantic-errors
Date: Sat, 28 Apr 2001 14:07:38 -0700

 On Sat, Apr 28, 2001 at 01:27:03PM -0700, Ronald F. Guilmette wrote:
 > 
 > The notion of ``system headers'' comes from the C standard itself and it
 > refers to header files that are part and parcel of the LANGUAGE IMPLEMENTA-
 > TION.  The ANSI C standard allows such files to contain any arbitrary
 > gibberish whatsoever (and in fact, they may not exist at all) as long as 
 > they APPEAR to exist and as long as they APPEAR to export the required
 > macros and functions and as long as whatever they do contain (if they
 > do in fact exist as separately identifiable text files at all) does not
 > cause the compiler to choke.
 > 
 > Header files which are parts of third-party packages clearly do not qualify
 > as being a part of the LANGUAGE IMPLEMENTATION, and they SHOULD NOT be
 > confused with such.
 
 In point of fact, GCC considers any header found in /usr/include or
 other specially designated place (at configuration time, or with
 -isystem) as a "system header."  GCC's idea of a "system header" does
 not match that found in the C standard.  It means only that all
 warnings (except those triggered by #warning) are suppressed.
 
 Whether or not this is the ideal behavior, I have no opinion.  I will
 point out, however, that a casual user of GCC likely does not have
 write access to /usr/include, so any warnings evoked by any header in
 there are equally irritating and equally unavoidable.
 
 Independently of this, I think that a __PEDANTIC__ predefine would be
 a good idea.  It's easy to add - just another chunk of line noise in
 gcc.c - and would be at least as useful as some of the predefines we
 already have.
 
 zw


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]