Extensions for C11 compatibility

Note: IBM supports selected features of C11, known as C1X before its ratification. IBM will continue to develop and implement the features of this standard. The implementation of the language level is based on IBM's interpretation of the standard. Until IBM's implementation of all the C11 features is complete, including the support of a new C11 standard library, the implementation may change from release to release. IBM makes no attempt to maintain compatibility, in source, binary, or listings and other compiler interfaces, with earlier releases of IBM's implementation of the C11 features.

The following features are part of a continual phased release process leading towards full compliance with C11. They can be enabled by the -qlanglvl=extc1x group option when you compile with the C compiler. Certain C11 features are also available when you compile with the C++ compiler. For further information, see sections that describe individual features.

Table 1. IBM XL C language extensions for compatibility with C11
Language feature Discussed in:
Anonymous structures Anonymous structures
Complex type initialization Initialization of complex types (C11)
Static assertions _Static_assert declaration
The _Noreturn function specifier The _Noreturn function specifier
typedef redeclaration typedef definitions

Related reference

-qlanglvl in the XL C/C++ Compiler Reference