The first line of this file is ignored.
Any line not starting /^ *[0-9]/ is ignored.
There should be only one space between the number and the message text.

Compiler error messages
  0 undeclared identifier
  1 multiply defined identifier
  2 illegal character in number
  3 illegal character in string
  4 identifier does not match procedure name
  5 comment not closed

  9 '=' expected

 12 type definition starts with incorrect symbol
 13 factor starts with incorrect symbol
 14 statement starts with incorrect symbol
 15 declaration followed by incorrect symbol
 16 MODULE expected

 18 '.' missing
 19 ',' missing
 20 ':' missing

 22 ')' missing
 23 ']' missing
 24 '}' missing
 25 OF missing
 26 THEN missing
 27 DO missing
 28 TO missing

 30 '(' missing

 34 ':=' missing
 35 ',' or OF expected

 38 identifier expected
 39 ';' missing

 41 END missing

 44 UNTIL missing

 46 EXIT not within loop statement
 47 illegally marked identifier

 50 expression should be constant
 51 constant not an integer
 52 identifier does not denote a type
 53 identifier does not denote a record type
 54 result type of procedure is not a basic type
 55 procedure call of a function
 56 assignment to non-variable
 57 pointer not bound to record or array type
 58 recursive type definition
 59 illegal open array parameter
 60 wrong type of case label
 61 inadmissible type of case label
 62 case label defined more than once
 63 illegal value of constant
 64 more actual than formal parameters
 65 fewer actual than formal parameters
 66 element types of actual array and formal open array differ
 67 actual parameter corresponding to open array is not an array
 68 control variable must be integer
 69 parameter must be an integer constant
 70 pointer or VAR record required as formal receiver
 71 pointer expected as actual receiver
 72 procedure must be bound to a record of the same scope
 73 procedure must have level 0
 74 procedure unknown in base type
 75 invalid call of base procedure
 76 this variable (field) is read only
 77 object is not a record
 78 dereferenced object is not a variable
 79 indexed object is not a variable
 80 index expression is not an integer
 81 index out of specified bounds
 82 indexed variable is not an array
 83 undefined record field
 84 dereferenced variable is not a pointer
 85 guard or test type is not an extension of variable type
 86 guard or testtype is not a pointer
 87 guarded or tested variable is neither a pointer nor a VAR-parameter record
 88 open array not allowed as variable, record field or array element

 92 operand of IN not an integer, or not a set
 93 set element type is not an integer
 94 operand of & is not of type BOOLEAN
 95 operand of OR is not of type BOOLEAN
 96 operand not applicable to (unary) +
 97 operand not applicable to (unary) -
 98 operand of ~ is not of type BOOLEAN
 99 ASSERT fault
100 incompatible operands of dyadic operator
101 operand type inapplicable to *
102 operand type inapplicable to /
103 operand type inapplicable to DIV
104 operand type inapplicable to MOD
105 operand type inapplicable to +
106 operand type inapplicable to -
107 operand type inapplicable to = or #
108 operand type inapplicable to relation
109 overriding method must be exported
110 operand is not a type
111 operand inapplicable to (this) function
112 operand is not a variable
113 incompatible assignment
114 string too long to be assigned
115 parameter doesn't match
116 number of parameters doesn't match
117 result type doesn't match
118 export mark doesn't match with forward declaration
119 redefinition textually precedes procedure bound to base type
120 type of expression following IF, WHILE, UNTIL or ASSERT is not BOOLEAN
121 called object is not a procedure (or is an interrupt procedure)
122 actual VAR-parameter is not a variable
123 type of actual parameter is not identical with that of formal VAR-parameter
124 type of result expression differs from that of procedure
125 type of case expression is neither INTEGER nor CHAR
126 this expression cannot be a type or a procedure
127 illegal use of object
128 unsatisfied forward reference
129 unsatisfied forward procedure
130 WITH clause does not specify a variable
131 LEN not applied to array
132 dimension in LEN too large or negative
135 SYSTEM not imported
150 key inconsistency of imported module
151 incorrect symbol file
152 symbol file of imported module not found
153 object or symbol file not opened (disk full?)
154 recursive import not allowed
155 generation of new symbol file not allowed
156 parameter file not found
157 syntax error in parameter file

Limitations of implementation
200 not yet implemented
201 lower bound of set range greater than higher bound
202 set element greater than MAX(SET) or less than 0
203 number too large
204 product too large
205 division by zero
206 sum too large
207 difference too large
208 overflow in arithmetic shift
209 case range too large
213 too many cases in case statement
218 illegal value of parameter (0 <= p < 256)
219 machine registers cannot be accessed
220 illegal value of parameter
221 too many pointers in a record
222 too many global pointers
223 too many record types
224 too many pointer types
225 address of pointer variable too large (move forward in text)
226 too many exported procedures
227 too many imported modules
228 too many exported structures
229 too many nested records for import
230 too many constants (strings) in module
231 too many link table entries (external procedures)
232 too many commands in module
233 record extension hierarchy too high
234 export of recursive type not allowed
240 identifier too long
241 string too long
242 address overflow
244 cyclic type definition not allowed
245 guarded pointer variable may be manipulated by non-local operations; use auxiliary pointer variable

Compiler Warnings
301 implicit type cast
306 inappropriate symbol file ignored
307 no ELSE symbol after CASE statement sequence may lead to trap
308 SYSTEM.VAL result includes memory past end of source variable; use SYSTEM.GET
309 you should name this parameter type, or else no actual parameter will match
310 redefining standard predefined type
246 read-only parameter '-' cannot be combined with VAR

Run-time Error Messages
 -1 assertion failed, cf. SYSTEM_assert
 -2 invalid array index
 -3 function procedure without RETURN statement
 -4 invalid case in CASE statement
 -5 type guard failed
 -6 implicit type guard in record assignment failed
 -7 invalid case in WITH statement
 -8 value out of range
 -9 (delayed) interrupt
-10 NIL access
-11 alignment error
-12 zero divide
-13 arithmetic overflow/underflow
-14 invalid function argument
-15 internal error
