Message-Id: <4.2.0.58.19990714133218.00a4cc50@hal.nt.tuwien.ac.at> X-Sender: tony AT dictator DOT nt DOT tuwien DOT ac DOT at X-Mailer: QUALCOMM Windows Eudora Pro Version 4.2.0.58 Date: Wed, 14 Jul 1999 14:09:35 +0200 To: djgpp AT delorie DOT com From: Anton Helm Subject: Re: Hiding globals when using flex/bison in a library In-Reply-To: References: <7mgj93$4st$1 AT news DOT luth DOT se> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Reply-To: djgpp AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk At 10:12 AM 7/14/99 +0300, Eli Zaretskii wrote: >On 13 Jul 1999, Martin Str|mberg wrote: > >Any name that begins with three underscores has two underscores at its >beginning, right? > > > Is there some other way to get unique identifiers? > >Not in C, not that I know of, anyway. > >The Standard promises that if you don't use any of the names reserved >by it, you should be safe, but that's only good for applications, not >for libraries. Just for reference: ISO/IEC 9899:1990 Programming Languages - C, p.97 7.1.3 Reserved identifiers [...] - All identifiers that begin with an underscore and either with an uppercase letter or another underscore are always reserved for any use. - All identifiers that begin with an underscore are always reserved for use as identifiers with file scope in both the ordinary identifiers and tag name spaces. [...] The second paragraph is somewhat unclear to me. Well, my english has been better some time ... Does it mean: - I am allowed to use _abcdef as an identifier with file scope *ONLY*. or - I am *NOT* allowed to use _abcdef as an identifier with file scope. Anyone out there to explain that in easy wording ... ... preferably a lawyer ;-) Tony