Developer Guide and Reference

Contents

Intel-supported Pragma Reference

The Intel® C++ Compiler supports the following pragmas to ensure compatibility with other compilers.

Pragmas Compatible with the Microsoft* Compiler

The following pragmas are compatible with the Microsoft* compiler. For more information about these pragmas, go to the Microsoft* Developer Network (http://msdn.microsoft.com).
Pragma
Description
alloc_text
Names the code section where the specified function definitions are to reside.
auto_inline
Excludes any function defined within the range where
off
is specified from being considered as candidates for automatic inline expansion.
bss_seg
Indicates to the compiler the segment where uninitialized variables are stored in the
.obj
file.
check_stack
The
on
argument indicates that stack checking should be enabled for functions that follow and the
off
argument indicates that stack checking should be disabled for functions that follow.
code_seg
Specifies a code section where functions are to be allocated.
comment
Places a comment record into an object file or executable file.
component
Controls collecting of browse information or dependency information from within source files.
conform
Specifies the run-time behavior of the
/Zc
:
forScope
compiler option.
const_seg
Specifies the segment where functions are stored in the
.obj
file.
data_seg
Specifies the default section for initialized data.
deprecated
Indicates that a function, type, or any other identifier may not be supported in a future release or indicates that a function, type, or any other identifier should not be used any more.
fenv_access
Informs an implementation that a program may test status flags or run under a non-default control mode.
float_control
Specifies floating-point behavior for a function.
fp_contract
Allows or disallows the implementation to contract expressions.
loop
Controls how the loop code will be considered or excluded from consideration by the auto-vectorizer.
init_seg
Specifies the section to contain C++ initialization code for the translation unit.
message
Displays the specified string literal to the standard output device (
stdout
).
optimize
Specifies optimizations to be performed on functions below the pragma or until the next optimize pragma; implemented to partly support the Microsoft* implementation of same pragma; for the Intel® C++ Compiler implementation, see the
optimize
reference page.
pointers_to_members
Specifies whether a pointer to a class member can be declared before its associated class definition and is used to control the pointer size and the code required to interpret the pointer.
pop_macro
Sets the value of the specified macro to the value on the top of the stack.
push_macro
Saves the value of the specified macro on the top of the stack.
region/endregion
Specifies a code segment in the Microsoft* Visual Studio* Code Editor that expands and contracts by using the outlining feature.
section
Creates a section in an
.obj
file. Once a section is defined, it remains valid for the remainder of the compilation.
vtordisp
The
on
argument enables the generation of hidden
vtordisp
members and the
off
disables them.
push
argument pushes the current
vtordisp
setting to the internal compiler stack.
pop
argument removes the top record from the compiler stack and restores the removed value of
vtordisp
.
warning
Allows selective modification of the behavior of compiler warning messages.
weak
Declares symbol you enter to be weak.

OpenMP* Standard Pragmas

The Intel® C++ Compiler currently supports OpenMP* TR4: Version 5.0 pragmas, as listed below. For more information about these pragmas, reference the OpenMP* TR4: Version 5.0 specification.
Intel-specific clauses are noted in the affected pragma description.
Pragma
Description
omp atomic
Specifies a computation that must be executed atomically.
omp barrier
Specifies a point in the code where each thread must wait until all threads in the team arrive.
omp cancel
Requests cancellation of the innermost enclosing region of the
ty