Extensions for C11 compatibility

Note: C11 is a new version of the C programming language standard. IBM continues to develop and implement the features of the new standard. The implementation of the language level is based on IBM®'s interpretation of the standard. Until IBM's implementation of all the features of the C11 standard is complete, including the support of a new C standard library, the implementation may change from release to release. IBM makes no attempt to maintain compatibility with earlier releases, in source, binary, or options, of IBM's implementation of the new features of the C11 standard and therefore they should not be relied on as a stable programming interface.

The following features are part of a continual phased release process leading towards full compliance with C11. They can be enabled by using the LANGLVL(EXTC1X) group option.

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