.
Last update: 1997-05-20
9945-1-90 #29
_____________________________________________________________________________
Topic: SSIZE_MAX minimum values
Relevant Sections: 2.8.6
Classification: Editorial defect.
Defect Report:
-----------------------
Table 2-7 in section 2.8.6 (Invariant Values) lists
{_POSIX_SSIZE_MAX} as the value for the symbol {SSIZE_MAX}. It
is not made clear in this section that an implementation is per-
mitted to support a value for {SSIZE_MAX} that exceeds
{_POSIX_SSIZE_MAX}.
Without clarification, it might be possible to interpret the
standard as requiring all implementations to set {SSIZE_MAX} to
32767. The text of sections 2.8.2 through 2.8.5 explicitly per-
mit the symbols in tables 2-5 and 2-6 to take on values larger
than the minimum values in table 2-3. The third columns of
tables 2-4 and 2-5 are even titled "Minimum Value".
In contrast to this possible interpretation, BSD currently de-
clares the read() and write() functions with return values and
nbyte parameters to be 32-bit signed ints, for which SSIZE_MAX
would be defined to be MAX_INT, 21474783647 not 32767.
WG15 response for ISO/IEC 9945-1:1990 (IEEE Std 1003.1-1990)
--------------------------------------------------
The third column header in table 2-7 had the word "Minimum"
inadvertantly omitted.
Rationale for Interpretation:
-----------------------------
This is an editorial defect with no impact on test assertions.
_____________________________________________________________________________