Standards
| Standards / Extensions | C or C++ | Dependencies |
|---|---|---|
See the tables below for more details.
Standards and extensions
| Standards / Extensions | Refer to |
|---|---|
| ISO C | ISO/IEC 9899:1990(E) |
| ISO C Amendment | A subset of the ISO/IEC 9899:1990/Amendment 1:1993(E) |
| POSIX.1 | ISO/IEC 9945-1:1990/IEEE POSIX 1003.1-1990 |
| POSIX.1a | A subset of IEEE POSIX 1003.1a, Draft 7, May 1992 |
| POSIX.2 | IEEE Portable Operating System Interface (POSIX) Part 2, P1003.2 draft 12 |
| POSIX.4a | A subset of IEEE POSIX 1003.4a, Draft 6, Feb. 26,1992 |
| POSIX.4b | A subset of IEEE 1003.4b |
| BSD 4.3 | Berkeley Software Distribution (BSD) 4.3 standard (also known as Berkeley sockets) |
| XPG4 | X/Open Common Applications Environment Specification, System Interfaces and Headers, Issue 4 |
| XPG4.2 | X/Open Common Applications Environment Specification, System Interfaces and Headers, Issue 4, Version 2 |
| SAA | IBM® Systems Application Architecture® Common Programming Interface (SAA CPI) Level 2 definition of the C language |
| C Library | Functions that are extensions to the runtime library, before the Language Environment® product |
| Language Environment | Functions that are extensions to the conventional standards |
| z/OS® UNIX | Functions that provide z/OS UNIX support beyond the defined standards |
| Single UNIX Specification, Version 2 | IEEE Std 1003.1-1997 |
| Single UNIX Specification, Version 3 | IEEE Std 1003.1-2001 |
| ISO/ANSI C++ | ISO/ANSI C++ Standard (ISO/IEC 14882:1998(E)) |
| RFC2292 | Advanced Sockets API for IPv6 (draft-ietf-ipngwg-rfc2292bis-06.txt, dated February 25, 2002) Note: Not all of the support described in this draft is available on z/OS.
|
| RFC2553 | Basic socket interface extensions for IPv6 (draft-ietf-ipngwg-rfc2253bis-05.txt, dated
February 2002) Note: Not all of the support described in this draft is available on z/OS.
|
| RFC3678 | Socket interface extensions for multicast source filters |
| ANSI/IEEE Standard P754 | IEEE standard for binary floating-point arithmetic |
| C99 | ISO/IEC 9899:1999(E) |
| C/C++ DFP |
|
| C++ TR1 C99 | ISO/IEC DTR 19768 - Draft Technical Report on C++ library Extensions, chapter 8, C compatibility |
| C11 | ISO/IEC 9899:2011(E) |
| Runtime library extensions | Additional functions to the runtime library |
These standards do have some overlap, as illustrated in Figure 1.

The C library contains several functions that are extensions to the SAA CPI Level 2 definition. These library functions are available only with the runtime library extensions. As indicated, some of the stub routines for the extensions are available if they are ISO C/C++ compliant. They are made available for compatibility with Version 1; they may not be available in the future. (Within runtime libraries, a stub routine is a routine that contains the minimum lines of code required to locate a given routine at run time.)
Many of the symbols that are defined in headers are “protected” by a feature test macro. For information on the relationships between feature test macros and the standards, see Feature test macros.
Language support
The "C or C++" column indicates the language support for each function.
| C or C++ | Description |
|---|---|
| C only | The function is supported by the IBM z/OS C compiler only |
| C++ only | The function is supported by the IBM z/OS C++ compiler only. |
| both | The function is supported by both the IBM z/OS C and the IBM z/OS C++ compilers. |
Dependencies
errno of EMVSNORTL. Functions defined by the standards that cannot fail, will cause abnormal termination and return Language Environment condition CEE5001.
| Dependencies | Description |
|---|---|
| POSIX(ON) |
|
| OS/390® V2R6 | |
| OS/390 V2R7 | |
| OS/390 V2R8 | |
| OS/390 V2R9 | |
| OS/390 V2R10 | |
| z/OS V1R1 | |
| z/OS V1R2 | |
| z/OS V1R3 | |
| z/OS V1R4 | |
| z/OS V1R5 | |
| z/OS V1R6 | |
| z/OS V1R7 | |
| z/OS V1R8 | |
| z/OS V1R9 | |
| AMODE 64 |