Developer Guide and Reference

Contents

General Rules for Compiler Options

This section describes general rules for compiler options and it contains information about how we refer to compiler option names in descriptions.

General Rules for Compiler Options

You cannot combine options with a single dash (Linux*
and
macOS*
) or slash (Windows*). For example:
  • On Linux*
    and
    macOS*
    systems: This is incorrect:
    -Ec
    ; this is correct:
    -E -c
  • On Windows* systems: This is incorrect:
    /Ec
    ; this is correct:
    /E /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
    macOS*
    systems,
    -unroll
    [=
    n
    ] or
    -U
    name
    (string)
  • On Windows* systems,
    /Fa
    myfile.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
ax
option accepts several keywords.
To specify multiple keywords, you typically specify the option multiple times.
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.