Library ABEND Codes

This appendix lists all ABENDs issued by the C run-time routines. Most of the ABENDs described here result from user errors. Storage ABENDs (messages 1200 - 1203 and 1205 - 1209) are generally caused by buffer overflows or overlays. The application can be tested with the =storage run-time option to get a storage corruption report. Refer to the SAS/C Debugger User's Guide and Reference, Third Edition , for a detailed explanation of the storage report and guidance on using the debugger to isolate storage problems.

If you suspect a problem with the product, contact the SAS Software Representative at your site.

The ABEND codes currently defined are:

1200

issued if corruption of auto storage control blocks is detected while a DSA is being freed.

1201

issued if corruption of auto storage control blocks is detected during allocation of a new DSA.

1202

issued if, during termination of a program run with the =minimal run-time option, it is discovered that the program has stored past the end of the automatic storage stack.

1203

issued if corruption of auto storage control blocks is detected while freeing all automatic storage at the end of program execution.

1204

issued if the target of a longjmp cannot be found. This may be caused by corruption of the target jmp_buf or by attempting to jump to a routine that is no longer active.

1205

issued if corruption of heap storage control blocks is detected during execution of calloc/malloc.

1206

issued if corruption of heap storage control blocks is detected when calloc/malloc attempts to reuse a free portion of the heap.

1207

issued if corruption of heap storage control blocks is detected by free during the release of a tract of heap storage.

1208

issued if the pointer to a block to be freed is found to be invalid by free. This may be caused by an overlay of storage near the block or by passing a pointer to an area not directly allocated by calloc/malloc.

1209

issued if corruption of heap storage control blocks is detected during program termination.

1210

issued when the SIGABRT signal is raised and default handling is in effect. SIGABRT can be raised by a call to abort or by using raise or siggen.

1211

issued if the argument to unloadm does not address a function in a module previously loaded by loadm.

1212

issued if required transient run-time functions cannot be loaded. Under MVS, the transient library must have been installed into the system link list or be defined as part of STEPLIB or CTRANS. Under CMS, the transient library must be present on an ACCESSed disk, in nucleus extensions, or in a segment. Under the OpenEdition shell, the transient library must be installed into the system linklist or be defined to the library using the STEPLIB or the ddn_CTRANS environment variables.

For CICS applications, verify that CICS library support customization has been accomplished. Refer to the SAS/C Installation Guide for details on installing SAS/C CICS functions.

1213

issued if a subordinate C load module is abused by calling it directly (for example, via EXEC PGM=) as if it were a main program.

1214

issued if more than one recursive error occurs during diagnostic message processing. This is probably a run-time library error; the most likely cause is a malformed diagnostic message text.

1215

issued under CMS if an error occurs while trying to delete the storage occupied by a dynamically loaded module during a call to unloadm. The most likely cause is a storage overlay.

1216

issued under CMS if an invalid library control block is encountered during a call to unloadm. This is probably caused by a storage overlay.

1217

issued under CMS if an invalid library control block is encountered during a call to loadm. This is probably caused by a storage overlay.

1218

issued under CMS if an error occurs while trying to delete a buffer during dynamic loading. The most likely cause is a storage overlay.

1219

issued if the interface between the debugger and the library detects an error in its own processing or in the debugger. This can occur if the program overlays debugger data areas.

1220

issued if the abort debugger command is executed. It also can happen if multiple attention interrupts occur and the debugger is unable to respond normally due to a program loop or system slowdown.

1221

issued under CMS if an error is detected by CP while loading a library segment. It is probably an indication of a CP system error.

1222

issued if the library framework manager detects an error in its use. (The framework manager is a library component used as a subroutine by the debugger, interlanguage communication applications, and the CMS REXX function package and SUBCOM support.) This is most likely a library error, but it can be caused by overlay of library control blocks.

1223

used under TSO to indicate a system problem in the TSO SUBCOM interface. This is most likely a library or TSO error. Under CMS, this code is used to indicate that the nucleus extension used to manage sharing of the C run-time library has been dropped by the user, which is not permitted.

1224

issued when longjmp or exit attempts to terminate a non-C routine. This can occur when the indep option is used to mix the C language with another language or when the CMS REXX function package support is used.

1225

issued when there is no handler for an asynchronous signal, such as SIGALRM , for which the default action is termination. The default handling is to terminate the program.

1226

issued if the Full-Screen Support Library detects an internal error. This may be caused by an overlay of FSSL control blocks.

1227

issued when a library error occurs terminating a coprocess.

1228

issued if there is not enough storage available to extend the internal queue of IUCV or socket communication messages. The probable cause is that the number of incoming interrupts is greater than the program can handle.

1229

This is a CICS-only ABEND code that is issued when there is not enough storage available for an unconditional GETMAIN.

1230

issued when a POSIX function cannot be executed because OpenEdition is not installed or active, but the function does not have any defined error conditions.

1231

No TWA defined for a CICS Indep Application.

1233

issued if an internal error ocurred in the interlanguage communication support routines. This is most likely a library error, but could be caused by an overlay of library control blocks. Please record any preceding messages and the value in register 15 at the time of ABEND, if possible, before calling SAS Institute's Technical Support Department.

1234

issued if a call is made from a C program to a routine written in another high-level language or from a program in another high-level language to a C function, but the framework for the called language has not been created.

1235

issued for an interlanguage communication feature usage error. The error is explained by a preceding message.

1239

This is a CICS-only ABEND code that is issued when an unexpected internal error is encountered during abnormal termination processing.

1240

issued if an unexpected program check occurs during library ABEND analysis. The analysis routine is careful not to depend on the contents of run-time control blocks, so an occurrence of this ABEND probably indicates an oversight in the coding of the analysis routine as well as a storage overlay.


Copyright (c) 1998 SAS Institute Inc. Cary, NC, USA. All rights reserved.