🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.std.c
Article #5661

Re: __STDC__ and non-conforming ANSI C compilers

#5661
From: Mark Nagel
Date: Sun, 22 Jan 1989 00:45
39 lines
2911 bytes
In article <406@jhereg.Jhereg.MN.ORG>, mark@jhereg (Mark H. Colburn) writes:
|
|The problem that others (such as Doug Gwyn) are looking at is does it
|really understand all of the things that you mentioned, such as function
|prototypes, #, ##, unary plus, etc.?  What if it just understands function
|prototypes, const, volatile and forward structure references?  I would bet
|there there are going to be vendors out there that decide that that is
|going to be good enough to define __STDC__.  As a developer, I'm going to
|be very annoyed when my "maximally portable application" is compiled on 
|their system and fails due to a syntax error when it encounters a unary
|plus.

This is what I don't understand -- why should *you* be annoyed because
your conforming program fails to compile on a fake ANSI
implementation?  For years now we've heard "if it does/doesn't do so
and so, then it ain't a C compiler."  Along with this was the implicit
message that the compiler should be replaced with one that *is*
conforming.  Why can't it be the same now?  I realize that for some
people, there is only one choice.  But in general, it should be
possible to simply avoid purchasing/using a compiler that is broken in
favor of one that is capable of compiling conforming programs.  Why
should users adjust for the compiler writers' benefit?

|Basically, what I think (I won't speak for any others) is that the only
|system that is close enough to the standard to define __STDC__ is one that
|is fully conformant.  

Exactly.  So don't even worry about what happens when __STDC__ is
defined when it shouldn't be.  That's the compiler customer's problem,
not the program writer's.  I know, I know, you're all saying, "Join us
here in the real world, Mark."  But this is exactly what the standard
is supposed to do -- give *everyone* the same base of known language
features and capabilities.  I have no sympathy for someone who
continues to use a faulty compiler when other choices exist (e.g. Gnu,
when it's done).

Mark Nagel @ UC Irvine, Dept of Info and Comp Sci
ARPA: nagel@ics.uci.edu              | The world is coming to an end.
UUCP: {sdcsvax,ucbvax}!ucivax!nagel  | Please log off.
Technical Details
Message-ID: <5025@paris.ics.uci.edu>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!lll-winken!ncis.llnl.gov!helios.ee.lbl.gov!nosc!ucsd!orion.cf.uci.edu!uci-ics!nagel
References: <9391@smoke.BRL.MIL> <8731@megaron.arizona.edu> <9405@smoke.BRL.MIL> <9422@smoke.BRL.MIL> <2820@ficc.uu.net> <320@microsoft.UUCP> <406@jhereg.Jhereg.MN.ORG>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!lll-winken!ncis.llnl.gov!helios.ee.lbl.gov!nosc!ucsd!orion.cf.uci.edu!uci-ics!nagel
From: nagel@paris.ics.uci.edu (Mark Nagel)
Newsgroups: comp.std.c
Subject: Re: __STDC__ and non-conforming ANSI C compilers
Message-ID: <5025@paris.ics.uci.edu>
Date: 22 Jan 89 00:45:17 GMT
References: <9391@smoke.BRL.MIL> <8731@megaron.arizona.edu> <9405@smoke.BRL.MIL> <9422@smoke.BRL.MIL> <2820@ficc.uu.net> <320@microsoft.UUCP> <406@jhereg.Jhereg.MN.ORG>
Sender: news@paris.ics.uci.edu
Reply-To: nagel@paris.ics.uci.edu (Mark Nagel)
Organization: University of California, Irvine - Dept of ICS
Lines: 39
In-reply-to: mark@jhereg.Jhereg.MN.ORG (Mark H. Colburn)