.\" Copyright (c) 1988 Massachusetts Institute of Technology, .\" Student Information Processing Board. All rights reserved. .\" .\" $Header$ .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .\" .\" Japanese Version Copyright (c) 2000 NAKANO Takeo all rights reserved. .\" Translated Thu 13 2000 by NAKANO Takeo .\" Updated 2012-03-18, Akihiro MOTOKI .\" .TH COMPILE_ET 1 "30 Mar 1998" SIPB .SH 名前 compile_et \- エラー表のコンパイラー .SH 書式 \fBcompile_et\fP file .SH 説明 \fBcompile_et\fP は、エラーコードの名前と対応するメッセージをリストした表を、 \fIcom_err\fP(3) ライブラリで扱いやすい C ソース形式に変換する。 ソースファイルの名前は \*(lq.et\*(rq という拡張子で終わっている必要がある。 ファイルは、エラーコード表の名前 (名前は 4 文字まで) を与える宣言 \fBerror_table\fP \fIname\fP で始まり、(最大 256 個の) \fBerror_code\fP \fIname,\fP という形式のエントリが続き、テーブルの終りを示す \fBend\fP で終わる。 表の名前は、サブルーチンの名前をつくるときに \fIinitialize_XXXX_error_table\fP の様に用いられる。 \fIcom_err\fP ライブラリにこのエラー表を認識させるには、 このサブルーチンを呼び出す必要がある。 各種エラーコードの定義は、ひとつずつ増える数値に割り当てられる (先頭の数値は、表の名前をハッシュ関数に与えて計算された値になる)。 したがって互換性を保つためには、 新しいコードの追加は既存の表の末尾に行い、 表からコードの削除を行わないことである。 表で定義されている名前は、 C のヘッダファイルにおいて、 それらの名前を 32 ビットまでの整数定数として定義する プリプロセッサ指定になる。 C ソースファイルも生成されるので、これをコンパイルして、 エラーコードを参照するオブジェクトファイルにリンクする。 C ソースファイルには、メッセージのテキストと初期化サブルーチンとが含まれる。 C のヘッダファイル・ソースファイル両者の名前は、 オリジナルのソースファイルの名前の \*(lq.et\*(rq 拡張子を、 それぞれ \*(lq.h\*(rq, \*(lq.c\*(rq に置き換えたものになる。 ソースファイル中の \*(lq#\*(rq はコメント文字として扱われ、 その行の末尾までの残りのテキストは無視される。 .SH バグ オリジナルの \fBcompile_et\fP は \fIyacc\fP(1) を用いた非常に簡単なパーサーを使っていたし、 現在のバージョンの \fBcompile_et\fP は awk と sed スクリプトを組み合わせて用いているので、 エラーリカバリは望ましい水準からはほど遠い。 .\" .IR for manual entries .\" .PP for paragraph breaks .SH 関連項目 com_err (3) Ken Raeburn, "A Common Error Description Library for UNIX".