How can I verify Build or Update numbers of Intel C++ compiler at compile time?

How can I verify Build or Update numbers of Intel C++ compiler at compile time?

Ritratto di Sergey Kostrov

How can I verify Build or Update numbers of Intel C++ compiler at compile time? I'm currently using three versions of Intel C++ compiler and when compiling some sources their outputs look like: [ Version 8.1 ] ... Compiling with Intel(R) C++ Compiler 8.1.038 [IA-32]... (Intel C++ Environment) Stdphf.cpp ... [ Version 12.1.3 ] ... Compiling with Intel(R) C++ Compiler XE 12.1.3.300 [IA-32]... (Intel C++ Environment) Stdphf.cpp ... [ Version 13.0.0 ] ... Compiling with Intel(R) C++ Compiler XE 13.0.0.089 [IA-32]... (Intel C++ Environment) Stdphf.cpp ... and I changed a font to bold for numbers I need to verify at compile time. I know that Intel C++ compiler specific macros __INTEL_COMPILER and __INTEL_COMPILER_BUILD_DATE provide information about some release and they could be used. So, I wonder if another Intel C++ compiler specific macros with some additional information about release exist? Thanks in advance.

11 post / 0 new
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione
Ritratto di Sergey Kostrov

If I use Intel C++ compiler specific macros __INTEL_COMPILER and __INTEL_COMPILER_BUILD_DATE during build process here are an example what values they have:

[ Version 8.1 ]
...
Compiling with Intel(R) C++ Compiler 8.1.038 [IA-32]... (Intel C++ Environment)
Stdphf.cpp
Diagnostics: Compiler Version: 810
Diagnostics: Compiler Build Date: 20060606
...

[ Version 12.1.3 ]
...
Compiling with Intel(R) C++ Compiler XE 12.1.3.300 [IA-32]... (Intel C++ Environment)
Stdphf.cpp
Diagnostics: Compiler Version: 1210
Diagnostics: Compiler Build Date: 20120130
...

[ Version 13.0.0 ]
...
Compiling with Intel(R) C++ Compiler XE 13.0.0.089 [IA-32]... (Intel C++ Environment)
Stdphf.cpp
Diagnostics: Compiler Version: 1300
Diagnostics: Compiler Build Date: 20120731
...

and as you can see numbers 038, 300 and 089 are Not displayed.

Ritratto di Sergey Kostrov

Here are some codes:

#define _STRING2( x ) #x
#define _STRING( x ) _STRING2( x )
...
#pragma message ( "Diagnostics: Compiler Version: " _STRING( __INTEL_COMPILER ) )
#pragma message ( "Diagnostics: Compiler Build Date: " _STRING( __INTEL_COMPILER_BUILD_DATE ) )
...

Ritratto di jimdempseyatthecove

A macro that returns:  Intel(R) C++ Compiler XE 13.0.0.089 [IA-32]

would be nice.

Jim

www.quickthreadprogramming.com
Ritratto di Judith Ward (Intel)

 

Our latest (under development compiler) has a new macro called __INTEL_COMPILER_UPDATE. I can't tell what it's going to be set to because it is currently 0 since we haven't put out a release yet. But it sounds like this could be what you are looking for...

Ritratto di Sergey Kostrov

>>...Our latest (under development compiler) has a new macro called __INTEL_COMPILER_UPDATE...

Thanks for the update and it is really what I need. Of course I understand that in versions 8 or 12 I won't be able to use it.

By the way, Microsoft C++ compiler has a macro _MSC_FULL_VER but it doesn't include update number.

Ritratto di Sergey Kostrov

I also see a very strange problem:

As soon as Intel software engineer makes a new post in a thread 1st post in the thread is Re-Formatted. Take a look how my 1st post looks like now...

Ritratto di jimdempseyatthecove

Sergey,

Did you post as:

Bla bla bla my code follows:
&[;cpp&];      Sergey, remove ampersand and semicolon
int main()
...
&[;/cpp&];     Sergey, remove ampersand and semicolon keep /

Jim Dempsey

www.quickthreadprogramming.com
Ritratto di Sergey Kostrov

>>...Did you post as:
>>
>>Bla bla bla my code follows:
>>&[;cpp&]; Sergey, remove ampersand and semicolon
>>...

No and the editor's mode was 'Rich-text' disabled.

Ritratto di Sergey Kostrov

In overall, a set of diagnostic macros will be very helpful. Please take a look at these two examples:

[ Example of Output - 1 ]
...
*** Message: Compiling with Intel C++ v12.1.3 ***
*** Message: Configuration - Desktop - _WIN32_ICC - RELEASE ***
# Diagnostics: Environment ID: "8.0"
# Diagnostics: Environment CODE: "Default"
# Diagnostics: Compiler ID: ( ( 5000 ) + 10000 )
# Diagnostics: Compiler CODE: "ICC"
# Diagnostics: Compiler VERSION: 1210
# Diagnostics: Compiler BUILD DATE: 20120130
*** Message: Compiling for Intel Processing Unit ( 32-bit ) ***
...

[ Example of Output - 2 ]
...
*** Message: Compiling with Visual Studio 2005 ***
*** Message: Configuration - Windows Mobile 5.0 - _WIN32CE_MSC - RELEASE ***
# Diagnostics: Environment ID: "8.0"
# Diagnostics: Environment CODE: "VS2005"
# Diagnostics: Compiler ID: 1400
# Diagnostics: Compiler CODE: "MSCCE"
# Diagnostics: Compiler VERSION: 140060131
# Diagnostics: Compiler BUILD DATE: 20050707
*** Message: Compiling for ARM Processing Unit ***
...

Ritratto di jimdempseyatthecove

Sergy,

I believe Rich Text or Not Rich Text has no effect on what occures with using &[;xxx&]...&[;/xxx&]; (ampersand nad semicolon removed)
Where xxx is one of: bash, csharp, cpp, css, fortran, jscript, java, perl, php, plain, python, r, ruby, sql, xml, html, javascript, s, splus.

The two tags are not html either, rather the websit script uses these identifiers to reformat the enclosed text in a format familliar with the language specified. Example of which is cpp programmers tend to prefer that a newline at the end of a statement is not removed by the editor and shows as a new line as opposed to new paragraph.

Jim Dempsey

www.quickthreadprogramming.com

Accedere per lasciare un commento.