Compatibility limitations of libc++

Consider compatibility limitations of libc++ when you use IBM® Open XL C/C++ for AIX® 17.1.1.2 or earlier Open XL C/C++ releases.

If you use the LIBCXX_ENABLE_ASSERTIONS macro to enable related library assertions features in your program and compile your program using IBM Open XL C/C++ for AIX 17.1.1.2 or earlier Open XL C/C++ releases, the library assertions erroneously invoke the __libcpp_assertion_handler runtime library function. The __libcpp_assertion_handler function is not a part of the libc++ ABI from LLVM 15 and might not be supported in future versions of C++ runtime libraries.

To avoid potential issues, re-compile your program with IBM Open XL C/C++ for AIX 17.1.1.3 or later releases to enable library assertions to invoke the __libcpp_verbose_abort function instead. Additionally, if you provide a replacement implementation of __libcpp_assertion_handler when using IBM Open XL C/C++ for AIX 17.1.1.3 or later releases, provide a replacement implementation for __libcpp_verbose_abort as well.