U4094 (X'FFE')   

Explanation

An abend was issued during termination, when errors were detected.
Reason code
Explanation
X'04' (4)
An invalid parameter to termination services was discovered.
X'08' (8)
A language-specific event handler returned an invalid return code.
X'0C' (12)
A language-specific event handler returned to termination with a return code, causing immediate termination.
X'10' (16)
Condition management could not properly terminate.
X'14' (20)
Program management could not properly terminate.
X'18' (24)
Storage management could not properly free stack and/or heap storage. This might be due to writing beyond storage.
X'1C' (28)
Storage management could not properly free the initial storage allocation.
X'20' (32)
The user stack was unable to be collapsed using GOTO.
X'24' (36)
The fixed-size termination stack overflowed.
X'28' (40)
An unhandled condition of severity 2 or greater occurred in a created enclave with TRAP(OFF) set in the creating enclave. Under CMS, this abend is issued when a severity 2 or greater condition is unhandled in a nested enclave, or a debugging tool has terminated the enclave at the user's request.

In addition to TRAP(OFF), this abend can also result when a parent enclave save area chain cannot be located, even though two enclaves existed, thus causing an attempt to propagate the failing condition. When the parent enclave received control, the save area chain was not intact, and the ABEND was percolated.

An example of this is a COBOL program that is invoked without a LINK SVC and with a reusable run-time environment. On return from the COBOL program, the Language Environment enclave still exists, because of the reusable environment. When a second COBOL program is invoked by a LINK SVC, any Language Environment attempt to create a second enclave does not succeed. In an attempt to propagate this error condition to the parent enclave, Language Environment issues an abend. When the first enclave is not in the current save area chain, Language Environment percolates this abend. See z/OS Language Environment Programming Guide for information about nested enclaves.

X'2C' (44)
Termination requested during termination.
X'30' (48)
Condition management for MVS™ could not properly terminate.
X'34' (52)
The MVS environment could not properly terminate.
X'38' (56)
A language-specific event handler returned to thread termination with a return code, causing immediate termination.
X'3C' (60)
An internal logic error occurred during recursive termination handling.
X'40' (64)
An internal logic error occurred during forced thread termination handling.
X'44' (68)
An internal logic error occurred because termination was not expected.
X'48' (72)
During termination, library latches were being held and could not be released, causing immediate termination.
X'4C' (76)
Library latch services have received an unrecognized latch request, causing immediate termination.
X'4E' (78)
A language-specific event handler returned to thread termination with a return code, causing immediate termination.
X'54' (84)
Storage management could not properly free the dummy library stack that was added when PL/I was active in an enclave.
X'58' (88)
This error occurred when attempting to use malloc(), free(), calloc(), or realloc() after vendor heap manager (VHM) terminated for the enclave and heap manager is active. This may be an IBM® problem. Contact IBM support.
X'5C' (92)
Abend when heap latch locked. A 04E ABEND code occurred while a Language Environment heap latch was held. The code that was holding the latch was unexpectedly interrupted by this asynchronous abend, and the Language Environment heap is in an unknown state. The 04E ABEND probably occurred because of problems on some other task or in some other address space. Determine the underlying problem that caused the other task or address space to send the 04E ABEND to this thread. Language Environment terminates with an abend immediately with 4094-96 to prevent other problems that would occur if recovery was started with the Language Environment heap in an unknown state
X'60' (96)
04E abend and latch was locked. An 04E ABEND code occurred while a Language Environment library latch was held. The code that was holding the latch was unexpectedly interrupted by this asynchronous abend, and some Language Environment resource protected by the latch is in an unknown state. The 04E ABEND probably occurred because of problems on some other task or in some other address space. Determine the underlying problem that caused the other task or address space to send the 04E abend to this thread. Language Environment terminates with an abend immediately with 4094-96 to prevent other problems that would occur if recovery was started with the Language Environment resource is in an unknown state
X'64' (100)
Access failure occurred when attempting to cleanup mutexes on behalf of the application at termination. Please make sure all mutexes are destroyed before application termination. Or make sure all mutexes are valid, and have valid storage backing at termination.
X'68' (104)
Access failure occurred when attempting to cleanup mutexes on behalf of the application at termination. Please make sure all mutexes are destroyed before application termination. Or make sure all mutexes are valid, and have valid storage backing at termination.
X'6C' (108)
The application was waiting on a mutex that appeared to be locked after all other threads had ended. This wait would hang indefinitely, so it was converted to an abend to avoid the hang. In most situations, the thread that originally held the mutex ended abruptly with a 422 abend, and the mutex was not cleaned up. This abend can be ignored since one or more other threads in the application has already been ended with a 422 abend.
X'70' (112)
The application was waiting on a Language Environment fast latch that appeared to be locked after all other threads had ended. This wait would hang indefinitely, so it was converted to an abend to avoid the hang. In most situations, the thread that originally held the fast latch ended abruptly with a 422 abend, and the fast latch was not cleaned up. This abend can be ignored since one or more other threads in the application has already ended with a 422 abend.
X'74'(116)
A library mutex was being held when an asynchronous abend or unhandled condition caused termination. The mutex was marked as released prematurely and any attempt to lock the mutex caused termination to be entered again. After several attempts to terminate, this abend is issued to prevent an infinite loop.
X'84' (132)
During pthread_mutex_lock() processing, the application was waiting on a Language Environment fast latch that appeared to be locked after all other threads had ended. This wait would hang indefinitely, so it was converted to an abend to avoid the hang. In most situations, the thread that originally held the fast latch ended abruptly with a 422 abend, and the fast latch was not cleaned up. This abend can be ignored since one or more other threads in the application has already ended with a 422 abend.
X'88' (136)
A 04E abend was issued because of a problem with another task or another address space while Language Environment was holding or waiting for a library latch. Language Environment is terminated immediately with a 4094 abend, reason code X'88', to prevent additional errors that might occur if recovery is attempted with the Language Environment resource in an unknown state. To correct this error, determine the underlying problem that caused the other task or other address space to issue the 04E abend to the Language Environment thread.
X'8C' (140)
The application was waiting on a Language Environment latch that appeared to be locked after all other threads had ended. This wait would hang indefinitely, so it was converted to an abend to avoid the hang. In most situations, the thread that originally held the latch ended abruptly with a 422 abend, and the latch was not cleaned up. This abend can be ignored since one or more other threads in the application has already ended with a 422 abend. The address of the latch is loaded into register 3 before the abend is issued.
X'90' (144)
Resource Recovery Services was not able to process the request from Language Environment to backout in-flight units of recovery for threads that are being processed during quiesce term.
X'200' (512)
An error occurred while releasing storage at termination of an AMODE 64 application. Capture a system dump of the failure.
X'204' (516)
An error occurred while terminating the C runtime library of an AMODE 64 application. Capture a system dump of the failure.
X'208' (520)
An error occurred while terminating the C runtime library of an AMODE 64 application. Capture a system dump of the failure.
X'20C' (524)
An error occurred while deleting the Language Environment® ESPIE, ESTAE, or both when terminating an AMODE 64 application. Capture a system dump of the failure.
X'210' (528)
An error occurred while deleting the debugger when terminating an AMODE 64 application. Capture a system dump of the failure.
X'214' (532)
An error occurred while deleting the profiler when terminating an AMODE 64 application. Capture a system dump of the failure.
X'218' (536)
An error occurred during termination of an AMODE 64 application. Capture a system dump of the failure.

System action

Enclave terminated.

Programmer response

See system programmer.