Austin Group Defect Tracker

Aardvark Mark IV

Viewing Issue Simple Details Jump to Notes ] Issue History ] Print ]
ID Category Severity Type Date Submitted Last Update
0001456 [1003.1(2016/18)/Issue7+TC2] System Interfaces Objection Omission 2021-03-09 20:09 2022-07-19 14:16
Reporter eblake View Status public  
Assigned To
Priority normal Resolution Accepted As Marked  
Status Applied  
Name Eric Blake
Organization Red Hat
User Reference
Section XSH 2.2.2
Page Number 477
Line Number 16418
Interp Status ---
Final Accepted Text See Note: 0005879.
Summary 0001456: Permit implementations to add additional confstr()/pathconf()/sysconf() constants
Description XSH 2.2.2 states that implementations can generally add more constants that fit within approved namespace restrictions, and further states that any identifier beginning with underscore then upper-case is reserved for the implementation (line 16438), so an implementation can indeed add more confstr() (_CS_*), pathconf() (_PC_*) and sysconf() (_SC_*) symbols without violating the requirements. However, without explicit direction, it is not obvious that an application can test for the existence of which extensions an implementation supports, nor that an implementation should not blindly define macros in this namespace if they are not compatible with confstr/pathconf/sysconf semantics.
Desired Action Before page 477 line 16418 (XSH 2.2.2), add a new paragraph:
Additional symbolic constants with the prefix _CS_, _PC_, and _SC_ may be defined by the inclusion of <unistd.h>, but as these are already reserved for the implementation, they are not included in the table above. Extensions with these prefixes should be compatible with use by confstr(), pathconf(), and sysconf(), respectively.

After page 443 line 15205 (XBD <unistd.h>), add a paragraph:
The implementation may define additional symbolic constants beginning with _CS_* for use by confstr().

After page 444 line 15235, add a paragraph:
The implementation may define additional symbolic constants beginning with _PC_* for use by pathconf().

After page 447 line 15362, add a paragraph:
The implementation may define additional symbolic constants beginning with _SC_* for use by sysconf().

Optionally, the Austin Group should decide whether to add an additional requirement that extensions of these forms must be suitable for use in #if preprocessor directives.
Tags tc3-2008
Attached Files

- Relationships

-  Notes
Don Cragun (manager)
2022-06-30 16:12

Make the changes in the desired action, but ignoring the last sentence about #if.
geoffclare (manager)
2022-07-19 14:16

When applying this bug I noticed that the location given for the XSH 2.2.2 addition was after the second (macro-only) table, but it should go after the first (any use) table, which is where I have added it.

- Issue History
Date Modified Username Field Change
2021-03-09 20:09 eblake New Issue
2021-03-09 20:09 eblake Name => Eric Blake
2021-03-09 20:09 eblake Organization => Red Hat
2021-03-09 20:09 eblake Section => XSH 2.2.2
2021-03-09 20:09 eblake Page Number => 477
2021-03-09 20:09 eblake Line Number => 16418
2021-03-09 20:09 eblake Interp Status => ---
2022-06-30 15:44 geoffclare Project 1003.1(2013)/Issue7+TC1 => 1003.1(2016/18)/Issue7+TC2
2022-06-30 16:12 Don Cragun Note Added: 0005879
2022-06-30 16:13 Don Cragun Final Accepted Text => See Note: 0005879.
2022-06-30 16:13 Don Cragun Status New => Resolved
2022-06-30 16:13 Don Cragun Resolution Open => Accepted As Marked
2022-06-30 16:14 Don Cragun Tag Attached: tc3-2008
2022-07-19 14:16 geoffclare Note Added: 0005897
2022-07-19 14:16 geoffclare Status Resolved => Applied

Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker