z/OS message

IGZ0014W: IGZEOPT or IGZETUN is no longer supported

IGZ0014W is a warning that a VS COBOL II load module contains the old IGZEOPT or IGZETUN runtime options CSECT, which Language Environment no longer supports, so the settings in it were ignored. The program keeps running with the region's or system's Language Environment options instead.

Other names for this code

Also written as IGZ0014, IGZ014W, IGZ0014W IGZEOPT, IGZ0014W IGZETUN, IGZEOPT is no longer supported, IGZETUN is no longer supported.

What it means

Before Language Environment, VS COBOL II programs had their own runtime library. A program could carry its runtime settings in a small CSECT linked into the load module. IGZEOPT held runtime options. Its DEBUG option, for example, controlled whether WITH DEBUGGING MODE code ran. IGZETUN held tuning values, mostly about storage.

Language Environment replaced that library and uses its own option tables instead, such as CEEDOPT, CEECOPT for CICS and CEEUOPT linked into a program. When it finds IGZEOPT or IGZETUN in a module, it ignores the contents and writes IGZ0014W to say so. The message names which CSECT it found.

The W suffix makes this a warning. Nothing stops. The program runs, but with the default options that apply to it rather than the ones in the old CSECT.

IBM's technote describes the message for VS COBOL II modules in CICS Transaction Server. Since CICS TS 2.1, CICS requires Language Environment for COBOL, so old modules that still carry these CSECTs produce the warning. In CICS, Language Environment messages go to the CESE transient data queue.

Common causes

  • A VS COBOL II module was link-edited with an explicit INCLUDE of IGZEOPT or IGZETUN, and it is still in use unchanged.
  • An old module was relinked with link-edit JCL or binder statements that still include those CSECTs.
  • A shop-wide options CSECT from the VS COBOL II days was linked into many programs, so the warning appears for each of them.

How to find the problem

  1. Note which name the message gives, IGZEOPT or IGZETUN, and which transaction or program was running.
  2. Run AMBLIST, or look at the binder map from the last link-edit, to see whether the module contains the IGZEOPT or IGZETUN CSECT.
  3. Find out what the old CSECT set, so you know whether the program needs any of those settings. Check the source the CSECT was assembled from, if your shop still has it.
  4. In CICS, use the CLER transaction to see the Language Environment runtime options the region uses now.

How to fix it

  • Relink the module with binder REMOVE IGZEOPT or REMOVE IGZETUN statements, or drop the INCLUDE for them from the link-edit.
  • If you only want the message gone in CICS, IBM describes a user condition handler. Build and install the sample CEEWUCHA handler in the region and set USRHDLR(CEEWUCHA) in CEECOPT.
  • If the program really needs settings that differ from the region defaults, build a CEEUOPT with those options and link it into the module.
  • Plan to recompile old VS COBOL II programs with Enterprise COBOL. The compiler and its runtime library have long been out of service.

What it looks like

IGZ0014W IGZEOPT is no longer supported. Its content was ignored.

IBM documentation

IBM z/OS documentation. Use the documentation for your installed release.

This link opens the relevant IBM reference library or lookup instructions. Match the complete code and your installed product release; it is not a code-specific review.

Report a correction to WND Software.

Questions

Is IGZ0014W harmful?

The warning itself does no harm and the program keeps running. The point to check is that the program now runs with default Language Environment options, which may differ from what the old CSECT set.

Does removing IGZEOPT change how the program runs?

Not under Language Environment, because the contents were already being ignored. Removing it just stops the warning.

What did IGZETUN do?

It held tuning values for the old VS COBOL II runtime, mostly about how storage was used. Language Environment has its own options for that.