Intel C++ 13 XE

Intel C++ 13 XE

Bild des Benutzers chkone

I test the Intel C++ 2013 XE, with an existing project (originaly with MS-2012-VC++ in x64/Intel C++ 2011 XE)
When I port it with Intel C++ 13 I have some trouble for example with ipp, compiler say me :
"Multi-Threaded Static Library not installed" but I install everything...
And in :
It can read the Intel C++ 2013 support the "User-Defined Literals" but the simple code :

constexpr float operator "" _Incr( float fValue )
return fValue + 1.f;

Don't build :
1> Building with Intel(R) C++ Compiler XE 13.0
1> ***** ClCompile (Win32 - Intel C++)
1> main.cpp
1>main.cpp(4): error : expected an operator
1> constexpr float operator "" _Incr( float fValue )
1> ^
1>main.cpp(4): error : expected a ";"
1> constexpr float operator "" _Incr( float fValue )
1> ^

I activate :
Do you know how can I fix the second trouble ? The first are fixed by changing the linking.

PS: English isn't my mother language I hope I was understanble.

4 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.
Bild des Benutzers Judith Ward (Intel)

Two problems here:

(1) What are the quotes doing in the declararation
(2) An operator declaration must declare an actual operator (not a name like _Incr)


constexpr float operator "" _Incr( float fValue )

should really be:

constexpr float _Incr(float fValue) // function declaration


constexpr float operator++(float fValue) // operator declaration

The problem might be caused by some incorrect macro expansion,


Bild des Benutzers Judith Ward (Intel)

In the link you mentioned "User Defined Literals" is listed on the slide under C++11 features NOT yet implemented.

Bild des Benutzers chkone

The quotes is in the C++11, the prototype for "User Defined Literals"

Thanks, indeed after some others search, the "User Defined Literals" are not yet implemented in Intel C++ 13 XE.


Melden Sie sich an, um einen Kommentar zu hinterlassen.