C++0x Features Supported by Intel(R) C++ Compiler

Submit New Article

December 6, 2010 11:00 PM PST



Starting in 11.0 the Intel(R) C++ Compiler has supported some of the C++0x features. With the latest release of Intel C++ Composer XE for Windows, Linux* and Mac OS* X, and the Intel Parallel Composer 2011, more C++0x features are supported.

C++0x Core Language Features Version 11.1 Version 12.0 Version 12.0 Update 6
Rvalue references v2 No Yes Yes
Rvalue references for *this No No No
Initialization of class objects by rvalues Yes Yes Yes
static_assert Yes Yes Yes
auto No Yes Yes
Multi-declarator auto No Yes Yes
Removing old auto No Yes Yes
Trailing return types No Yes Yes
Lambdas V1.0 No Yes Yes
decltype No Yes Yes
Right angle brackets Yes Yes Yes
Extern templates Yes Yes Yes
nullptr No No yes
Strongly typed enums Partial Partial Partial
Forward declared enums Partial Partial Partial
Extended friend declarations Partial Yes Yes
Local and unnamed types as template arguments No Yes Yes
deleted and defaulted functions No Yes Yes
Allow typename outside of templates No Yes Yes
variadic templates No No Yes
New-style SFINAE (N2634) No No Yes
alias templates No No Yes
Late-specified return types No No Yes
Default template arguments for function templates No No Yes
Standard attributes (N2761) No No Yes
char16_t/char32_t types No No Partial on Windows;
Yes on Linux & Mac OS X
C++0x Core Language Features: Concurrency
exception_ptr No Yes Yes
Thread-local storage Partial Partial Partial
C++0x Core Language Features: C99
__func__ Yes Yes Yes
C99 preprocessor Yes Yes Yes
long long Yes Yes Yes

On Windows environment when using Intel C++ compiler with Visual Studio 2010*, the C++0x features supported by Visual C++ 2010 are enabled by default. Use "/Qstd=c++0x" to turn on the support for all other cases.
On Linux or Mac OS X environment use "-std=c++0x".

Please read the documentation for detail information under /Qstd (-std on Linux* or Mac OS* X) option.

See C99 Support in Intel(R) C++ Compiler article for supported C99 features.



Do you need more help?


This article applies to: Intel® C++ Compiler for Linux* Knowledge Base,   Intel® C++ Compiler for Mac OS X* Knowledge Base,   Intel® C++ Compiler for Windows* Knowledge Base,   Intel® Parallel Composer Knowledge Base