The prefix
? is valid alone or with
one of the alphabetic character options. You can specify the prefix more
than once, if desired. Each occurrence
of a prefix on an instruction reverses the action of the previous prefix.
The prefix must immediately precede the option (no intervening
whitespace).
The prefix
?
controls interactive debugging. During normal execution, a TRACE option
with a prefix of
?
causes interactive debugging to be switched
on. (See
Chapter 15, Debugging Aids
for full details of this facility.) When interactive
debugging is on, interpretation pauses after most clauses that are traced.
For example, the instruction
TRACE ?E
makes the language processor
pause for input after executing any command that returns an error, that is,
a nonzero return code or explicit setting of the error condition by the command
handler.
Any TRACE instructions in the program being traced are ignored to ensure
that you are not taken out of interactive debugging unexpectedly.
You can switch off interactive debugging in several ways:
Entering
TRACE O
turns off all tracing.
Entering
TRACE
with no options restores the defaults—it
turns off interactive debugging but continues tracing with TRACE Normal (which
traces any failing command after execution).
Entering
TRACE ? turns off
interactive debugging and continues tracing with the current option.
Entering a TRACE instruction with a
? prefix before the option
turns off interactive debugging and continues tracing with the new option.
Using the
? prefix, therefore, switches
you in or out of
interactive debugging. Because the language processor ignores any further
TRACE statements in your program after you are in interactive debug mode,
use
CALL TRACE "?" to turn off interactive
debugging.