PLIDUMP の使用

本セクションでは、PLIDUMP の呼び出しに使用するダンプ オプションおよび構文について説明します。また、プログラムをデバッグする際に役立つ、ダンプに含まれる PL/I 固有の情報についても説明します。

PLIDUMP を呼び出してプログラム環境ダンプを生成する PL/I ルーチンの例を次に示します。この例では、メイン ルーチンの PLIDMP が PLIDMPA を呼び出し、その後 PLIDMPA が PLIDMPB を呼び出します。PLIDUMP の呼び出しは、ルーチン 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;

本セクションでは、全体を通して上記の例を参照します。

PLIDUMP を使用する場合は、次の点を考慮してください。

PLIDUMP を使用して PL/I ルーチンのダンプを生成することは、システム プラットフォーム間の移植性の確保に役立ちます。

PLIDUMP は、デフォルトの出力に加えて、またはデフォルトの出力に代えて、コア ファイルを出力するように構成できます。これは、PLIDUMP_CONFIG 環境変数を使用して制御します。PLIDUMP_CONFIG に指定できる値は次のとおりです。

NONE
出力は生成されません。
CORE
PLIDUMP はコア ファイルのみを出力します。
BOTH
PLIDUMP はプログラム環境ダンプに加えてコア ファイルを出力します。

PLIDUMP_CONFIG が設定されていない場合、または上記の値のいずれでもない場合、デフォルトのプログラム環境ダンプのみが生成されます。