View Issue Details

IDProjectCategoryView StatusLast Update
00013301003.1(2016/18)/Issue7+TC2Base Definitions and Headerspublic2024-06-11 09:08
Reportergeoffclare Assigned To 
PrioritynormalSeverityEditorialTypeEnhancement Request
Status ClosedResolutionAccepted 
NameGeoff Clare
OrganizationThe Open Group
User Reference
Sectionmany
Page Numbermany
Line Numbermany
Interp Status---
Final Accepted Text
Summary0001330: Remove some of the OB shaded text
DescriptionAs part of the preparations for Issue 8 Draft 1 we need to decide which obsolescent features to remove and which to keep. The proposal in the desired action assumes that we want to remove everything that isn't in the current C2x draft standard. Note that asctime_r() and ctime_r() are not in C17 but they are in the current C2x draft. If we can persuade the C committee not to add them, then we can remove them from Issue 8.

We don't need to spell out the changes in detail with page and line numbers; the high level instructions in the desired action are sufficient.
Desired ActionKeep the following functions:

asctime()
asctime_r()
ctime()
ctime_r()
tmpnam()

and in their FUTURE DIRECTIONS sections after the statement that they may be removed in a future version, add "but not until after they have been removed from the ISO C standard".

Remove everything that is part of the STREAMS, Tracing, Batch Environment Services and Utilities, and FORTRAN Development options, including XSH 2.6 STREAMS, XSH 2.11 Tracing, XCU 3 Batch Environment Services, and XRAT B.2.6, B.2.11, and C.3.

Remove the following functions:

_longjmp()
_setjmp()
_tolower()
_toupper()
ftw()
getitimer()
gets()
gettimeofday()
isascii()
pthread_getconcurrency()
pthread_setconcurrency()
rand_r()
setitimer()
setpgrp()
sighold()
sigignore()
siginterrupt()
sigpause()
sigrelse()
sigset()
tempnam()
toascii()
ulimit()
utime()

Remove the following headers entirely:

<ulimit.h>
<utime.h>

Remove the following from the indicated headers:

*_V6_* from <unistd.h> [also make *_V7_* obsolescent and add *_V8_*]
MAXFLOAT from <math.h>
P_tmpdir from <stdio.h>
SIG_HOLD and SIGPROF from <signal.h>
isw*(), towlower(), towupper(), and wctype() from <wchar.h>
itimerval, ITIMER_REAL, ITIMER_VIRTUAL, ITIMER_PROF from <sys/time.h>
pthread_atfork() and ctermid() ("may includes") from <unistd.h>
wctype_t from <wchar.h> [move the description to <wctype.h>]

Remove the following from the indicated function descriptions:

*_V6_* from confstr() [also make *_V7_* obsolescent and add *_V8_*]
*_V6_* from sysconf() [also make *_V7_* obsolescent and add *_V8_*]

Remove the following from the indicated utility descriptions:

-l trace and libtrace.a from c99 [before converting to a c17 or c2x page]
maketemp from m4
"expression1 -a expression2", "expression1 -o expression2", and "( expression )" from test

For each removed interface, remove all references to it, e.g. from notes in FUTURE DIRECTIONS section saying they may be removed, from the async-signal-safe list, the cancellation point lists, subprofiling groups, SEE ALSO entries, and pointer pages.
Tagsissue8

Relationships

related to 0000837 Closed 1003.1(2013)/Issue7+TC1 renumber section 2.13 to be 2.6 in Issue 8 

Activities

shware_systems

2020-04-01 14:09

reporter   bugnote:0004809

Where interfaces were required for XSI conformance, but were optional groups
for POSIX conformance, I think more would be happier if they stay in the standard as those groups, as a backwards compatibility consideration. What would be obsoleted is them being any requirement. It seems the only changes to source would be tests only on XOPEN_VERSION, to establish availability, would have to switch to POSIX_VERSION and individual group testing.

Don Cragun

2020-04-30 15:46

manager   bugnote:0004835

If the C committee decides to remove the functions that are being kept, a new bug will need to be filed to remove them from a future draft.

Issue History

Date Modified Username Field Change
2020-03-31 15:53 geoffclare New Issue
2020-03-31 15:53 geoffclare Name => Geoff Clare
2020-03-31 15:53 geoffclare Organization => The Open Group
2020-03-31 15:53 geoffclare Section => many
2020-03-31 15:53 geoffclare Page Number => many
2020-03-31 15:53 geoffclare Line Number => many
2020-03-31 15:53 geoffclare Interp Status => ---
2020-04-01 09:31 geoffclare Desired Action Updated
2020-04-01 14:09 shware_systems Note Added: 0004809
2020-04-30 15:44 Don Cragun Status New => Resolved
2020-04-30 15:44 Don Cragun Resolution Open => Accepted
2020-04-30 15:46 Don Cragun Note Added: 0004835
2020-04-30 15:46 Don Cragun Tag Attached: issue8
2020-05-29 15:35 geoffclare Status Resolved => Applied
2020-05-29 15:36 geoffclare Relationship added related to 0000837
2024-06-11 09:08 agadmin Status Applied => Closed