最後に障害またはエラーが発生した場所に関する情報を提供します。
注: このリリースでは、cobgeterrorinfo は Linux でのみ使用できます。
制約事項: このルーチンは COBOL でのみサポートされます。
構文:
#include "cobgeterrorinfo.h"
coberrorinfo_t* cobgeterrorinfo(int flags);
パラメーター:
flags |
将来使用するために予約済み。値は 0 です。 |
戻り値:
この関数は、ルーチンが呼び出された時点で障害またはエラーが発生していない場合は
NULL、それ以外の場合は次の形式の構造体へのポインターを返します。
typedef struct
{
cbl_os_size_t symbol_offset;
const cobchar_t* symbol_name;
cbl_os_size_t module_offset;
const cobchar_t* module_name;
const cobchar_t* file_name;
cbl_os_size_t line_number;
} coberrorinfo_t
各要素は次のとおりです。
- symbol-name
- 最後に障害またはエラーが発生したシンボルの名前を含む null で終了する文字列。
- symbol-offset
- 最後に障害またはエラーが発生したシンボルのオフセット。
- module-name
- 最後に障害またはエラーが発生したモジュールの名前を含む null で終了する文字列。
- module-offset
- 最後に障害またはエラーが発生したモジュールのオフセット。
- file-name
- 最後に障害またはエラーが発生したファイルの名前を含む null で終了する文字列。
- line-number
- 最後に障害またはエラーが発生したファイル内の行。
説明:
cobgeterrorinfo を使用する典型的なシナリオは、エラー処理または同期シグナル ハンドラーにおいて、最後に障害またはエラーが発生した場所に関する情報を取得するというものです。
cobgeterrorinfo は、CEE3GRN および CEE3GRO ルーチンと機能的に似ており、同様の状況で使用すことが想定されています。これらの 2 つのメインフレーム呼び出しと同様に、エラーが発生した後に cobgeterrorinfo を呼び出すと、エラーの場所について、シンボル名とシンボルの先頭からのオフセットが提供されます。さらに、cobgeterrorinfo は、モジュールの名前、ファイル名、および行番号も提供します。この追加情報により、障害/エラーの場所を簡単に特定できます。
cobgeterrorinfo は構造体を作成します。この構造体は不要になったら破棄してください。これには別の関数の cobfreeerrorinfo を使用します。
このリリースでは、int コードおよび gnt コードはサポートされていません。
cobgeterrorinfo は、出口プロシージャから呼び出すことはできません。
cobgeterrorinfo は、非同期シグナルに関する情報は提供しません。