CBL_GET_ERROR_INFO

最後に障害またはエラーが発生した場所に関する情報を提供します。
注: このリリースでは、CBL_GET_ERROR_INFO は Linux でのみ使用できます。
制約事項: このルーチンは COBOL および PL/I でのみサポートされます。

構文:

call "CBL_GET_ERROR_INFO" using by value flags
                            by reference symbol-info 
                            by reference module-info
                            by reference file-info
        returning status-code.

パラメーター:

  呼び出しプロトタイプ使用時 (「説明の読み方」を参照) PIC
flags cblt-os-flags
symbol-info cblt-os-size pic x(n)
module-info cblt-os-size pic x(n)
file-info cblt-os-size pic x(n)
status-code 説明の読み方」を参照

入力パラメーター:

flags
将来使用するために予約済み。値は 0 です。
symbol-name-size
提供される symbol-name pic x(n) のサイズ n。この値が返される情報のサイズより小さいと、ルーチンは失敗します。
module-name-size
提供される module-name pic x(n) のサイズ n。この値が返される情報のサイズより小さいと、ルーチンは失敗します。
file-name-size

提供される file-name pic x(n) のサイズ n。この値が返される情報のサイズより小さいと、ルーチンは失敗します。

出力パラメーター:

symbol-offset
最後に障害またはエラーが発生したシンボルのオフセット。
symbol-name-size
返されるシンボル名のサイズ。

入力パラメーターの symbol-name-size で指定されたバッファーが小さすぎて CBL_GET_ERROR_INFO が失敗する場合、symbol-name-size は必要な最小バッファー サイズに設定されます。

symbol-name
最後に障害またはエラーが発生したシンボルの名前。
module-name-size
返されるモジュール名のサイズ。

入力パラメーターの module-name-size で指定されたバッファーが小さすぎて CBL_GET_ERROR_INFO が失敗する場合、module-name-size は必要な最小バッファー サイズに設定されます。

module-name
最後に障害またはエラーが発生したモジュールのファイルシステム パス。
module-offset
最後に障害またはエラーが発生したモジュールのオフセット。
file-name-size
返されるファイル名のサイズ。

入力パラメーターの file-name-size で指定されたバッファーが小さすぎて CBL_GET_ERROR_INFO が失敗する場合、file-name-size は必要な最小バッファー サイズに設定されます。

file-name
最後に障害またはエラーが発生したファイルの名前。
line-number
最後に障害またはエラーが発生したファイル内の行。
status-code
処理状態を示すコード。
状態
0 成功
1006 このプラットフォームまたは環境でルーチンがサポートされていない。
1011 ルーチンが呼び出された時点で障害またはエラーが発生していない。
1017 返される情報に比べ、バッファーが小さすぎる。

説明:

CBL_GET_ERROR_INFO を使用する典型的なシナリオは、エラー処理、PL/I ON-unit、または同期シグナル ハンドラーにおいて、最後に障害またはエラーが発生した場所に関する情報を取得するというものです。

CBL_GET_ERROR_INFO は、CEE3GRN および CEE3GRO ルーチンと機能的に似ており、同様の状況で使用すことが想定されています。これらの 2 つのメインフレーム呼び出しと同様に、エラーが発生した後に CBL_GET_ERROR_INFO を呼び出すと、エラーの場所について、シンボル名とシンボルの先頭からのオフセットが提供されます。さらに、CBL_GET_ERROR_INFO は、モジュールの名前、ファイル名、および行番号も提供します。この追加情報により、障害/エラーの場所を簡単に特定できます。

PL/I では、このルーチンを ON-unit で呼び出すことができます。ただし、ON-unit の終了後に呼び出すことはできません。

PL/I プログラムで CBL_GET_ERROR_INFO を使用するには、-proginfo オプションを使用してプログラムをコンパイルする必要があります。

このリリースでは、int コードおよび gnt コードはサポートされていません。

CBL_GET_ERROR_INFO は、出口プロシージャから呼び出すことはできません。

CBL_GET_ERROR_INFO は、非同期シグナルに関する情報は提供しません。

一部の情報については、状況によっては提供されないことがあります。
  • ファイル名と行番号の情報を取得するには、プログラムをデバッグ用にコンパイルする必要があります。
  • 32 ビット システムでは、デバッグ用のコンパイルが必須です。