Error Numbers and Messages

The error numbers produced by syntax errors during processing of REXX programs are all in the range 3-49 (and this is the value placed in the variable RC when SIGNAL ON SYNTAX event is trapped). The language processor adds 20000 to these error return codes before leaving an exec in order to provide a different range of codes than those used by CMS EXEC and EXEC 2. When the language processor displays an error message, it first sets the CMSTYPE indicator to RT (Resume Typing), ensuring that the message will be seen by the user, even if HT (Halt Typing) was in effect when the error occurred.

External interfaces to the language processor can generate three of the error messages either before the language processor gains control or after control has left the language processor. Therefore, SIGNAL ON SYNTAX cannot trap these errors. The error numbers involved are: 3 and 5 (if the initial requirements for storage could not be met) and 26 (if on exit the returned string could not be converted to form a valid return code). Error 4 can be trapped only by SIGNAL ON HALT or CALL ON HALT. Five errors the language processor detects cannot be trapped by SIGNAL ON SYNTAX unless the label SYNTAX appears earlier in the program than the clause with the error. These errors include: 6, 12, 13, 22, and 30.

The CP command SET EMSG ON causes error messages to be prefixed with a CMS error code. The full form of the message, including this error code, is given in the message list.

The message list is ordered by the CMS message number. For your convenience, a table cross-referencing the REXX error code with the CMS message number precedes the message list.

In the message list, each message is followed by an explanation giving possible causes for the error. The same explanation can be obtained from CMS using the following command:
HELP MSG DMSnnnE  (where nnn is the CMS error number
and error type is either 'E' or'T')
The following is a list of the error codes and their associated CMS messages:
Table 1. List of Error Codes and CMS Messages
Error code CMS message   Error code CMS message
No number DMSREX255T   Error 26 DMSREX466E
Error 3 DMSREX451E   Error 27 DMSREX467E
Error 4 DMSREX452E   Error 28 DMSREX486E
Error 5 DMSREX450E   Error 29 DMSREX487E
Error 6 DMSREX453E   Error 30 DMSREX468E
Error 7 DMSREX454E   Error 31 DMSREX469E
Error 8 DMSREX455E   Error 32 DMSREX492E
Error 9 DMSREX456E   Error 33 DMSREX488E
Error 10 DMSREX457E   Error 34 DMSREX470E
Error 11 DMSREX458E   Error 35 DMSREX471E
Error 12 DMSREX459E   Error 36 DMSREX472E
Error 13 DMSREX460E   Error 37 DMSREX473E
Error 14 DMSREX461E   Error 38 DMSREX489E
Error 15 DMSREX462E   Error 39 DMSREX474E
Error 16 DMSREX463E   Error 40 DMSREX475E
Error 17 DMSREX465E   Error 41 DMSREX476E
Error 18 DMSREX491E   Error 42 DMSREX477E
Error 19 DMSREX482E   Error 43 DMSREX478E
Error 20 DMSREX483E   Error 44 DMSREX479E
Error 21 DMSREX464E   Error 45 DMSREX480E
Error 22 DMSREX449E   Error 46 DMSREX218E
Error 23 DMSREX1106E   Error 47 DMSREX219E
Error 24 DMSREX484E   Error 48 DMSREX490E
Error 25 DMSREX485E   Error 49 DMSREX481E

In these messages, the term language processor refers to the z/VM REXX/VM interpreter.

In addition to the following error messages, the language processor issues the terminal (unrecoverable) message DMSREX255T Insufficient storage for Exec interpreter.

For information and a complete listing of the REXX/VM error messages, see z/VM: CMS and REXX/VM Messages and Codes.