PL/I considerations under IMS

With IMS/ESA Version 4, PL/I supports PSBs with LANG=PLI and all others (including LANG=blank), except LANG=Pascal. With IMS/ESA Version 3 Release 1, PL/I supports PSBs with LANG=PLI only.

The SYSTEM(IMS™) compiler option must be specified for PL/I applications running under IMS. When SYSTEM(IMS) is specified, the OPTIONS(BYVALUE) attribute is implied for any external PROCEDURE that also has OPTIONS(MAIN). Further, the parameters to such a MAIN procedure must be POINTERs.

With IMS/ESA Version 3 Release 1 and Version 4, the parameters passed to language-IMS CALL interfaces such as PLITDLI are no longer required to be below the 16M line.

If an assembler program is driving a transaction program written in Enterprise PL/I for z/OS or PL/I for MVS & VM, the main procedure of the transaction must be compiled with SYSTEM(MVS™) option; the main procedure receives the parameter list passed from the assembler program in MVS style. IMS does not support PL/I MTF applications.