Macro names imbedded in pp-numbers [repost]

Doug Gwyn gwyn at smoke.BRL.MIL
Sun Nov 19 12:10:52 AEST 1989


In article <1653 at crdos1.crd.ge.COM> davidsen at crdos1.UUCP (bill davidsen) writes:
>I don't think this will bring a huge number of programs crashing down,

It won't.  Several committee members "grepped" for such usage in existing
code to see if it would be a significant factor.  For example, the whole
source code for UNIX was scanned.  We determined that it would not be a
significant problem for existing source code.

>but it does look like a case of a committee whose majority is
>vendors (or was during the two years I was there) choosing a behavior
>which has no benefit other than to simplify the writing of the parser.

That's a significant reason for this particular feature of the
specification.  However, you seem to be implying that selfish
considerations by vendors are acting to the detriment of users.
There were a significant number of user-oriented X3J11 committee
members (including myself), and of course most vendor representatives
also function as C users themselves.  We bought into the notion of
simplicitiy in this case as being of value to programmers as well as
implementors.  Only ignorant programmers might have a problem, but
that is true of very many aspects of C; C is not a language for those
who refuse to learn before doing.  We expect that this particular
quirk will be taught in C textbooks much as the need for () around
parameters in macro definitions already is taught.



More information about the Comp.std.c mailing list