For ARMCC5 here I can find the C++ supported features.
I see that additions to the C++11 standard template library are NOT supporte.
ARM® Compiler 5 includes only the C++03 standard template library.
And so std::array is not supported by ARMCC6.
For ARMCC 6 I read that
It fully supports the C++14 language standard.
Does this mean that the whole C++ STL is already supported in ARMCC 6?
I'm almost interested in std::array
Which are the disadavantages in migrating the code to the new ARMCC 6?
Is an official release? Or is it a kind of beta?
Paul,
I appreciate your very thorough reply, but now 4+ years later, I wonder if it's still entirely correct. ARMCC 5.06 does supports C++11, albeit with some restrictions. I've tried to navigate the documentation around this but the website is quite challenging, and seems to have gotten worse lately.
Can you please clarify if there's a way to use the array template within ARMCC 5.06. It's part of the c++11 standard library. Even better if you can point to some documentation that lists what is/isn't supported, mentioning array. I'd like to write something like:
#include <array>
std::array<int, 3> a2 = {1, 2, 3};
Thanks a ton, your expertise is much appreciated!
Hello BjoernThe list of C++11 features supported by Arm Compiler 5 is listed here.
https://developer.arm.com/documentation/dui0472/m/c-and-c---implementation-details/c--11-supported-features?lang=en
v5.06 is the latest and final release of Arm Compiler 5. It has been greatly superseded by Arm Compiler 6, which has itself moved on significantly from Paul's original reply above (current version is 6.15, latest version at time of Paul's reply was 6.7). I would _strongly_ recommend you move to this compiler, especially if you are working with C++. Implementation documentation is provided below
https://developer.arm.com/documentation/101754/0615/Appendixes/Standard-C---Implementation-Definition?lang=en