Name

make_err — Error catalogue language reference

Syntax

The following gives a summary of the syntax for the error catalogue accepted by the make_err tool. Identifiers are normal C-style identifiers, strings consist of any sequence of characters enclosed inside "....". The escape sequences \" and \\ are allowed in strings; other characters (including newline characters) map to themselves. C-style comments are allowed.

error-database :
	header types? properties? keys? usages? entries?

header :
	database-name? rig-name? prefixes?


database-name :
	DATABASE_NAME : identifier

rig-name :
	RIG : identifier


prefixes :
	PREFIX : output-prefix? compiler-prefix? error-prefix?

output-prefix :
	compiler_output -> identifier

compiler-prefix :
	from_compiler -> identifier

error-prefix :
	from_database -> identifier


types :
	TYPES : name-list?

properties :
	PROPERTIES : name-list?

keys :
	KEYS : name-list?

usages :
	USAGE : name-list?

name :
	identifier
	identifier = identifier
	identifier = identifier | identifier

name-list :
	name
	name , name-list


type-name :
	identifier

property-name :
	identifier

key-name :
	identifier

usage-name :
	identifier


entries :
	ENTRIES : entries-list?

entry-list :
	entry entry-list?

entry :
	identifier ( param-list? ) { entry-body }

entry-body :
	alt-name? entry-usage? entry-properties? map-list?


parameter :
	type-name : identifier

param-list :
	parameter
	parameter , param-list

param-name :
	identifier


alt-name :
	ALT_NAME : identifier

entry-usage :
	USAGE : usage-name
	USAGE : usage-name | usage-name

entry-properties :
	PROPERTIES : property-list?

property-list :
	property-name
	property-name , property-list


map :
	KEY ( key-name ) message-list?
	KEY ( key-name ) message-list? | message-list?

map-list :
	map map-list?

message-list :
	string message-list?
	param-name message-list?

See Also

make_err.

TDF Specification, C/C++ Checker Reference Manual, TDF and Portability.