Default Actions for Unhandled Exceptions
Default Actions for Unhandled Exceptions
If an exception message is percolated to the control boundary, the system takes a default action. If the exception is a notify message, the system sends the default reply, handles the exception, and allows the sender of the notify message to continue processing. If the exception is a status message, the system handles the exception and allows the sender of the status message to continue processing. If the exception is an escape message, the system handles the escape message and sends a function check message back to where the resume cursor is currently positioned. If the unhandled exception is a function check, all entries on the stack up to the control boundary are cancelled and the CEE9901 escape message is sent to the next prior stack entry.
Table 1 contains default responses that the system takes when an exception is unhandled at a control boundary.
Table 1. Default Responses to Unhandled Exceptions
| Message Type | Severity of Condition | Condition Raised by the Signal a Condition (CEESGL) Bindable API | Exception Originated from Any Other Source |
|---|---|---|---|
| Status | 0 (Informative message) | Return the unhandled condition. | Resume without logging the message. |
| Status | 1 (Warning) | Return the unhandled condition. | Resume without logging the message. |
| Notify | 0 (Informative message) | Not applicable. | Log the notify message and send the default reply. |
| Notify | 1 (Warning) | Not applicable. | Log the notify message and send the default reply. |
| Escape | 2 (Error) | Return the unhandled condition. | Log the escape message and send a function check message to the call stack entry of the current resume point. |
| Escape | 3 (Severe error) | Return the unhandled condition. | Log the escape message and send a function check message to the call stack entry of the current resume point. |
| Escape | 4 (Critical ILE error) | Log the escape message and send a function check message to the call stack entry of the current resume point. | Log the escape message and send a function check message to the call stack entry of the current resume point. |
| Function check | 4 (Critical ILE error) | Not applicable | End the application, and send the CEE9901 message to the caller of the control boundary. |
Note: When the application is ended by an unhandled function check, the activation group is deleted if the control boundary is the oldest call stack entry in the activation group.