80 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .\" Copyright (c) 1988 Massachusetts Institute of Technology,
 | |
| .\" Student Information Processing Board.  All rights reserved.
 | |
| .\"
 | |
| .\" %Header: /home/ncvs/src/usr.bin/compile_et/compile_et.1,v 1.2 1997/06/30 06:42:38 charnier Exp %
 | |
| .\"
 | |
| .\" jpman %Id: compile_et.1,v 1.3 1997/08/20 12:20:14 horikawa Stab %
 | |
| .Dd	November 22, 1988
 | |
| .Os
 | |
| .Dt COMPILE_ET 1
 | |
| .Sh 名称
 | |
| .Nm compile_et
 | |
| .Nd エラーテーブルコンパイラ
 | |
| .Sh 書式
 | |
| .Nm compile_et
 | |
| .Ar file
 | |
| .Sh 解説
 | |
| .Nm compile_et
 | |
| は、エラーコード名とそれに対応するメッセージをリストアップしたテーブルを、
 | |
| .Xr com_err 3
 | |
| ライブラリと共に用いるのに適した C のソースファイルに変換します。
 | |
| .Pp
 | |
| ソースファイル名は末尾が ``.et'' で終わっていなければなりません。
 | |
| このファイルは以下のものから成ります。
 | |
| まず、エラーコードテーブル名の宣言(4文字まで):
 | |
| 
 | |
| .Em error_table name
 | |
| 
 | |
| 続いて以下の形式のエントリ(256 エントリまで):
 | |
| 
 | |
| .Em error_code name ,
 | |
| "
 | |
| .Em string
 | |
| "
 | |
| 
 | |
| そして最後にテーブルの終わりを示す次の行です:
 | |
| 
 | |
| .Em end
 | |
| .Pp
 | |
| 上のテーブル名はサブルーチン名
 | |
| .Em initialize_XXXX_error_table
 | |
| を構築するのに用いられます。
 | |
| このサブルーチンは
 | |
| .Xr com_err 3
 | |
| ライブラリがエラーテーブルを認識するために呼び出される必要があります。
 | |
| .Pp
 | |
| ここで定義された様々なエラーコードには、
 | |
| 連続した昇順の番号(最初の数は、テーブル名のハッシュ関数として求められた、
 | |
| ある大きな数です)が割り当てられます。
 | |
| 従って、互換性を保つために、新しいコードは既存のテーブルの末尾にのみ
 | |
| 追加し、また既存のコードはテーブルから削除しないように
 | |
| すべきです。
 | |
| .Pp
 | |
| このテーブルで定義された名前は C のヘッダファイルに置かれ、
 | |
| プリプロセッサディレクティブによって
 | |
| 最大 32 ビットの大きさの整定数として定義されます。
 | |
| .Pp
 | |
| 同時に C のソースファイルが生成されます。
 | |
| このファイルはコンパイルされ、
 | |
| これらのエラーコードを参照するオブジェクトファイルとリンクされます。
 | |
| この C ソースファイルには、
 | |
| メッセージテキストと初期化ルーチンが含まれます。
 | |
| いずれの C のファイルも、オリジナルソースファイル
 | |
| 末尾の ``.et'' を ``.c'' および ``.h'' で置き換えた名前になります。
 | |
| .Pp
 | |
| ソースファイル中の ``#'' はコメント文字として扱われ、
 | |
| そこから行末までのテキストは無視されます。
 | |
| .Sh バグ
 | |
| .Nm compile_et
 | |
| は
 | |
| .Xr yacc 1
 | |
| に基づく極めて単純なパーサを用いているため、
 | |
| エラー回復処理には改良すべき点が数多く残されています。
 | |
| .Sh 関連項目
 | |
| .Xr yacc 1 ,
 | |
| .Xr comm_err 3
 | |
| .Pp
 | |
| .Rs
 | |
| .%A Ken Raeburn
 | |
| .%T "A Common Error Description Library for UNIX"
 | |
| .Re
 |