Compiler option changes in Enterprise COBOL V6
Compiler option | Comments |
---|---|
CONDCOMP | New option in Enterprise COBOL V6.3 with the service PTFs. It affects the behavior of conditional compilation directives and controls how conditional code will be displayed in the listing. |
COPYLOC | New
option in Enterprise COBOL V6.1
with the service PTFs, V6.2 with the service PTFs, and from V6.3.
It can be used to add either a PDSE (or PDS )
dataset or z/OS® UNIX directory
as an additional location to be searched for copy members during the
library phase. |
DEFINE | New option from Enterprise COBOL V6.2. It assigns a literal value to a compilation variable that is defined in the program by using the DEFINE directive with the PARAMETER phrase. |
INITCHECK | New option in Enterprise COBOL V6.1 with the service PTFs and from V6.2. It controls whether to check for uninitialized data items and issue warning messages when they are used without being initialized. |
INITIAL | New option in Enterprise COBOL V6.2 with the service PTFs and from V6.3. It causes a program and all of its nested programs to behave as if the IS INITIAL clause was specified on the PROGRAM-ID paragraph. |
INLINE | New option in Enterprise COBOL V6.1 with the service PTFs and from V6.2 and later versions. It controls the compiler to consider whether to inline procedures referenced by PERFORM statements in the source program. INLINE is a potential performance boosting option. (Note that INLINE was always in effect in COBOL V5.) |
INVDATA | New
option in Enterprise COBOL V6.2
with the service PTFs and from V6.3. The option supercedes the deprecated
ZONEDATA option. It tells the compiler whether data in USAGE DISPLAY
and PACKED-DECIMAL data items is valid, and if not, what the behavior
of the compiler should be. To ease your migration to COBOL V5 or
V6:
|
LP | New option from Enterprise COBOL V6.3. It can be used to indicate whether an AMODE 31 (31-bit) or AMODE 64 (64-bit) program should be generated with the related language features enabled. |
NUMCHECK | New
option in Enterprise COBOL V6.1
with the service PTFs and from V6.2. It controls whether to generate
implicit numeric class tests for zoned decimal and packed decimal
data items that are used as sending data items, and whether to generate SIZE
ERROR checking for binary data items. |
PARMCHECK | New option in Enterprise COBOL V6.1 with the service PTFs and from V6.2. It tells the compiler to generate an extra data item following the last item in WORKING-STORAGE. This buffer data item is then used at run time to check whether a called subprogram corrupted data beyond the end of WORKING-STORAGE. |
SUPPRESS | New option from Enterprise COBOL V6.1. It controls whether to ignore the SUPPRESS phrase of COPY statements. |
TUNE | New
option from Enterprise COBOL V6.3
with the service PTFs. It specifies the architecture for which the
executable program will be optimized. The default TUNE level matches the ARCH level if ARCH is specified. If ARCH is not specified, both ARCH and TUNE default to 8. |
VSAMOPENFS | New option from Enterprise COBOL V6.1. It affects the user file status reported from successful VSAM OPEN statements that require verified file integrity check. |
The following options are modified:
Compiler option | Comments |
---|---|
AFP | It controls the compiler usage of the Additional Floating Point (AFP)
registers that are provided by z/Architecture®
processors.
|
ARCH | It specifies the machine architecture for which the executable program
instructions are to be generated.
|
CURRENCY | From Enterprise COBOL 6.3, the literal
argument to the CURRENCY option can no longer be the character 'U '
or the character 'u '. |
INITCHECK | In Enterprise COBOL V6.1 with the service PTFs, V6.2 with the service PTFs,
and from V6.3 with the service PTFs, new suboptions LAX | STRICT are added to the
INITCHECK option to control whether the compiler will issue warning messages for
data items unless they are initialized on at least one, or on all, logical paths to a
statement. |
LANGUAGE | To change to uppercase English or Japanese compiler messages in COBOL V6, in addition to using the LANGUAGE compiler option, you must also set the Language Environment® runtime option NATLANG at compile time. We recommend using CEEOPTS DD in the compile JCL. For example, to change messages to Japanese, use the
LANGUAGE(JA) compiler option and also specify the NATLANG LE runtime option at compile time:
|
MAXPCF | New option. It instructs the compiler not to optimize code if the program
contains a complexity factor greater than n.
|
NOSTGOPT | In Enterprise COBOL V6.1, data items can get optimized with OPT(2) even when NOSTGOPT was in effect. In Enterprise COBOL V6.1 with the service PTFs and from V6.2, NOSTGOPT was changed so that no optimization of storage or data items occurs even with OPT(2). This is especially helpful for WORKING-STORAGE eye-catchers. |
NUMCHECK | From Enterprise COBOL V6.3, when invalid data is found at compile time, regardless of whether
NUMCHECK(MSG) or NUMCHECK(ABD) is in effect, an error-level
message is produced and the check is removed. |
RULES | In Enterprise COBOL V6.2 with the
service PTFs and from V6.3, the following new suboptions are added to the RULES compiler option:
|
SOURCE | From Enterprise COBOL V6.3 with the
service PTFs, new suboptions DEC | HEX are added to SOURCE
compiler option. If SOURCE(DEC) is in effect, the line numbers for the listing of
the source will be in decimal format. If SOURCE(HEX) is in effect, the line numbers
for the listing of the source will be in hexadecimal format. |
SSRANGE | In Enterprise COBOL V6.1 with the
service PTFs and from V6.2, new suboptions MSG | ABD are added to the SSRANGE
compiler option to control the runtime behavior of the COBOL program when a range check
fails. |
TEST | From Enterprise COBOL V6.2, new
suboptions SEPARATE | NOSEPARATE are added to the TEST compiler option to control
program object size on disk while retaining debugging capability. In addition, new combinations of
suboptions are supported in both the TEST and NOTEST compiler options, including TEST(NODWARF),
TEST(SEPARATE), and NOTEST(DWARF,SOURCE). |
The following options are removed:
Compiler option | Comments |
---|---|
LVLINFO | From Enterprise COBOL V6.1, the LVLINFO installation option is removed. The build level information is put where LVLINFO used to be, and the SERVICE compiler option can be used for user service level information in place of LVLINFO. |
ZONECHECK | In Enterprise COBOL V6.1 with the service PTFs and from V6.2, ZONECHECK is deprecated but is tolerated for compatibility, and it is replaced by NUMCHECK(ZON). |
For a detailed list of options supported for the various compiler versions, see Option comparison.
For a detailed list of compiler options that can affect performance, see How to tune compiler options to get the most out of V6 in the Enterprise COBOL Performance Tuning Guide.
For detailed descriptions of all the compiler options, see Compiler options in the Enterprise COBOL Programming Guide.