Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!1.eu.feeder.erje.net!newsfeed.fsmpi.rwth-aachen.de!newsfeed.straub-nv.de!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.c Subject: Re: A Note on Readability Date: Wed, 20 May 2015 17:36:47 -0700 Organization: None to speak of Lines: 33 Message-ID: <87pp5u22cg.fsf@kst-u.example.com> References: <1d72d1ba-3317-4725-bedd-698843ca9c35@googlegroups.com> <0f9297b6-2d4c-4d12-8e97-470027248f72@googlegroups.com> <85343d47-257a-4403-9672-40991134ba13@googlegroups.com> <55587201.6548218@news.xs4all.nl> <67b5daac-4378-458c-a6d0-fbf4e20d8340@googlegroups.com> <29103fb2-ce27-4c7f-a189-8ff170f5e246@googlegroups.com> <555A2A66.1040201@verizon.net> <70adeda1-3b83-4a96-b57b-59ac062f0bc6@googlegroups.com> <87oalg2zq0.fsf@kst-u.example.com> <792ce9c8-075c-4b19-8a2f-ac75dab1a178@googlegroups.com> <87y4kj1667.fsf@kst-u.example.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: mx02.eternal-september.org; posting-host="9be37d943435275679235b07c7947eef"; logging-data="22680"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/1JnuapM1OfruPBh26mKTx" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) Cancel-Lock: sha1:iY5i+y95nu7yV18xBhwYkO1d4lg= sha1:o7cfDmGvfTNoR9UblmT5sNCSLQc= Xref: csiph.com comp.lang.c:62375 Les Cargill writes: > Keith Thompson wrote: >> Les Cargill writes: >> [...] >>> You *CAN* reuse reserved identifiers by: >>> - macro substitution. >>> - the use of the "static" keyword >> >> You cannot safely reuse identifiers starting with two underscores, >> or with an underscore and an uppercase letter. > > Just to be clear, it's a terrible idea. But it's not difficult to do > just about any sort of ... horrible thing with macros. > >> They may be defined >> by the standard library as macros, and a call to a standard library >> function might use a macro that depends on such an identifier. >> > > It depends on where you do it. At the system build level, it'd be much > more dangerous, but at the individual compilation/lexical unit you > might get away with it. I'd say that "you might get away with it" is entirely consistent with "You cannot safely ...". [...] -- Keith Thompson (The_Other_Keith) kst-u@mib.org Working, but not speaking, for JetHead Development, Inc. "We must do something. This is something. Therefore, we must do this." -- Antony Jay and Jonathan Lynn, "Yes Minister"