Rational Developer for System z
Enterprise COBOL for z/OS, Version 4.1, Programming Guide


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.

Table 1. Mutually exclusive compiler options
Specified Ignored1 Forced on1
CICS NOLIB LIB
DYNAM NODYNAM
NORENT RENT
DLL DYNAM NODYNAM
NORENT RENT
EXIT DUMP NODUMP
EXPORTALL NODLL DLL
DYNAM NODYNAM
NORENT RENT
MDECK NOLIB LIB
NSYMBOL(NATIONAL) NODBCS DBCS
OFFSET LIST NOLIST
SQL NOLIB LIB

TEST
TEST(HOOK)

NOOBJECT OBJECT
OPT(STD) or OPT(FULL) NOOPTIMIZE
THREAD NORENT RENT
WORD FLAGSTD NOFLAGSTD
  1. Unless in conflict with a fixed installation default option.

related references  
OPTFILE


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)