Fault Analyzer 用の CSECT の命名

ソース・コード情報を使いやすくするために、Fault Analyzer は CSECT 名を、提供されるコンパイラー・リストまたはサイド・ファイルと一致させることができる必要があります。

これを可能にするには、すべての CSECT に名前を付ける必要があります。ほとんどの高水準言語で記述されたプログラム内の CSECT の名前は、自動的に割り当てられますが、C で記述されたプログラムには特別の要件が適用されます。これらの要件に従わないと、このようなタイプのプログラムではソース・コード情報が判別されません。

C プログラムの CSECT 命名要件

IDILC または IDILANGX 連結から C プログラムへの自動ソース・サポートを有効にする。これは CSECT が次の #pragma ステートメントを使用して命名されるという要件です。
#pragma csect(code,"csect_name")

ここで csect_name は、PDS または PDSE を使用する場合、コンパイラー・リスト名または LANGX ファイルのメンバー名です。これにより、サイド・ファイル検索が自動的にコンパイラー・リストを検索できます。

z/OS® XL C および C++ プログラムを Fault Analyzer と使用するための準備についての情報は、IBM Application Delivery Foundation for z/OS Common Components: Customization Guide and User GuideQuick start guide for compiling and assembling programs for use with the ADFz family of productsの章を参照してください。

C プログラムが #pragma csect オプションを使用してコンパイルされなかった場合を処理する。次の 2 つのサンプル EXEC がデータ・セット IDI.SIDISAM1 で提供され、ソースのプロビジョニングを容易にします。
IDISCLST

この EXEC を使用して、C コンパイラー・リストを処理し、C 関数名を PPA1 から抽出し、関数名の索引およびその一致するリスト・データ・セットを作成することができます。

IDISCPRO

この EXEC は Fault Analyzer リスト出口です。これは IDISCLST により作成された索引ファイルをスキャンし、指定した関数の一致するリスト・データ・セットの名前を返します。

1. #pragma csect を使用してコンパイルされなかった C プログラムからの関数名の抽出

図に、#pragma csect オプションを使用してコンパイルされなかった C プログラムに対するソース・サポートを有効化する方法を示します。IDISCLST EXEC は C コンパイラー・リストを処理し、C 関数名を PPA1 から抽出し、関数名の索引およびその一致するリスト・データ・セットを作成することができます。サイド・ファイルが分析中に見つからなかった場合、Fault Analyzer は IDISCPRO リスト出口を実行できます。これは IDISCLST により作成された索引ファイルをスキャンし、指定した関数の一致するリスト・データ・セットの名前を返します。