Conflicting compiler options
The Enterprise COBOL compiler can encounter conflicting compiler options in either of two ways: both the positive and negative form of an option are specified at the same level in the hierarchy of precedence, or mutually exclusive options are specified at the same level in the hierarchy.
When conflicting options are specified
at the same level in the hierarchy (such as specifying both DECK
and NODECK
in
a PROCESS
or CBL
statement), the
option specified last takes effect.
If you
specify mutually exclusive compiler options at the same level, the
compiler generates an error message and forces one of the options
to a nonconflicting value. For example, if you specify both OFFSET
and LIST
in
a PROCESS
statement in any order, OFFSET
takes
effect and LIST
is ignored.
However,
options coded at a higher level of precedence override any options
specified at a lower level of precedence. For example, if you code OFFSET
in
a JCL statement but LIST
in a PROCESS
statement, LIST
takes
effect because the options coded in the PROCESS
statement
and any options forced on by an option coded in the PROCESS
statement
have higher precedence.
Specified | Ignored1 | Forced on1 |
---|---|---|
CICS |
DYNAM |
NODYNAM |
NORENT |
RENT |
|
DLL |
DYNAM |
NODYNAM |
NORENT |
RENT |
|
EXPORTALL |
NODLL |
DLL |
DYNAM |
NODYNAM |
|
NORENT |
RENT |
|
NORENT |
RMODE(ANY) |
RMODE(24) |
NSYMBOL(NATIONAL) |
NODBCS |
DBCS |
OBJECT |
DECK |
NODECK |
OFFSET |
LIST |
NOLIST |
OPTIMIZE(0) |
INITCHECK |
NOINITCHECK |
PGMNAME(LM|LU) |
NAME |
NONAME |
TEST |
NOOBJECT and NODECK |
OBJECT and NODECK |
THREAD |
NORENT |
RENT |
WORD |
FLAGSTD |
NOFLAGSTD |
|