C and C++


The Intel Compiler Model



Overview

Unlike other compilers modeled by CodeSonar (except ecomppc), mcpcom is not a compiler driver and is not called directly. The model is available on all platforms.

Compiler
model
Modeled native compiler Source file extensions Description
mcpcom mcpcom .c, .C, .cc, .CC, .cpp, .cxx, .i Intel MCPCOM C/C++ Compiler

Availability

Platform Availability The mcpcom compiler model is available for all platforms.
Default Recognition/Handling By default, compilations are recognized and handled as follows.
Platform Native Compiler Model Used
Non-Windows systems only mcpcom mcpcom
Specifying Additional Mappings Windows: The mcpcom model is disabled by default on Windows. The native compiler executable (mcpcom.exe) reads the contents of the Visual C++ executable (cl.exe), but CodeSonar's default mapping of cl.exe to the cl compiler model will interfere with this so must be explicitly disabled if you want to build and analyze a CodeSonar project based on one or more mcpcom.exe compilations. To perform the required disabling and enabling operations, always use the intel preset when building with mcpcom.exe on Windows.

All systems: If your compiler executable has a different name, specify a corresponding COMPILER_MODELS rule to map your compiler executable to the mcpcom model.
(For Windows, this is in addition to specifying the intel preset.)

For full details of all native compilers recognized by CodeSonar by default, see section Compilers Recognized by CodeSonar.

Options

We do not discuss the command line options to mcpcom here because it should never be called directly. Instead, call icc, icpc, or icl, which will take care of translating the command line options.

Predefined Macros

The model defines the following macros in addition to the standard CodeSonar predefined macros.

__EDG__ =1
__EDG_VERSION__ An integral value that encodes the version number of the EDG C front end used by the model. If the front end version is MAJOR.MINOR, the value is MAJOR*100+MINOR.