Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
COMPILE_ET(1)		  BSD General Commands Manual		 COMPILE_ET(1)

     compile_et	-- error table compiler

     compile_et	file

     Compile_et	converts a table listing error-code names and associated mes-
     sages into	a C source file	suitable for use with the com_err(3) library.

     The source	file name must end with	a suffix of ``.et''; the file consists
     of	a declaration supplying	the name (up to	four characters	long) of the
     error-code	table:

     error_table name

     followed by up to 256 entries of the form:

     error_code	name, "string"

     and a final


     to	indicate the end of the	table.

     The name of the table is used to construct	the name of a subroutine
     initialize_XXXX_error_table which must be called in order for the
     com_err(3)	library	to recognize the error table.

     The various error codes defined are assigned sequentially increasing num-
     bers (starting with a large number	computed as a hash function of the
     name of the table); thus for compatibility	it is suggested	that new codes
     be	added only to the end of an existing table, and	that no	codes be re-
     moved from	tables.

     The names defined in the table are	placed into a C	header file with pre-
     processor directives defining them	as integer constants of	up to 32 bits
     in	magnitude.

     A C source	file is	also generated which should be compiled	and linked
     with the object files which reference these error codes; it contains the
     text of the messages and the initialization subroutine.  Both C files
     have names	derived	from that of the original source file, with the
     ``.et'' suffix replaced by	``.c'' and ``.h''.

     A ``#'' in	the source file	is treated as a	comment	character, and all re-
     maining text to the end of	the source line	will be	ignored.

     yacc(1), com_err(3)

     Ken Raeburn, A Common Error Description Library for UNIX.

     Since compile_et uses a very simple parser	based on yacc(1), its error
     recovery leaves much to be	desired.

BSD			       November	22, 1988			   BSD


Want to link to this manual page? Use this URL:

home | help