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.
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:| 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.