Overview of the Enterprise COBOL for z/OS compilers and z/OS Language Environment runtime

This section provides an overview of the IBM® Enterprise COBOL for z/OS® compilers and the z/OS Language Environment runtime.

Enterprise COBOL Version 5 or Version 6 executables are program objects and can reside only in PDSE data sets. If your COBOL load libraries are in PDS data sets, copy the member to PDSE data sets and use PDSE data sets for your load libraries. IBM recommends that you allocate your PDSE load library data sets with RECFM=U, DSNTYPE=LIBRARY, and VERSION=2, and leave all the other attributes blank, like this in ISPF:
Record format . . . . U        
Record length . . . .          
Block size  . . . . .        
Data set name type    LIBRARY  
Data set version  . : 2        
This manual assumes that you have completed your runtime migration to Language Environment®. What does this mean? Briefly these are the conditions to be met before a COBOL runtime migration is complete:
  • The Language Environment data set SCEERUN is installed in LNKLST or LPALST.
  • There are no instances of COBLIB, VSCLLIB, or COB2LIB in LNKLST or LPALST.
  • There are no instances of COBLIB, VSCLLIB, or COB2LIB in JCL STEPLIB or JOBLIB statements or in CICS® startup JCL.
  • All statically bound runtime library routines for programs that are compiled with NORES have been REPLACEd with routines from Language Environment.
  • IGZEBST bootstrap modules for VS COBOL II programs that are compiled with RES were either linked with the VS COBOL II runtime version of IGZEBST that has APAR PN74000 applied, or IGZEBST was REPLACEd with IGZEBST from Language Environment.

If you understand these conditions, but your shop has not completed its runtime library migration, you must complete that migration before using this book. For help in completing your migration to Language Environment, see Chapter 3. Planning the move to Language Environment in the Enterprise COBOL 4.2 Compiler and Runtime Migration Guide.

Using Language Environment with Enterprise COBOL V5 or V6 and VS COBOL II programs

When running a mixture of VS COBOL II programs and Enterprise COBOL V5 or V6 programs:

  • A current version of IGZEBST is required:
    • For statically CALLed programs in CICS, you will need to replace IGZEBST in applications with VS COBOL II programs with the IGZEBST from LE with the PTFs for APAR PI33330 installed.
      Note: IGZEBST from LE with the PTFs for APAR PI33330 installed can also be used with any COBOL programs VS COBOL II and later without COBOL V5 or V6 programs.
    • For dynamically CALLed CICS programs, you just need to install the PTFs for APAR PI25079 on SCEERUN.
      Note: For statically CALLed programs in non-CICS, performance will be better if you replace IGZEBST in applications with VS COBOL II programs with the IGZEBST from LE with the PTFs for APAR PI33330 installed. It is not required. There is no issue with IGZEBST for dynamically called programs in non-CICS for calling VS COBOL II programs from COBOL V5 or V6 programs.
  • A current version of CEEBETBL, the Language Environment externals table, is required. If you are including object code bound some time ago with your COBOL V5 or V6 object code, you might be indirectly including an old version of CEEBETBL.

    If the length of CEEBETBL you bind is less than x'28' (or the length of the CEEBETBL in the current SCEELKED library), it is old and needs to be replaced, or you will encounter runtime abends or a terminating runtime message.

    If you rebind older object code with COBOL V5 or V6 as part of your migration, it is recommended that you specifically INCLUDE a current copy of CEEBETBL prior to INCLUDEs of the older object code, taking care that you do not inadvertently make CEEBETBL the entry point.

If you understand these conditions, and meet them all, you can skip to Planning to upgrade source programs.

If you do not understand these conditions, then please continue reading these overview chapters. If you then discover that your shop has not completed its runtime library migration, see Chapter 3. Planning the move to Language Environment in the Enterprise COBOL 4.2 Compiler and Runtime Migration Guide for help in completing your runtime library migration.