Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

noexcept in Intel Compiler 2013

Dix_Lorenz
Beginner
481 Views

Does noexcept actually work? The release note say it does, all I get is

error : expected a ";"

C++0x is enabled and as far as I can tell the C++ Compiler 2013 is installed (Intel Software Manager seems to think so).

Thanks,

Dix

PS: Totally off-topic, please bring back a search function for the forums (or am I too blind to see it?)

0 Kudos
4 Replies
Judith_W_Intel
Employee
481 Views
You need to use the -std=c++0x or -std=c+11 switch and your reference Gnu compiler must be 4.6 or later or you need to use the -gcc-version=460 switch. GNU only supports this in 4.6 or later with the -std=c++0x switch.
0 Kudos
Dix_Lorenz
Beginner
481 Views
This is under Windows, so I don't have a reference GNU compiler; the same code with "noexcept" does compile under clang/OSX though. This being Windows I can only select c++0x as the language. Range-based for loops work, so the compiler is the new one and it thinks it's C++11. It is in the release notes, that doesn't mean it's fully supported? There is a "partial" behind "Generalized constant expressions", "noexcept" is not qualified in any way. Where can I find a complete and correct list of supported C++11 features?
0 Kudos
Judith_W_Intel
Employee
481 Views
Yes it looks like we need to enable the noexcept feature on Windows under /Qstd=c++0x. This has been entered in our database as a defect as DPD200235204. Sorry for the inconvenience.
0 Kudos
Matt_Clarkson
Beginner
481 Views
When will this be released? We have a C++11 library that needs to be compiled on Windows. It uses noexcept on every function possible.
0 Kudos
Reply