Using PLIDUMP

This section describes dump options and syntax used to call PLIDUMP, and describes PL/I-specific information included in the dump that can help you debug your programs.

This shows an example of a PL/I routine calling PLIDUMP to produce a Program Environment dump. In this example, the main routine PLIDMP calls PLIDMPA, which then calls PLIDMPB. The call to PLIDUMP is made in routine PLIDMPB.

%PROCESS MAP GOSTMT SOURCE STG LIST OFFSET LC(101);
 PLIDMP: PROC OPTIONS(MAIN) ;

   Declare   (H,I) Fixed bin(31) Auto;
   Declare   Names Char(17) Static init('Bob Teri Bo Jason');
   H = 5;	 I = 9;
   Put skip list('PLIDMP Starting');
   Call PLIDMPA;

     PLIDMPA:  PROC;
       Declare (a,b) Fixed bin(31) Auto;
       a = 1;	 b = 3;
       Put skip list('PLIDMPA Starting');
       Call PLIDMPB;

         PLIDMPB:  PROC;
           Declare  1 Name auto,
             2 First   Char(12) Varying,
             2 Last    Char(12) Varying;
           First = 'John';
           Last = 'Thompson';
           Put skip list('PLIDMPB Starting');
           Call PLIDUMP('TBFC','PLIDUMP called from procedure PLIDMPB');
           Put Data;
         End PLIDMPB;
     End PLIDMPA;
 End PLIDMP;

This example is referenced throughout this section.

Consider the following when using PLIDUMP:

Using PLIDUMP to generate a dump of your PL/I routine helps to ensure portability across system platforms.

PLIDUMP can be configured to output a core file in addition to or instead of the default output. This is controlled using the PLIDUMP_CONFIG environment variable. Possible values for PLIDUMP_CONFIG are:

NONE
No output is produced.
CORE
PLIDUMP outputs a core file only.
BOTH
PLIDUMP outputs a core file in addition to the Program Environment dump.

If PLIDUMP_CONFIG is unset or not one of the above values, only the default Program Environment dump is produced.