Developer Guide and Reference

Contents

ISO Standard Predefined Macros

The ISO/ANSI standard for the C language requires that certain predefined macros be supplied with conforming compilers.
The compiler includes predefined macros in addition to those required by the standard. The default predefined macros differ among Windows*, Linux*
, and
macOS*
operating systems
due to the default
/Za
compiler option on Windows*
. Differences also exist on Linux*
and
macOS*
as a result of the
-std
compiler option.
The following table lists the macros that the Intel® C++ Compiler supplies in accordance with this standard:
Macro
Value
__DATE__
The date of compilation as an 11-character string literal in the form
mm dd yyyy
. If the day is less than 10 characters, a space is added before the day value.
__FILE__
A string literal representing the name of the file being compiled.
__LINE__
The current line number as a decimal constant.
__STDC__
Defined when compiling a C translation unit with the
Za
compiler option. (Windows*)
__STDC_HOSTED__
Defined and value is
1
only when compiling a C translation unit with
/Qstd
=c99
.
__STDC_VERSION__
Defined and value is
199901L
only when compiling a C translation unit with
/Qstd
=c99
.
__STDC_WANT_DEC_FP__
Defined when compiling with option
D
. (Windows*, Linux*)
Define this macro and include the respective header files to get the functions, macros, and types that comprise support for decimal floating-point functionality.
__TIME__
The time of compilation as a string literal in the form
hh:mm:ss
.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804