Andrew Josey P1 of 1 9945-1 PDAM 7 (1003.1j/D7) Th section and line number references are against P1003.1j D7 Dated November 1997 Comments submitted to UK POSIX Panel , June 1998 ------------------------------------------------------------------------------ @ 0 o 1 1 Sect 2.7.2 OBJECTION. page 6, line 100-107: Problem: (namespace pollution ) This is namespace pollution. See the position paper from the UK on this issue : WG15 N730: Reserved identifiers in POSIX standards. There are sufficient reserved prefixes for that can be used without the need to reserve any addtional prefixes. In particular we believe that mem_ and MEM_ will clash with existing applications. The new functionality in this proposed amendment should either use existing reserved prefixes (shm_ , MAP_ , MCL_ , MS_ or PROT_) or posix_ or POSIX_ as per the latest draft of 1003.1a. Action: This objection can be resolved by deleting this section on lines 97-107. ------------------------------------------------------------------------------ @ 0 o 2 2 Sect 2.7.3 OBJECTION. page 7, line 130: Problem: ( namespace pollution ) The addition of the three functins typed_mem_open(), mem_offset() and typed_mem_get_info() is namespace pollution. Action: Either use an existing reserved prefix for function names or use the prefix posix_ as in posix_typed_mem_open(), posix_mem_offset(), posix_typed_mem_get_info() ------------------------------------------------------------------------------ @ 0 o 3 3 Sect 2.9.3 Objection page 9, line 183-188: Problem: ( threads requirements) As well as requiring _POSIX_THREADS , support of these options should also require _POSIX_THREAD_SAFE_FUNCTIONS. The rationale is that a POSIX conforming system is expected also to support the Thread Safe Functions option, so lets mandate this. Action: Change the occurrences of "then the symbol {_POSIX_THREADS}" to "then the symbols {_POSIX_THREADS} and {_POSIX_THREAD_SAFE_FUNCTIONS}" ------------------------------------------------------------------------------ @ 0 o 4 4 Sect 11.5.1.2 Objection page 26, line 86: Problem: ( threads header requirements) IEEE PASC Interpretation reference 1003.1c #46 identifies a problem with the existing POSIX.1-1996 specification with respect to the definition of the header. Many functions include only in their synopses, however it is clear that there are other headers required for a program to compile as per the synopses given. This problem occurs also in this specification and the same error should not be made twice. The header should be included before to define the types pthread_attr_t, pthread_cond_t, pthread_condattr_t, pthread_key_t, pthread_mutex_t, pthread_mutexattr_t, pthread_once_t, pthread_rwlock_t, pthread_rwlockattr_t, and pthread_t and the new types introduced in this amendment. This ties in with section 2.5 of POSIX 1003.1-1996. This problem also occurs in the following places: Section 11.5.2.1 line 163 Section 11.5.3.1 line 234 Section 11.6.1.1 line 343 Section 11.6.2.1 line 420 Section 11.6.3.1 line 487 Section 11.6.4.1 line 606 Section 11.6.5.1 line 708 Section 11.7.1.1 line 832 Section 11.7.2.1 line 899 Section 11.7.3.1 line 939 Action: Change the synopsis to be #include #include ------------------------------------------------------------------------------ @ 0 o 5 5 Sect 11.6.3.2 Objection page 38, line 530: Problem: (Timeouts option) There is no "Timeouts" option. Action: Change "the Timeouts options" to "the Timers options" ------------------------------------------------------------------------------ @ 0 o 6 6 Sect 11.6.4.2 Objection page 40, line 639: Problem: (Timeouts option 2) There is no "Timeouts" option. Action: Change "the Timeouts options" to "the Timers options" ------------------------------------------------------------------------------ @ 0 o 6 6 Sect 12.2 Objection page 54-69, line 26-: Problem: (namespace pollution) The following new constants, structures and functions are all namespace pollution: The constants TYPED_MEM_ALLOCATE, TYPED_MEM_ALLOCATE_CONTIG, TYPED_MEM_MAP_ALLOCATABLE, The structure typed_mem_info, with the member tmi_length, The functions typed_mem_open(), mem_offset(), typed_mem_get_info() Action: Either use an existing reserved prefix for function names or use the prefix posix_ or POSIX_ ------------------------------------------------------------------------------ @ 0 c 7 7 Sect B.12.4.1 Editorial comment page 62, line 324: Problem: (posix.1b conforming) There's no such things as a POSIX.1b conforming realtime system. POSIX.1b is not a standalone document as this phrase might suggest. There are POSIX.1 conforming systems and there are a set of options within a POSIX.1 conforming system. Action: This objection can be resolved either by Removing "POSIX.1b conforming" to leave "Realtime systems are expected..." Or to enumerate the POSIX.1 options required as in, "POSIX.1 conforming systems supporting the XXXX option, the YYYY option... etc" ------------------------------------------------------------------------------ ============= End of Andrew Josey's Ballot ===========