- removed comment
support all of C++11 in Cactus or the Einstein Toolkit
We are currently allowing a subset of C++11 to be used in Cactus and the Einstein Toolkit. Looking at configure.in the supported features are:
- the auto specifier
- C++ lambdas
- C++ range based for
To support all interesting features one would need at least icpc 15 as well as g++ 4.8 and clang 3.3.
== Compiler support ==
The major compilers provide the following information on the features they support:
- Overview on cppreference.com
- Features supported by Intel compilers
- Features supported by gcc compilers
- Features supported by clang compilers
This summarizes the specific C++11 language features.
|| ||= Description =||= GCC version =||= Intel version =||= Clang version =||= Notes =|| ||= N2672 =|| initializer lists || 4.4 || 14.0 || 3.1 || Wikipedia: (1) (2) || ||= N2242 \ N2552 =|| variadic templates || 4.3 \ 4.4 || 12.1 || 2.9 || Wikipedia: (1) || ||= N1737 \ N1984 =|| ''auto'' type || 4.4 || 12.0 || 2.9 || Wikipedia: (1) || ||= N2930 =|| range-based for loops || 4.6 || 13.0 || 3.0 || Wikipedia: (1) || ||= N2431 =|| ''nullptr'' constant || 4.6 || 12.1 || 3.0 || Wikipedia: (1) || ||= N2927 =|| lambda functions || 4.5 || 12.0 || 3.1 || Wikipedia: (1) || ||= N3052 =|| lambda function conversions || ? || 13.0 || ? || || ||= N2761 =|| standardized attributes || 4.8 || 12.1 || 3.3 || Wikipedia: (1) || ||= N1986 =|| delegating constructors || 4.7 || 14.0 || 3.0 || Wikipedia: (1) || ||= N2118 =|| rvalue references || 4.3 || 12.0 || 2.9 || Wikipedia: (1) || ||= N2346 =|| defaulted and deleted methods || 4.4 || 12.0 || 2.9, 3.0 || Wikipedia: (1) || ||= N2442 =|| raw string literals || 4.5 || 14.0 || 3.0 || Stackoverflow: (1) || ||= N2235 =|| generalized constant expressions || 4.6 || 14.0 || 3.1 || Wikipedia: (1) || ||= N2343 \ N3276 =|| declared type of an expression || 4.3 \ 4.8.1 || 12.0 || 2.9 \ 3.1 || Wikipedia: (1) || ||= N2437 =|| explicit conversion operators || 4.5 || 13.0 || 3.0 || Stroustrup 4th edition, 18.4.2 || ||= N1757 =|| right angle brackets || 4.3 || 11.1 || 2.9 || ''>>'' for template arguments || ||= N3272 =|| override and final || 4.7 || 14.0 || 3.0 || Wikipedia: (1) || ||= N2258 =|| template aliases || 4.7 || 12.1 || 3.0 || Wikipedia: (1) || ||= N3053 =|| move special member functions || 4.6 || 14.0 || 3.0 || || ||= N2659 =|| thread-local storage || 4.8 || 15.0 || 3.3 || || ||= N2341 =|| Alignment support || 4.8 || 15.0 || 3.3 || || ||= N2756 =|| Non-static data member initializers || 4.7 || 14.0 || 3.0 || || ||= N2347 || Strongly-typed enums || 4.4 || 14.0 || 2.9 || ||
This summarizes the specific C++11 library features.
||= Description =||= libstdc++ version =||= libc++ version =||= Notes =|| || ''std::begin'', ''std::end'' || 4.5 || * || || || smart pointers || <4.5 || * || Wikipedia: (1) \ Conversion between smart pointers to convertible types is not supported until libstdc++-4.6.1 || || ''std::emplace'' || 4.8 || || || || ''std::vector::emplace'' || <4.5 || * || || || ''<regex>'' || 4.9 || || cplusplus.com: (1) || || ''<type_traits>'' || <4.5 || || cplusplus.com: (1) || || ''<chrono>'' || 4.4 || || Stroustrup 4th edition || || ''<atomic>'' || 4.5 || || cplusplus.com: (1) \ std::atomic::exchange does not compile for pointer types with Intel 13 (works with Intel 14) || || ''std::array'' || <4.6 || || || || ''std::to_string'' || || || || || ''std::unordered_map'' || || || || || || ''std::function'' || <=4.6 || || || * First version unknown; libc++ claims full support for all C++11 features.\ See the libstdc++-4.6.4 documentation (under 20.9.4.3) for a list of unsupported traits.
Keyword: None
Comments (2)
-
reporter -
reporter - removed comment
saw, s-kraken and requin are very old. Last year, a set of new machines was made available to researcher. I have retired them based on suggestions by Erik.
The new machines are Cedar, Graham, and Niagara.
- Log in to comment
I had a look at the (non-personal machines) in simfactory2.
=== unknown status === * angel.ini * compute1.ini * compute20.ini * compute2.ini * compute3.ini * compute4.ini * compute5.ini * compute.ini * nvidia1.ini * nvidia.ini * pi0005009.ini * titan.ini
=== likely turned off ==== * philip.ini * shelob.ini * s-kraken.ini
=== too old if on === * saw.ini * tianhe1a.ini # cannot be accessed other than through a VPN
=== known too old === * mike.ini * qb.ini * requin.ini # cluser is up and running: http://ganglia.sharcnet.ca/?c=requin&m=load_one&r=hour&s=descending&hc=4&mc=2 * sciama.ini # cluster is up http://www.sciama.icg.port.ac.uk/coremap2.htm