Language standard features
The compiler fully
supports the following language standards:
- C++14 with some dependencies on hardware and version of AIX 1, 2 3
- C++11 with some dependencies on hardware and version of AIX 1, 2
- C++03
- C++98
- C11 with the exception of the atomics features
- C99
- C89
Notes:
- The compiler supports the C++11 atomics features
as follows:
- For POWER8® and POWER9™ architectures, the C++11 atomics features are fully supported.
- For POWER4 to POWER7® architectures,
atomic types based on integral types of size less than
int
, such asatomic<short>
, are not supported.
- To use the C++11 thread-local storage feature, you
must link and load against the pthread library available in AIX 7.2
onwards. Otherwise, the following messages will be issued when you:
- Link with the AIX 7.1 pthread library:
ld: 0711-317 ERROR: Undefined symbol: .__pt_atexit_np
- Load against the AIX 7.1 pthread library:
0509-136 Symbol __pt_atexit_np (number 10) is not exported from dependent module /usr/lib/libpthreads.a(shr_xpg5.o).
- Link with the AIX 7.1 pthread library:
- The C++14 support inherits the same hardware and AIX version dependencies as C++11.
- The sized deallocation feature is enabled only when -fsized-deallocation is in effect. The -fsized-deallocation option is not enabled by default.
For the support status of each C++11 and C++14 feature, and its corresponding C++ standards committee paper, see C++11 and C++14 feature support.