🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.std.unix
Article #107

Re: Some questions about POSIX headers

#107
From: Chuck Karish
Date: Sat, 18 Nov 1989 02:53
41 lines
2570 bytes
In article <428@longway.TIC.COM> gwyn@brl.arpa (Doug Gwyn) wrote:
>In article <6649@portia.Stanford.EDU> karish@forel.stanford.edu (Chuck Karish) writes:
>>According to Section 2.8.2.1 of the 1003.1 document, "If there are no
>>feature test macros present in a program, only the set of symbols
>>defined by the C standard shall be present".  This means that the
>>symbols may be present, but they must be concealed by a feature test
>>macro:
>
>No, it doesn't -- because "the set of symbols defined by the C standard"
>can, and must, be construed as permitting all symbols that the C standard
>specifically reserves for the implementation, including _LOW etc.

To me, "the set of symbols defined by the C standard" means the set of
symbols defined, not the set of all possible symbols in some part of
the name space.  I interpreted this to mean the set of symbols listed
in Appendix 3 of X3J11/88-158 (Draft ANSI C Standard).  "Defined"
and "reserved" denote different concepts.

This is cleared up somewhat in Drafts 3 and 4 of the P1003.1a
supplement:

    2.8.2:  "It is unspecified by this standard whether any symbols in
    the namespace reserved to the implementation are affected by
    _POSIX_SOURCE."

    2.8.2.2:  "If _POSIX_SOURCE is defined ... [s]ymbols from the
    namespace reserved for the implementation, as defined by the C
    Standard [1], are also permitted."

Note that neither of these clauses deals with the case where
_POSIX_SOURCE is not defined, which is the case I considered in the
paragraph quoted from my earlier article [2.8.2.1].

If the 1003.1 committee means that anything in the implementors'
name space may be in a header without protection, the standard
must say so.  As now written, it explicitly says the opposite.

	Chuck Karish		karish@mindcraft.com
	(415) 323-9000		karish@forel.stanford.edu

Volume-Number: Volume 17, Number 59
Technical Details
Message-ID: <431@longway.TIC.COM>
Path: arc1-ca.pugleaf.net!utzoo!yunexus!ists!jarvis.csri.toronto.edu!mailrus!wuarchive!cs.utexas.edu!longway!std-unix
References: <4508@ast.cs.vu.nl> <6622@portia.Stanford.EDU> <6649@portia.Stanford.EDU> <428@longway.TIC.COM>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!yunexus!ists!jarvis.csri.toronto.edu!mailrus!wuarchive!cs.utexas.edu!longway!std-unix
From: karish@forel.stanford.edu (Chuck Karish)
Newsgroups: comp.std.unix
Subject: Re: Some questions about POSIX headers
Summary: It's clearer in 1003.1a D4
Message-ID: <431@longway.TIC.COM>
Date: 18 Nov 89 02:53:23 GMT
Article-I.D.: longway.431
References: <4508@ast.cs.vu.nl> <6622@portia.Stanford.EDU> <6649@portia.Stanford.EDU> <428@longway.TIC.COM>
Sender: std-unix@longway.TIC.COM
Reply-To: karish@forel.stanford.edu (Chuck Karish)
Organization: Mindcraft, Inc.
Lines: 41
Approved: jsq@longway.tic.com (Moderator, John S. Quarterman)