Make your own free website on
4.3.1 The SYNTAX condition
The SYNTAX condition is of internal origin, and is raised when any
syntax or runtime error is discovered by the REXX interpreter.  It
might be any of the situations that would normally lead to the
abortion of the program and the report of a REXX error message,
except error message number 4 (Program interrupted), which is
handled by the HALT condition.

There are several differences between this condition and the
standard condition:

    It is not possible to trap this condition with the method
  CALL, only method SIGNAL. The reason for this is partly that
  method CALL tries to continue execution until next boundary before
  triggering the trap. That might not be possible with syntax or
  runtime errors.

    When this condition is trapped, the special variable RC is
  set to the REXX error number of the syntax or runtime error that
  caused the condition. This is done just before the setting of the
  special variable SIGL.

    The default action of this condition if the trap state is
  OFF, is to abort the program with a traceback and error message.

    There is not delay-action for condition SYNTAX, since it can
  not be trapped by method CALL, and consequently never can get into
  state DELAY.

The descriptive text returned by CONDITION() when called with the
Description option for condition SYNTAX, is implementation
dependent, and may also be a nullstring. Consult the
implementation-specific documentation for more information.