Step through each of the items in the diagnosis checklist below
to see if they apply to your problem. The checklist is designed to
either solve your problem or help you gather the diagnostic information
required for determining the source of the error. It can also help
you confirm that the suspected failure is not a user error; that is,
it was not caused by incorrect usage of the Language Environment product
or by an error in the logic of the routine.
- If your failing application contains programs that were changed
since they last ran successfully, review the output of the compile
or assembly (listings) for any unresolved errors.
- If there have not been any changes in your applications, check
the output (job or console logs, CICS® transient
(CESE) queues) for any messages from the failing run.
- Check the message prefix to identify the system or subsystem that
issued the message. This can help you determine the cause of the problem.
Following are some of the prefixes and their respective origins.
- EDC
- The prefix for C/C++ messages.
The following series of messages are from the C/C++ runtime
component of Language Environment:
5000 (except for 5500, which are from the DSECT utility), 6000, and
7000.
- IGZ
- The prefix for messages from the COBOL runtime
component of Language Environment.
- FOR
- The prefix for messages from the Fortran runtime
component of Language Environment.
- IBM®
- The prefix for messages from the PL/I runtime
component of Language Environment.
- CEE
- The prefix for messages from the common runtime component of Language Environment.
- For any messages received, check for recommendations
in the "Programmer Response" sections of the messages in this
manual.
- Verify that abends are caused by product failures
and not by program errors. See the appropriate topics in this information
for a list of Language Environment-related
abend codes.
- Your installation may have received an IBM Program Temporary Fix (PTF) for the problem.
Verify that you have received all issued PTFs and have installed them,
so that your installation is at the most current maintenance level.
- The preventive service planning (PSP) bucket, an online database available
to IBM customers through IBM service channels, gives information
about product installation problems and other problems. Check to see
whether it contains information related to your problem.
- Narrow the source of the error.
- After you identify the failure, consider writing a small test
case that re-creates the problem. The test case could help you determine
whether the error is in a user routine or in the Language Environment product.
Do not make the test case larger than 75 lines of code. The test
case is not required, but it could expedite the process of finding
the problem.
If the error is not a Language Environment failure,
see the diagnosis procedures for the product that failed.
- Record the conditions and options in effect at the time the problem
occurred. Compile your program with the appropriate options to obtain
an assembler listing and data map. If possible, obtain the binder
or linkage editor output listing. Note any changes from the previous
successful compilation or run. For an explanation of compiler options,
see the compiler-specific programming guide.
- If you are experiencing a no-response problem, try to force a
dump. For example, CANCEL the program with the dump option.
- Record the sequence of events that led to the error condition
and any related programs or files. It is also helpful to record the
service level of the compiler associated with the failing program.