Newsgroups: comp.lang.c Path: utzoo!henry From: henry@utzoo.uucp (Henry Spencer) Subject: Re: Machine specific predefined names Message-ID: <1988Feb27.220901.8337@utzoo.uucp> Keywords: library names, clashes Organization: U of Toronto Zoology References: <1988Feb17.115402.12739@light.uucp> <1988Feb25.080434.29615@utzoo.uucp>, <7353@brl-smoke.ARPA> Date: Sat, 27 Feb 88 22:09:01 GMT > >... The crucial point here (implementations > >not allowed to reserve other non-_ names) is an *EXTREMELY SUBTLE* result > >of the wording... > > Well, I'll let readers judge for themselves. I posted the most relevant > draft proposed standard wording here; it sure didn't seem subtle to me. The problem is that the wording about strictly-conforming programs etc. looks, at first glance, like definitions of terms -- NOT like an important rule with significant impact on implementations. Once you understand that there is something significant to be found in those words, yes, it's reasonably obvious. But there is nothing in the standard proper to alert you. I am neither stupid nor unfamiliar with the X3J11 drafts (I have read rather too many of them already...), and I missed it completely this time until I ran into the name-space discussion in the Rationale and said, "Wait a minute -- where did it guarantee that?". It's an important result of a section that looks like motherhoods plus definitions of terms. All that's needed is a footnote saying "note the implication that implementors are not allowed to reserve names, except those allotted to them in 4.1.2". -- Those who do not understand Unix are | Henry Spencer @ U of Toronto Zoology condemned to reinvent it, poorly. | {allegra,ihnp4,decvax,utai}!utzoo!henry