CICS preprocessor options for syntax checks
The Developer for z/OS® product sets CICS® preprocessor options appropriate to the level of CICS installed on the workstation or remote system. You can follow several scenarios for local and remote syntax checking of CICS programs and how the product handles each.
Local syntax check of a remote CICS program
The following scenarios illustrate how the Developer for z/OS product sets compiler options for a local syntax check of a remote CICS program:- On the Runtime Environments page for a remote
file, you select CICS (contains EXEC CICS statements) and
specify a level of CICS from
the list. The Developer for z/OS product
sets compiler options for the local syntax check according to the
remote compiler options specified:
- Ensures CICS TXSeries® 6.1 or higher is installed.
- Changes the compiler options to include CICS('CTSxx'),NOCOMPILE,
where xx is the level of CICS selected from the list.Note: For PL/I, the compiler option is pp(CICS('CTSxx').
- Ignores Preprocessor options.
- Performs a syntax check with the CICS('CTSxx') or pp(CICS('CTSxx') compiler option, causing the integrated CICS translator with the specified syntax to be started.
- On the Local Compile Options page for a remote file, you specify the CICS('CTSxx') (for COBOL) or pp(CICS('CTSxx') (for PL/I) option,
where xx is the level of CICS. The Developer for z/OS product
uses the option that is specified for local syntax check using host CICS syntax and does the following
operations:
- Ensures that TXSeries is installed.
- When the CICS compiler option is specified, the Preprocessor options are ignored on a syntax check.
- Performs a syntax check with the CICS('CTSxx') (for COBOL) or pp(CICS('CTSxx') (for PL/I) compiler option, causing the integrated CICS translator with the specified syntax to be started.
IBM® Developer for z/OS does not support
the following functions on Linux® and macOS: bidirectional
enablement with remote debugging, workstation-based debugging, local COBOL or PL/I builds, local
preprocessors for PL/I files, local syntax check of PL/I files, or show dependencies for PL/I
files.
Local syntax check of a local CICS program
The following scenarios illustrate how the Developer for z/OS product sets compiler options for a local syntax check of a local CICS program:- On the Local Compile Options page for a local
file, you specify that an integrated CICS syntax
check must take place. The Developer for z/OS product
sets compiler options for the local syntax check as follows, ensuring
that the integrated preprocessor is used:
- Ensures CICS TXSeries 6.1 or higher is installed.
- Changes the compiler options to include CICS.
- Preprocessor options are ignored on the syntax check.
- Performs the syntax check using the integrated CICS translator.
- On the Local Compile Options page for a local file, you specify the CICS('CTSxx') (for COBOL) or pp(CICS('CTSxx') (for PL/I) option,
where xx is the level of CICS. The Developer for z/OS product
sets compiler options for the local syntax check as follows, ensuring
that the integrated preprocessor is used with the level of CICS Transaction Server syntax
specified:
- Ensures that TXSeries 6.1 or higher is installed.
- Ignores Preprocessor options.
- Performs the syntax check using the integrated CICS translator.
- On the Local Compile Options page for a local
file, you specify the -p preprocessor option that indicates use of
CICSTCL (CICS Translate Compile
Link) with the integrated translator. The Developer for z/OS product
uses the option that is specified for local syntax check with the
integrated translator and does the following operations:
- Ensures that TXSeries 6.1 or higher is installed.
- Ignores Preprocessor options.
- Adds the CICS compiler option for syntax check.
- Performs a syntax check with the CICS compiler option, causing the integrated CICS translator to be started.
Local build of a local CICS program
The following scenarios illustrate how the Developer for z/OS product sets compiler options for a local build of a local CICS program (building a DLL to run in a region):- On the Local Compile Options page for a local
file, you specify the -p preprocessor option, indicating use of CICSTCL
(CICS Translate Compile Link)
with the integrated translator. The Developer for z/OS product
uses the option that is specified for the local build with the integrated
translator and runs two compilation passes as follows:
- Ensures that TXSeries 6.1 or higher is installed.
- On the compilation pass, the Developer for z/OS product:
- Changes options that are fed to the compiler to include CICS.
- Ensures that the integrated translator is called and ignores the Preprocessor field.
- Performs the compilation as though it was a regular (not CICS) compilation.
- On the CICSTCL pass, the Developer for z/OS product:
- Performs the CICSTCL pass with the -p and other options that are specified in the Preprocessor field.
- On the Local Compile Options page for a local
file, you specify the CICS compiler
option for completing a compilation with an integrated CICS translator. The Developer for z/OS product
uses the option that is specified for the local build with the integrated
translator and runs two compilation passes as follows:
- Ensures CICS TXSeries 6.1 or higher is installed.
- On the compilation pass, the Developer for z/OS product:
- Passes the CICS compiler option to the compiler.
- Ensures that the integrated translator is called and ignores the Preprocessor field.
- Performs the compilation as though it were a regular (not CICS) compilation.
- On the CICSTCL pass, the Developer for z/OS product:
- Infers, by the presence of the CICS compiler option, that you also mean to use the integrated translator for the CICSTCL.
- Adds the -p preprocessor option and performs the CICSTCL pass with the -p and other options that are specified in the Preprocessor options field.
- On the Local Compile Options page for a local file, you specify the CICS('CTSxx') (for COBOL) or pp(CICS('CTSxx') (for PL/I) option, where xx is the level of CICS. The Developer for z/OS product issues a warning message and writes a warning to the log. The CICS('CTSxx') or pp(CICS('CTSxx') compiler option is meant only for syntax checking.