In addition to the existing C11 features, new
C11 features are supported in this release of XL C/C++.
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 introduced in IBM® XL
C/C++ for AIX®, V13.1:
- typedef redeclaration
- Generic selection
typedef redeclaration
Using typedef redeclaration,
you can redefine a name that is a previous typedef name
in the same scope to refer to the same type. The XL C compiler supports all types, including a variably
modified type. For more information, see typedef definitions.
Generic selection
Generic selection
provides a mechanism to choose an expression according to a given
type name at compile time. A common usage is to define type generic
macros. For more information, see Generic
selection (C11).