This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [jsm28@cam.ac.uk: c/945: Preprocessor errors for long longinteger constants under wrong conditions]
- To: Zack Weinberg <zackw at Stanford dot EDU>
- Subject: Re: [jsm28@cam.ac.uk: c/945: Preprocessor errors for long longinteger constants under wrong conditions]
- From: "Joseph S. Myers" <jsm28 at cam dot ac dot uk>
- Date: Sat, 2 Dec 2000 00:07:21 +0000 (GMT)
- cc: Neil Booth <neilb at earthling dot net>, <gcc at gcc dot gnu dot org>
On Fri, 1 Dec 2000, Zack Weinberg wrote:
> I'd like to see all the effects of the various -std switches and
> -pedantic thoroughly documented.
The node "Standards" I added a few weeks ago was an attempt to start this.
People familiar with the relevant standards should add information about
the standards for C++, Objective C and Java that GCC aims to follow.
From a mail of mine to Neil:
The meaning of -pedantic with a strict standard version is clear. It
would make no sense for -pedantic at -std=gnu89 to mean "warn for
violations of GNU89 constraints", because the extensions are part of GNU89
rather than constraint violations in it - so it has to mean to warn for
what are constraint violations or syntax errors according to the base
(unextended) standard.
The definition of -pedantic is constrained to be consistent with existing
uses expecting it to be useful without -ansi - GCC itself builds with
-pedantic without -ansi - even though the definition makes the most sense
in a strict standard mode and it has evolved uneasily from an option put
in by the then maintainer (RMS?) with a strongly expressed view that it
was useless (and that portability other than to the GNU system with the
GNU compiler was going to be useless) and only to placate people to one
that is actually useful for the present maintainers who care more about
portability.
--
Joseph S. Myers
jsm28@cam.ac.uk