tail head cat sleep
QR code linking to this page

manページ  — COMPILE_ET

名称

compile_et – エラーテーブルコンパイラ

内容

書式


compile_et file

解説

compile_et は、エラーコード名とそれに対応するメッセージをリストアップしたテーブルを、 com_err(3) ライブラリと共に用いるのに適した C のソースファイルに変換します。

ソースファイル名は末尾が ``.et'' で終わっていなければなりません。 このファイルは以下のものから成ります。 まず、エラーコードテーブル名の宣言(4文字まで):

error_table name

続いて以下の形式のエントリ(256 エントリまで):

error_code name, dq stringdq

そして最後にテーブルの終わりを示す次の行です:

end

上のテーブル名はサブルーチン名 initialize_XXXX_error_table を構築するのに用いられます。 このサブルーチンは com_err(3) ライブラリがエラーテーブルを認識するために呼び出される必要があります。

ここで定義された様々なエラーコードには、 連続した昇順の番号(最初の数は、テーブル名のハッシュ関数として求められた、 ある大きな数です)が割り当てられます。 従って、互換性を保つために、新しいコードは既存のテーブルの末尾にのみ 追加し、また既存のコードはテーブルから削除しないように すべきです。

このテーブルで定義された名前は C のヘッダファイルに置かれ、 プリプロセッサディレクティブによって 最大 32 ビットの大きさの整定数として定義されます。

同時に C のソースファイルが生成されます。 このファイルはコンパイルされ、 これらのエラーコードを参照するオブジェクトファイルとリンクされます。 この C ソースファイルには、 メッセージテキストと初期化ルーチンが含まれます。 いずれの C のファイルも、オリジナルソースファイル 末尾の ``.et'' を ``.c'' および ``.h'' で置き換えた名前になります。

ソースファイル中の ``#'' はコメント文字として扱われ、 そこから行末までのテキストは無視されます。

バグ

compile_etyacc(1) に基づく極めて単純なパーサを用いているため、 エラー回復処理には改良すべき点が数多く残されています。

関連項目

yacc(1), com_err(3)

Ken Raeburn, A Common Error Description Library for UNIX,


COMPILE_ET (1) Ta November 22, 1988

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

There are 10 types of people in the world: those who understand binary, and those who don't.