Restrictions for AMODE

AMODE 24 execution is not supported in the following cases, and the applications must run in AMODE 31. This is the same set of AMODE 24 restrictions as COBOL V3 and V4.
  • Programs containing XML PARSE statements
  • Programs containing XML GENERATE statements
  • Program objects containing COBOL bound together with C, C++, or PL/I programs, and communicating via static CALL
  • Programs containing object-oriented language syntax, such as INVOKE statements, or object-oriented class definitions
  • Programs compiled with any of the following compiler options:
    • DLL
    • PGMNAME(LONGUPPER)
    • PGMNAME(LONGMIXED)
  • Multithreaded applications
    Note: A program compiled with the THREAD option can run in AMODE 24, but only in an application that does not have multiple threads or PL/I tasks.
  • Programs run from the z/OS® UNIX file system
    Note: An AMODE 31 driver program resident in the z/OS UNIX file system can contain a dynamic call to an AMODE 24 program module resident in an MVS PDSE.
  • Programs used as COBOL compiler exit modules that are specified on the EXIT compiler option
  • Language Environment® enclaves that use XPLINK, including either the enclaves that contain non-COBOL programs compiled with the XPLINK compiler option, or run with the XPLINK runtime option
Note: To run COBOL programs with addressing mode 24, you must compile all COBOL programs with Enterprise COBOL V5.1.1, or later versions; or Enterprise COBOL V4.2 or earlier versions. If any component of a program object is compiled with Enterprise COBOL V5.1.0, the program object must run in addressing mode 31. COBOL programs that run with addressing mode 24 must be linked with the binder option RMODE(24).