How conditions arising in child enclaves are handled

If a Language Environment or CEEBXITA-initiated (generated by setting the CEEAUE_ABND field of CEEBXITA) abend occurs in a child enclave that contains a fetchable main, the entire process is terminated.

Depending on what the settings of the TRAP runtime option are in the parent and child enclave, the following might cause the child enclave to terminate:
  • Unhandled user abend
  • Unhandled program check

Table 1 describes the unhandled condition behavior in a child enclave.

Table 1. Unhandled condition behavior in a child enclave that contains a PL/I fetchable main
Condition Parent enclave TRAP(ON)

Child enclave TRAP(ON)

Parent enclave TRAP(ON)

Child enclave TRAP(OFF)

Parent enclave TRAP(OFF)

Child enclave TRAP(ON)

Parent enclave TRAP(OFF)

Child enclave TRAP(OFF)

Unhandled condition severity 0 or 1 Resume child enclave Resume child enclave Resume child enclave Resume child enclave
Unhandled condition severity 2 or above Resume parent enclave, and ignore condition Resume parent enclave, and ignore condition Resume parent enclave, and ignore condition Resume parent enclave, and ignore condition
Non-Language Environment abend Resume parent enclave, and ignore condition Process terminated with original abend code Resume parent enclave, and ignore condition Process terminated with original abend code
Program check Resume parent enclave, and ignore condition Process terminated with abend U4036, Reason code=2 Resume parent enclave, and ignore condition Process terminated with abend S0Cx