In general, if more than one variation of the same option is specified (with the exception of xref and attr), the compiler uses the setting of the last one specified. Compiler options specified on the command line must appear in the order you want the compiler to process them.
If a command-line flag is valid for more than one compiler program (for example -B, -W, or -I applied to the compiler, linkage editor, and assembler program names), you must specify it in cppopt, codeopt, inlineopt, ldopt, or asopt in the configuration file. The command-line flags must appear in the order that they are to be directed to the appropriate compiler program.
Two exceptions to the rules of conflicting options are the -Idirectory and -Ldirectory options, which have cumulative effects when they are specified more than once.
In most cases, conflicting or incompatible options are resolved according to the precedence shown in the following figure:
Most options that do not follow this scheme are summarized in the following table.
Option | Conflicting Options | Resolution |
---|---|---|
halt | Severity specified | Lowest severity specified. |
-qnoprint | xref|attr|source|listopt|list | -qnoprint |
-qfloat=rsqrt | -qnoignerrno | Last option specified |
xref | xref=FULL | xref=FULL |
attr | attr=FULL | attr=FULL |
-p |-pg |-qprofile | -p |-pg |-qprofile | Last option specified |
hsflt | rndsngl|spnans | hsflt |
hssngl | rndsngl|spnans | hssngl |
-E | -P|-o|-S | -E |
-P | -c|-o|-S | -P |
-# | -v | -# |
-F | -B|-t|-W|-qpath|configuration file settings | -B|-t|-W|-qpath |
-qpath | -B|-t | -qpath overrides -B and -t |
-S | -c | -S |
Specify Compiler Options for Architecture-Specific, 32- or
64-bit Compilation