Intel® C++ Compiler 16.0 User and Reference Guide
This section includes descriptions of all the current Linux*, OS X*, and Windows* compiler options. The option names are arranged by functional category, and within each category, the options are listed in alphabetical order.
Each option description contains the following information:
The primary name for the option and a short description of the option.
Architecture Restrictions
This section only appears if there is
a known architecture restriction for the option.
Restrictions may appear for any of the following architectures:
IA-32 architecture
Intel® 64 architecture
Intel® 64 architecture targeting Intel® Many Integrated Core Architecture (Intel® MIC Architecture)
Note that within the relevant compiler option descriptions, this architecture will be referred to as: Intel® 64 architecture targeting Intel® MIC Architecture
Intel® 64 architecture targeting the Intel® Xeon Phi™ coprocessor x100 product family (formerly code name Knights Corner)
Intel® 64 architecture targeting the Intel® Xeon Phi™ coprocessor (code name Knights Landing)
Certain operating systems are not available on all the above architectures. For the latest information, please check your Release Notes.
Syntax
This shows the syntax on Linux* and OS X* systems and the
syntax on Windows* systems. If the option has no syntax on one of these
systems, that is, the option is not valid on a particular operating system, it
will specify "None".
Arguments
This shows any arguments (parameters) that are related to
the option. If the option has no arguments, it will specify "None".
Default
This shows the default setting for the option.
Description
This shows the full description of the option. It may also
include further information on any applicable arguments.
IDE Equivalent
This shows information related to the integrated
development environment (IDE) Property Pages on Windows*, Linux*, and OS X*
systems. It shows on which Property Page the option appears, and under what
category it's listed. The Windows* IDE is Microsoft* Visual Studio* .NET; the
Linux* IDE is Eclipse*; the OS X* IDE is Xcode*. If the option has no IDE
equivalent, it will specify "None".
Alternate Options
This lists any options that are synonyms for the described
option. If there are no alternate option names, it will show "None".
Some of the alternate option names are
deprecated and may be removed in future releases.
Many options have an
older spelling where underscores ("_") instead of hyphens ("-") connect the
main option names. The older spelling is a valid alternate option name.
Some option descriptions may also have the following:
Example
This shows a short example that includes the option
See Also
This shows where you can get further information on the
option or related options.
The following conventions are used as shortcuts when referencing compiler option names in descriptions:
Many options have names that are the same on Linux*, OS X*, and Windows*, except that the Windows form starts with an initial / and the Linux and OS X form starts with an initial -. Within text, such option names are shown without the initial character; for example, check.
Many options have names that are the same on Linux*, OS X*, and Windows*, except that the Windows form starts with an initial Q. Within text, such option names are shown as [Q]option-name.
For example, if you see a reference to [Q]ip, the Linux* and OS X* form of the option is -ip and the Windows form of the option is /Qip.
Several compiler options have similar names except that the Linux* and OS X* forms start with an initial q and the Windows form starts with an initial Q. Within text, such option names are shown as [q or Q]option-name.
For example, if you see a reference to [q or Q]opt-report, the Linux* and OS X* form of the option is -qopt-report and the Windows form of the option is /Qopt-report.
Compiler option names that are more dissimilar are shown in full.
You cannot combine options with a single dash (Linux* and OS X*) or slash (Windows*). For example:
On Linux* and OS X* systems: This is incorrect: -wc; this is correct: -w -c
On Windows* systems: This is incorrect: /wc; this is correct: /w /c
All compiler options are case sensitive. Some options have different meanings depending on their case; for example, option "c" prevents linking, but option "C" places comments in preprocessed source output.
Options specified on the command line apply to all files named on the command line.
Options can take arguments in the form of file names, strings, letters, or numbers. If a string includes spaces, the string must be enclosed in quotation marks. For example:
On Linux* and OS X* systems, -dynamic-linker mylink (file name) or -Umacro3 (string)
On Windows* systems, /Famyfile.s (file name) or /V"version 5.0" (string)
Compiler options can appear in any order.
On Windows* systems, all compiler options must precede /link options, if any, on the command line.
Unless you specify certain options, the command line will both compile and link the files you specify.
You can abbreviate some option names, entering as many characters as are needed to uniquely identify the option.
Certain options accept one or more keyword arguments following the option name. For example, the arch option accepts several keywords.
To specify multiple keywords, you typically specify the option multiple times. However, there are exceptions; for example, the following are valid: -axNB (Linux*) or /QaxNB (Windows*).
Compiler options remain in effect for the whole compilation unless overridden by a compiler #pragma.
To disable an option, specify the negative form of the option.
On Windows* systems, you can also disable one or more optimization options by specifying option /Od last on the command line.
On Windows* systems, the /Od option is part of a mutually-exclusive group of options that includes /Od, /O1, /O2, /O3, and /Ox. The last of any of these options specified on the command line will override the previous options from this group.
If there are enabling and disabling versions of an option on the command line, the last one on the command line takes precedence.