What's New in Technical Corrigendum Number 1 for IEEE Std 1003.1-2001?

February 15, 2003

by Andrew Josey

Andrew Josey is the Director, Server Platforms, for The Open Group in Reading, England, and the chair of the Austin Group

This article first appeared in USENIX ;login


The IEEE-SA Standards Board approved Technical Corrigendum Number 1 (TC1) on December 10th 2002. The governing board of The Open Group approved the document on 7 February 2003.

The following article presents an overview of what has been changed by this corrigendum. The actual technical corrigendum can be obtained from http://www.opengroup.org/corrigenda/

  1. Issues related to the Base Definitions

    glob.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/8 is applied, correcting the glob() prototype definition by removing the restrict qualifier from the function pointer argument.

    langinfo.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/9 is applied, adding a sentence to the "Meaning" column entry for the CRNCYSTR constant. This change is to accommodate historic practice.

    limits.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/10 is applied, updating the value of _POSIX_CHILD_MAX from 6 to 25. This corrects an editorial error and is for FIPS 151-2 alignment.

    netdb.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/11 is applied, adding a description of the NI_NUMERICSCOPE macro and correcting the getnameinfo() function prototype. These changes are for alignment with the IETF IPv6 specification.

    netinet/in.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/12 is applied, adding "const" qualifiers to the in6addr_any and in6addr_loopback external variables.

    pthread.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/13 is applied, correcting shading errors that were in contradiction wit the System Interfaces Volume.

    signal.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/14 is applied, changing the descriptive text for members of struct sigaction.

    Technical Corrigendum Number 1 item XBD/TC1/D6/15 is applied, correcting the definition of the sa_sigaction member of struct sigaction.

    sys/mman.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/16 is applied, correcting margin code and shading errors for the mlock() and munlock() functions.

    sys/stat.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/17 is applied, adding text regarding the st_blocks members of the stat structure to the RATIONALE.

    sys/statvfs.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/18 is applied, changing the description of ST_NOSUID from "Does not support setuid()/setgid() semantics" to "Does not support the semantics of the ST_ISUID and ST_ISGID file mode bits".

    termios.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/19 is applied, changing ECHOK to ECHOKE in the APPLICATION USAGE section.

    unistd.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/2 is applied, changing "Thread Stack Address Size" to "Thread Stack Size Attribute".

    Technical Corrigendum Number 1 item XBD/TC1/D6/20 is applied, adding the _POSIX_IPV6, _SC_V6 and _SC_RAW_SOCKETS symbols

    Technical Corrigendum Number 1 item XBD/TC1/D6/21 is applied, correcting the description in "Constants for Functions" for the _CS_POSIX_V6_LP64_OFF64_CFLAGS, _CS_POSIX_V6_LP64_OFF64_LDFLAGS, and _CS_POSIX_V6_LP64_OFF64_LIBS symbols.

    Technical Corrigendum Number 1 item XBD/TC1/D6/22 is applied, removing the shading for the _PC* and _SC* constants, since these are mandatory upon all implementations.

    Technical Corrigendum Number 1 item XBD/TC1/D6/23 is applied, adding the _PC_SYMLINK_MAX and _SC_SYMLOOP_MAX constants.

    Technical Corrigendum Number 1 item XBD/TC1/D6/24 is applied, correcting the shading and margin code for the fsync() function.

    Technical Corrigendum Number 1 item XBD/TC1/D6/25 is applied, adding the following text to APPLICATION USAGE "New applications should not use _XOPEN_SHM or _XOPEN_ENH_I18N".

    wchar.h

    Technical Corrigendum Number 1 item XBD/TC1/D6/26 is applied, adding the APPLICATION USAGE section.

  2. Rationale changes related to the Base Definitions

    A.4.10

    Add to end of A.4.10 Memory Synchronization p37 l 1465

    Technical Corrigendum Number 1 item XBD/TC1/D6/4 is applied, adding a new paragraph beneath the table of functions: "The pthread_once() function shall synchronize memory for the first call in each thread for a given pthread_once_t object."

    A.7.3.3 LC_MONETARY

    Line 1986, add after "Technical Corrigendum No. 1", "item XBD/TC1/D6/6"

    Add another paragraph at end of this section:

    Technical Corrigendum Number 1 item XBD/TC1/D6/5 is applied, adding the int_[np]_* values to the POSIX locale definition of LC_MONETARY.

    A.8.3 TZ

    Add to the end of the TZ section (line 2339)

    Technical Corrigendum Number 1 item XBD/TC1/D6/7 is applied, adding the ctime_r() and localtime_r() functions to the list of functions that use the TZ environment variable.

  3. Issues related to the System Interfaces

    abort

    Technical Corrigendum Number 1 item XSH/TC1/D6/10 is applied, changing the DESCRIPTION of abnormal termination processing and adding to the RATIONALE section.

    bsearch

    Technical Corrigendum Number 1 item XSH/TC1/D6/11 is applied, adding to the last sentence to the end of the first non-shaded paragraph in the DESCRIPTION and adding the three following paragraphs. The RATIONALE section is also updated. These changes are for alignment with the ISO C standard.

    close

    Technical Corrigendum Number 1 item XSH/TC1/D6/12 is applied, correcting the XSI shaded text relating to the master side of a pseudo-terminal. The reason for the change is that the behaviour of pseudo-terminals and regular terminals be as much alike as possible in this case; the change achieves that and matches historical behaviour.

    closelog

    Technical Corrigendum Number 1 item XSH/TC1/D6/13 is applied, correcting the EXAMPLES.

    dlsym

    Technical Corrigendum Number 1 item XSH/TC1/D6/14 is applied, correcting an example, and adding text to the RATIONALE describing issues related to conversion of pointers to functions and back again.

    exec

    Technical Corrigendum Number 1 item XSH/TC1/D6/15 is applied, adding a new paragraph to the DESCRIPTION and text to the end of the APPLICATION USAGE section. This change addresses a security concern, where implementations may want to reopen file descriptors 0, 1 and 2 for programs with the set-user-id or set-group-id file mode bits calling the exec family of functions.

    exit

    Technical Corrigendum Number 1 item XSH/TC1/D6/16 is applied, correcting grammar in the description.

    fork

    Technical Corrigendum Number 1 item XSH/TC1/D6/17 is applied, adding text to the DESCRIPTION and RATIONALE relating to fork handlers registered by the pthread_atfork() function and async-signal safety.

    fpathconf

    Technical Corrigendum Number 1 item XSH/TC1/D6/18 is applied, changing the fourth paragraph of the DESCRIPTION and removing shading and margin markers from the table. This change is needed since implementations are required to support all these symbols.

    freeaddrinfo

    Technical Corrigendum Number 1 item XSH/TC1/D6/19 is applied, adding three notes to the DESCRIPTION and adding text to the APPLICATION USAGE related to the term canonical name. A reference to RFC 2181 is also added to the informative references front matter.

    Technical Corrigendum Number 1 item XSH/TC1/D6/20 is applied, making changes for alignment with the IETF IPv6 API specification. These include the following: adding AI_V4MAPPED, AI_ALL and AI_ADDRCONFIG to the allowed values for the ai_flags field; adding a description of AI_ADDRCONFIG; and adding a description of the consequences of ignoring the AI_PASSIVE flag.

    fsetpos

    Technical Corrigendum Number 1 item XSH/TC1/D6/21 is applied, deleting an erroneous EINVAL error case from the ERRORS section.

    gai_strerror

    Technical Corrigendum Number 1 item XSH/TC1/D6/22 is applied, adding the EAI_OVERFLOW error code.

    getnameinfo

    Technical Corrigendum Number 1 item XSH/TC1/D6/23 is applied, making various changes in the SYNOPSIS and DESCRIPTION for alignment with the IETF IPv6 specification.

    Technical Corrigendum Number 1 item XSH/TC1/D6/24 is applied, adding the EAI_OVERFLOW error to the ERRORS section.

    getrlimit

    Technical Corrigendum Number 1 item XSH/TC1/D6/25 is applied, changing wording for RLIMIT_NOFILE in the DESCRIPTION related to functions that allocate a file descriptor failing with [EMFILE]. Text is added to the APPLICATION USAGE section noting the consequences of a process attempting to set the hard or soft limit for RLIMIT_NOFILE less than the highest currently open file descriptor+1.

    getsubopt

    Technical Corrigendum Number 1 item XSH/TC1/D6/26 is applied, correct an editorial error in the SYNOPSIS.

    gmtime

    Technical Corrigendum Number 1 item XSH/TC1/D6/27 is applied, adding the EOVERFLOW error case.

    if_indextoname

    Technical Corrigendum Number 1 item XSH/TC1/D6/28 is applied, changing {IFNAMSIZ} to {IF_NAMESIZ} in the DESCRIPTION.

    inet_ntop

    Technical Corrigendum Number 1 item XSH/TC1/D6/29 is applied, adding "the address must be in network byte order" to the end of the fourth sentence of the first paragraph in the DESCRIPTION.

    initstate

    Technical Corrigendum Number 1 item XSH/TC1/D6/30 is applied, removing rand_r() from the list of suggested functions in the APPLICATION USAGE section.

    localeconv

    Technical Corrigendum Number 1 item XSH/TC1/D6/31 is applied, removing references to "int_curr_symbol" and updating the descriptions of p_sep_by_space and n_sep_by_space. These changes are for alignment with the ISO C standard.

    localtime

    Technical Corrigendum Number 1 item XSH/TC1/D6/32 is applied, adding the EOVERFLOW error case.

    makecontext

    Technical Corrigendum Number 1 item XSH/TC1/D6/33 is applied, clarifying that the arguments passed to func are of type int .

    mmap

    Technical Corrigendum Number 1 item XSH/TC1/D6/34 is applied, changing the margin code in the SYNOPSIS from MF|SHM to MC3 (notation for MF|SHM|TYM).

    modf

    Technical Corrigendum Number 1 item XSH/TC1/D6/35 is applied, correcting the code example in the APPLICATION USAGE.

    munmap

    Technical Corrigendum Number 1 item XSH/TC1/D6/36 is applied, changing the margin code in the SYNOPSIS from MF|SHM to MC3 (notation for MF|SHM|TYM).

    nanosleep

    Technical Corrigendum Number 1 item XSH/TC1/D6/37 is applied, updating the SEE ALSO to include the clock_nanosleep() function.

    pow

    Technical Corrigendum Number 1 item XSH/TC1/D6/42 is applied, correcting the third paragraph in the RETURN VALUE section.

    pthread_attr_getstacksize

    Technical Corrigendum Number 1 item XSH/TC1/D6/43 is applied, correcting the margin code in the SYNOPSIS from TSA to TSS and updating the CHANGE HISTORY from "Thread Stack Address Attribute option" to "Thread Stack Size Attribute option".

    pthread_create

    Technical Corrigendum Number 1 item XSH/TC1/D6/44 is applied, adding text that the alternate stack is not inherited.

    pthread_rwlock_destroy

    Technical Corrigendum Number 1 item XSH/TC1/D6/45 is applied, adding APPLICATION USAGE relating to priority inversion.

    putenv

    Technical Corrigendum Number 1 item XSH/TC1/D6/48 is applied, clarifying wording in the DESCRIPTION and adding a new paragraph into APPLICATION USAGE referring readers to exec.

    qsort

    Technical Corrigendum Number 1 item XSH/TC1/D6/49 is applied, adding to the last sentence to the end of the first non-shaded paragraph in the DESCRIPTION and adding the two following paragraphs. The RATIONALE section is also updated. These changes are for alignment with the ISO C standard.

    readdir

    Technical Corrigendum Number 1 item XSH/TC1/D6/50 is applied, replacing the EXAMPLES section with a new example.

    realpath

    Technical Corrigendum Number 1 item XSH/TC1/D6/51 is applied, adding new text to the DESCRIPTION for the case when resolved_name is a null pointer, changing the EINVAL error case text, adding RATIONALE text and the FUTURE DIRECTIONS text.

    sched_get_priority_max

    Technical Corrigendum Number 1 item XSH/TC1/D6/52 is applied, changing the PS margin code in the SYNOPSIS to PS|TPS.

    sched_rr_get_interval

    Technical Corrigendum Number 1 item XSH/TC1/D6/53 is applied, changing the PS margin code in the SYNOPSIS to PS|TPS.

    sem_getvalue

    Technical Corrigendum Number 1 item XSH/TC1/D6/54 is applied.

    setenv

    Technical Corrigendum Number 1 item XSH/TC1/D6/55 is applied, adding references to exec in the APPLICATION USAGE and SEE ALSO sections.

    setpgid

    Technical Corrigendum Number 1 item XSH/TC1/D6/56 is applied, changing the wording in the DESCRIPTION from "the process group ID of the indicated process shall be used" to "the process ID of the indicated process shall be used". This change reverts the wording to as in IEEE Std 1003.1-1996;it appeared to be an unintentional change.

    sigaction

    Technical Corrigendum Number 1 item XSH/TC1/D6/57 is applied, changing descriptive text in the table describing the sigaction structure.

    sigaltstack

    Technical Corrigendum Number 1 item XSH/TC1/D6/58 is applied, updating the first sentence to include "for the current thread" at the end.

    siginterrupt

    Technical Corrigendum Number 1 item XSH/TC1/D6/59 is applied, correcting the declaration in the sample implementation given in the DESCRIPTION section.

    strftime

    Technical Corrigendum Number 1 item XSH/TC1/D6/60 is applied.

    strtod

    Technical Corrigendum Number 1 item XSH/TC1/D6/61 is applied, correcting the second paragraph in the RETURN VALUE section. This change makes it clear the sign of the return value.

    sysconf

    Technical Corrigendum Number 1 item XSH/TC1/D6/62 is applied, updating the DESCRIPTION to denote that the _PC* and _SC* symbols are now required to be supported. A corresponding change has been made in the Base Definitions volume. The deletion in the second paragraph removes some duplicated text. The additions add some symbols drawn from the standard that were accidentally omitted from this page.

    Technical Corrigendum Number 1 item XSH/TC1/D6/63 is applied, making it clear in the RETURN VALUE that the value returned for sysconf(_SC_OPEN_MAX) may change if a call to setrlimit() adjusts the RLIMIT_NOFILE soft limit.

    tan

    Technical Corrigendum Number 1 item XSH/TC1/D6/64 is applied, correcting the last paragraph in the RETURN VALUE section.

    tgamma

    Technical Corrigendum Number 1 item XSH/TC1/D6/65 is applied, correcting the third paragraph in the RETURN VALUE section.

    wcstod

    Technical Corrigendum Number 1 item XSH/TC1/D6/66 is applied, correcting the second paragraph in the RETURN VALUE section.

  4. Rationale changes related to the System Interfaces

    B.2.2.2

    Add to end of B.2.2.2

    Technical Corrigendum Number 1 item XSH/TC1/D6/2 is applied, deleting the entries POSIX_, _POSIX_ and posix_ from the column of allowed namespace prefixes for use by an implementation in the first table. The presence of these prefixes was contradicting later text that states "The prefixes posix_, POSIX_, and _POSIX are reserved for use by IEEE Std 1003.1-2001 and other POSIX standards. Implementations may add symbols to the headers shown in the following table, provided the identifiers ... do not use the reserved prefixes posix_, POSIX_, or _POSIX."

    Technical Corrigendum Number 1 item XSH/TC1/D6/3 is applied, correcting the reserved macro prefix from "PRI[a-z],SCN[a-z]" to: "PRI[Xa-z],SCN[Xa-z]" in the second table. The change was needed since the C Standard allows implementations to define macros of the form "PRI" or "SCN" followed by any lowercase letter or "X" in <inttypes.h>. (ISO/IEC 9899:1999 P400, Sub-clause 7.26.4.)

    Technical Corrigendum Number 1 item XSH/TC1/D6/4 is applied, adding a new section listing reserved names for the <stdint.h> header. This change was for alignment with the C standard.

    B.2.4.3

    Add to the end of B2.4.3

    Technical Corrigendum Number 1 item XSH/TC1/D6/5 is applied, reordering the RTS shaded text under the third and fourth paragraphs of the SIG_DFL description. This corrects an earlier editorial error in this section.

    Technical Corrigendum Number 1 item XSH/TC1/D6/6 is applied, adding the abort() function to the list of async-cancel-safe functions.

    B.2.8.3

    Add new paragraph 2 before "Memory Locking" in 2.8.3

    Technical Corrigendum Number 1 item XSH/TC1/D6/7 is applied, correcting the shading and margin markers in the introduction to section 2.8.3.1.

    B.2.9.5

    Add to the end of B.2.9.5

    Technical Corrigendum Number 1 item XSH/TC1/D6/8 is applied, adding the pselect() function to the list of functions with Cancellation points.

  5. Issues related to Shell and Utilities

    break, colon, continue, dot, eval, exec, exit, export, readonly, return, set, shift, trap, unset:

    Technical Corrigendum Number 1 item XCU/TC1/D6/5 is applied, so that the manual page sections use terms as described in the Utility Description Defaults. No change in behaviour is intended.

    export

    Technical Corrigendum Number 1 item XCU/TC1/D6/6 is applied, adding the following text to the end of the first paragraph of the DESCRIPTION:

    "If the name of a variable is followed by =word, then the value of that variable shall be set to word."

    The reason for this change was that the SYNOPSIS for export includes export name[=word]... but the meaning of the optional "=word" is never explained in the text.

    readonly

    Technical Corrigendum Number 1 item XCU/TC1/D6/7 is applied, adding the following text to the end of the first paragraph of the DESCRIPTION:

    "If the name of a variable is followed by =word, then the value of that variable shall be set to word."

    The reason for this change was that the SYNOPSIS for readonly includes readonly name[=word]... but the meaning of the optional "=word" is never explained in the text.

    set

    Technical Corrigendum Number 1 item XCU/TC1/D6/8 is applied, changing the square brackets in the example in RATIONALE to be in bold which is the typeface used for optional items.

    times

    Technical Corrigendum Number 1 item XCU/TC1/D6/9 is applied, changing text in the DESCRIPTION from:

    "Write the accumulated user and system times for the shell and for all of its child processes..."

    to:

    "The times utility shall write the accumulated user and system times for the shell and for all of its child processes..."

    ar

    Technical Corrigendum Number 1 item XCU/TC1/D6/10 is applied, making corrections to the SYNOPSIS. The change was needed since the -a, -b and -i options are mutually exclusive, and posname is required if any of these options is specified.

    Technical Corrigendum Number 1 item XCU/TC1/D6/11 is applied, correcting the description of the two-byte trailer in RATIONALE that had missed out a back quote. The correct trailer is a back quote followed by a <newline>.

    c99

    Technical Corrigendum Number 1 item XCU/TC1/D6/12 is applied, correcting the EXTENDED DESCRIPTION section of -l c and -l m. Previously the text did not take into account the presence of the c99 math headers.

    Technical Corrigendum Number 1 item XCU/TC1/D6/13 is applied, changing the reference to the libxnet library to libxnet.a.

    cd

    Technical Corrigendum Number 1 item XCU/TC1/D6/14 is applied, changing the SYNOPSIS to make it clear that the -L and -P options are mutually exclusive.

    chgrp

    Technical Corrigendum Number 1 item XCU/TC1/D6/15 is applied, changing the SYNOPSIS to make it clear that the -h and -R options are optional.

    chmod

    Technical Corrigendum Number 1 item XCU/TC1/D6/16 is applied, changing XSI shaded text in the EXTENDED DESCRIPTION from:

    "The perm symbol t shall specify the S_ISVTX bit and shall apply to directories only. The effect when using it with any other file type is unspecified. It can be used with the who symbols o, a, or with no who symbol. It shall not be an error to specify a who symbol of u or g in conjunction with the perm symbol t; it shall be ignored for u and g."

    to:

    "The perm symbol t shall specify the S_ISVTX bit. When used with a file of type directory, it can be used with the who symbol a, or with no who symbol. It shall not be an error to specify a who symbol of u, g, or o in conjunction with the perm symbol t, but the meaning of these combinations is unspecified. The effect when using the perm symbol t with any file type other than directory is unspecified."

    This change is to permit historical behaviour.

    chown

    Technical Corrigendum Number 1 item XCU/TC1/D6/17 is applied, changing the SYNOPSIS to make it clear that the -h and -R options are optional.

    cp

    Technical Corrigendum Number 1 item XCU/TC1/D6/18 is applied, correcting an error in the SEE ALSO section.

    date

    Technical Corrigendum Number 1 item XCU/TC1/D6/19 is applied, correcting the CHANGE HISTORY section.

    diff

    Technical Corrigendum Number 1 item XCU/TC1/D6/20 is applied, changing the STDOUT section. This changes the specification of 'diff -c' so it agrees with existing practice when contexts contain zero lines or one line.

    echo

    Technical Corrigendum Number 1 item XCU/TC1/D6/21 is applied, so that the echo utility can accommodate historical BSD behaviour.

    ed

    Technical Corrigendum Number 1 item XCU/TC1/D6/22 is applied, adding the text "Any line modified by the command list shall be unmarked." to the G command. This change corresponds to a similar change made to the g command in the 2001 revision.

    ex

    Technical Corrigendum Number 1 item XCU/TC1/D6/23 is applied, correcting a URL.

    false

    Technical Corrigendum Number 1 item XCU/TC1/D6/24 is applied, changing the STDERR section from "None" to "Not Used" for alignment with the Utility Description Defaults.

    file

    Technical Corrigendum Number 1 item XCU/TC1/D6/25 is applied, making major changes to address ambiguities raised in defect reports.

    Technical Corrigendum Number 1 item XCU/TC1/D6/26 is applied, making it clear in the OPTIONS section that the -m, -d, and -M options do not comply with Guideline 11 of the utility Syntax Guidelines.

    getconf

    Technical Corrigendum Number 1 item XCU/TC1/D6/27 is applied, correcting the descriptions of path_var and system_var in the OPERANDS section.

    grep

    Technical Corrigendum Number 1 item XCU/TC1/D6/28 is applied, correcting the examples using the grep -F option that did not match the normative description of the -F option.

    iconv

    Technical Corrigendum Number 1 item XCU/TC1/D6/29 is applied, making changes to address inconsistencies with the iconv() function in the System Interfaces Volume.

    locale

    Technical Corrigendum Number 1 item XCU/TC1/D6/30 is applied, correcting an editorial error in the STDOUT section.

    m4

    Technical Corrigendum Number 1 item XCU/TC1/D6/31 is applied, replacing the EXAMPLES section.

    mailx

    Technical Corrigendum Number 1 item XCU/TC1/D6/32 is applied, applying a change to the EXTENDED DESCRIPTION, raised by IEEE PASC Interpretation 1003.2-1992 #122, which was overlooked in the revision.

    od

    Technical Corrigendum Number 1 item XCU/TC1/D6/33 is applied, correcting the examples, which were using an undefined "-n" option that should have been "-N".

    patch

    Technical Corrigendum Number 1 item XCU/TC1/D6/34 is applied, clarifying the way that the patch utility performs ifdef selection for the -D option.

    pax

    Technical Corrigendum Number 1 item XCU/TC1/D6/35 is applied. This change, which adds the process ID of the pax process into certain fields, provides a method for the implementation to ensure that different instances of pax extracting a file named "/a/b/foo" will not collide when processing the extended header information associated with "foo".

    Technical Corrigendum Number 1 item XCU/TC1/D6/36 is applied, changing "-x B" to "-x pax" in the OPTIONS section.

    stty

    Technical Corrigendum Number 1 item XCU/TC1/D6/37 is applied, applying IEEE PASC Interpretation 1003.2-1992 #133, fixing an error in the description of "stty nl".

    test

    Technical Corrigendum Number 1 item XCU/TC1/D6/38 is applied, XSI margin marking and shading a line in the OPERANDS section referring to the use of parentheses as arguments to the test utility.

    true

    Technical Corrigendum Number 1 item XCU/TC1/D6/39 is applied, replacing the terms "None" and "Default" from the STDERR and EXIT STATUS section with terms as defined in the Utility Description Defaults section.

    uniq

    Technical Corrigendum Number 1 item XCU/TC1/D6/40 is applied, adding LC_COLLATE to the ENVIRONMENT VARIABLES section, and changing "the application shall ensure that" in the OUTPUT FILES section.

    vi

    Technical Corrigendum Number 1 item XCU/TC1/D6/41 is applied, adding "[count] to the Synopsis for "[[".

    Technical Corrigendum Number 1 item XCU/TC1/D6/42 is applied, adding "[count] to the Synopsis for "]]".

  6. Rationale changes related to the Shell and Utilities

    XRAT Section C.1.9 Utility Limits

    Add to the end of C.1.9

    Technical Corrigendum Number 1 item XCU/TC1/D6/2 is applied, deleting the entry for {POSIX2_VERSION} since it is not a Utility Limit Minimum Value.

    Technical Corrigendum Number 1 item XCU/TC1/D6/3 is applied, changing the text in Utility Limits from:

    "utility (see getconf (on page 481)) and through the sysconf() function defined in the System Interfaces volume of IEEE Std 1003.1-2001. The literal names shown in Table 1-3 (on page 17) apply only to the getconf utility; the high-level language binding describes the exact form of each name to be used by the interfaces in that binding."

    to:

    "utility (see getconf (on page 481))."

    C.2.6.3

    Add to the end of C.2.6.3

    Technical Corrigendum Number 1 item XCU/TC1/D6/4 is applied, changing the text from:

    "If a command substitution occurs inside double-quotes, it shall not be performed on the results of the substitution."

    to:

    "If a command substitution occurs inside double-quotes, field splitting and pathname expansion shall not be performed on the results of the substitution."

    The replacement text taken from POSIX.2-1992 is clearer about the items that are not performed.