You can signal T_I_U and T_I_S directly with the CEESGL callable
service. Two reasons you might need to do this are:
- To force the driving of a FINISH ON-unit or similar construct
that would perform clean-up activities
- To test a PL/I ON-unit or user-written condition handler that
you have designed to handle T_I_U or T_I_S
If you signal T_I_U or T_I_S by calling CEESGL with the feedback
code parameter, the following occurs:
- Language Environment visits each stack frame on the stack, beginning with the
stack frame in which the condition was signaled, and progressing towards
older stack frames. At each stack frame, HLL and user-written condition
handlers are given a chance to handle the condition.
T_I_U and
T_I_S both map to the PL/I FINISH condition. Therefore, an established PL/I FINISH
ON-unit can be invoked to handle the condition.
- If all stack frames have been visited, and the condition remains
unhandled, or a FINISH ON-unit has processed the condition and returned, Language Environment returns
the CEE069 condition token to the routine that called CEESGL, and
processing resumes at the next sequential instruction.