Language Environment supports a FIXED BIN(31) four-byte user return code value for PLIRETC, PLIRETV, and OPTIONS(RETCODE). This support removes the restriction of maximum value 999. OS PL/I applications must be relinked with Language Environment in order to take advantage of the four-byte user return-code value.
The following table shows how PL/I user return code is supported:
|
Function |
OS PL/I load module |
OS PL/I object module linked with Language Environment |
Enterprise PL/I load module |
|---|---|---|---|
|
PLIRETC built-in function |
2-byte value with restriction of 999 |
4-byte value without restriction of 999 |
4-byte value without restriction of 999 |
|
PLIRETV built-in function |
2-byte value |
Lower 2 bytes of a 4-byte value |
4-byte value |
|
RETCODE option |
Lower 2 bytes of R15 |
Lower 2 bytes of R15 |
2-byte value |
For PLIRETC, relinked OS PL/I load modules can set a 4-byte user return code value.
Under Language Environment, the PL/I user return code is always reset to zero upon return from the PLISRTx invocation. This is not the case with OS PL/I run time.