Debugging a CICS Foundation Class program

Having successfully compiled, linked, and attempted to run your Foundation Classes program, you might need to debug it.

There are three options available to help debug a CICS® Foundation Classes program:
  • Use a symbolic debugger
  • Run the Foundation Class Program with tracing active
  • Run the Foundation Class Program with the CICS Execution Diagnostic Facility

Symbolic debugger

You can use a symbolic debugger to step through the source of your CICS Foundation Classes program. Debug Tool is shipped as a feature with IBM® C®/C++. To debug a CICS Foundation Classes program with a symbolic debugger, compile the program with a flag that adds debugging information to your executable program. For CICS Transaction Server for z/OS®, this flag is TEST(ALL).

For more information, see Debug Tool for z/OS.

Tracing

You can configure the CICS Foundation Classes to write a trace file for debugging purposes.

Exception tracing is always active. The CETR transaction controls the auxiliary and internal traces for all CICS programs including those developed using the C++ classes.

Execution diagnostic facility

You can use the Execution Diagnostic Facility (EDF) to step through your CICS program, stopping at each EXEC CICS call. The display screen shows the procedural EXEC CICS call interface rather than the CICS Foundation Class type interface.

To enable EDF, use the preprocessor macro ICC_EDF in your source code before including the file ICCMAIN.
 #define ICC_EDF //switch EDF on
#include "iccmain.hpp"

Alternatively use the appropriate flag on your compiler CPARM to declare ICC_EDF.