C++11/C++14 support in XLC ?

Kim Barrett kim.barrett at oracle.com
Fri Jun 30 22:08:06 UTC 2017


> On Jun 29, 2017, at 5:17 PM, Jeff Heath <jrheath at ca.ibm.com> wrote:
> 
> Hi all,
> 
> On the LE Linux platform, XL C/C++ V13.1.5 has full support of C++11 and partial support of C++14.  On AIX, XL C/C++ V13.1.3 has partial support of C++11.  The exact feature list is described in the language reference, but is available in a more consumable form here [1]. This is still a pretty current list.  
> 
> [1] https://www.ibm.com/developerworks/community/blogs/5894415f-be62-4bc0-81c5-3956e82276f3/entry/What_new_C_11_language_features_you_will_get_by_using_the_latest_XL_C_C_V13_1_2_and_a_sneak_peak_at_C_14?lang=en
> 
> Regards,
> 
> Jeff

Thanks for the link.

Besides atomics/concurrency that Volker mentioned, some other features
that I recall coming up include constexpr support (especially C++14
more relaxed constexpr) and type traits and related metaprogramming
tools. And in a recent discussion of bugs arising from seconds vs
milliseconds mismatches, some folks were looking wistfully at
std::chrono.

However, just the sheer number of holes in the AIX column is a
significant concern. Here at Oracle, where we don't directly support
the AIX port for OpenJDK, it would be all too easy for us to do some
work that relies on some set of new language features, test, review,
and commit it, and only later find out it all needed to be backed out
and re-thought due to limitations of XLC++ on AIX.

If I'm reading that table correctly, AIX has the original rvalue
reference semantics? I was involved in a C++98 to C++11 conversion
effort at a previous job. After some painful bugs in our code, we
decided we weren't willing to use rvalue references under the original
draft semantics and would only use gcc versions providing the new
improved sematics, as the original was too much like running with
scissors.



More information about the ppc-aix-port-dev mailing list