Path: utzoo!attcan!uunet!husc6!spdcc!ima!haddock!karl
From: karl@haddock.ISC.COM (Karl Heuer)
Newsgroups: comp.lang.c
Subject: Re: Leo's ANSI C Flame
Message-ID: <5041@haddock.ISC.COM>
Date: 12 Jul 88 01:10:02 GMT
References: <2258@sugar.UUCP> <225800042@uxe.cso.uiuc.edu>
Reply-To: karl@haddock.ima.isc.com (Karl Heuer)
Organization: Interactive Systems, Boston
Lines: 33

In article <225800042@uxe.cso.uiuc.edu> mcdonald@uxe.cso.uiuc.edu writes:
>I think you'll find that, when ANSI C becomes real, very, very few people
>will actually USE real ANSI C compilers.

I disagree.  I think they'll use Standard-conforming compilers, with
extensions (e.g. for POSIX) that don't collide with the Standard.

>They use the fixed version without trigraphs,

I don't think trigraphs should exist, but given their existence, I see no
reason to use a trigraph-ignoring compiler.  If I don't use strings that
contain trigraphs, it's a moot point.  If I (accidentally) do, then my code
isn't portable to real ANSI compilers, and fixing that is more important to me
than having the compiler silently do what I meant.

>with some sort of no-alias perversion,

Perhaps.  But if it's spelled "#pragma noalias", or even "__noalias", it might
still be ANSI.  (The jury is still out on this issue.)

>and with, probably, a bit of name-space pollution.

Whatever for?  It's simple enough to avoid.

>Most compilers will require a special command line switch to get full
>compatibility with the standard.

I think I'd make full ANSI the default, and have a special command-line option
to get bug-for-bug compatibility (e.g. Reiser cpp).  Perhaps you mean that
most compilers will require a special option to disable all extensions and
compile only strictly conforming programs?

Karl W. Z. Heuer (ima!haddock!karl or karl@haddock.isc.com), The Walking Lint