+ printCompileModList: BOOLEAN;
+ printLinkModList: BOOLEAN;
+ printCompileFileList: BOOLEAN;
+
+ PROCEDURE Error (e: INTEGER; IN p0, p1: ARRAY OF CHAR; i2: INTEGER);
+ VAR msg, p2: ARRAY 128 OF CHAR;
+ BEGIN
+ CASE e OF
+ | 0: msg := "option -D expect + or - after identifier"
+ | 1: msg := "option -D expect identifier"
+ | 2: msg := "option -U expect identifier"
+ | 3: msg := "module name must be identifier"
+ | 4: msg := "expected integer" (* p0 = in str *)
+ | 5: msg := "unterminated string"
+ | 6: msg := "unknown processor ^0"
+ | 7: msg := "unknown os ^0"
+ | 8: msg := "unknown compiler ^0"
+ | 9: msg := "unknown linker ^0"
+ | 10: msg := "missing argument for option ^0"
+ | 11: msg := "unknown option ^0"
+ | 12: msg := "compiler not selected"
+ | 13: msg := "processor not selected"
+ | 14: msg := "processor not supported by native compiler"
+ | 15: msg := "internal linker not required for cpfront"
+ | 16: msg := "cpfront can't out executable file"
+ | 17: msg := "linker not selected"
+ | 18: msg := "os not selected"
+ | 19: msg := "output file name can't be empty"
+ | 20: msg := "recursive import of ^0 in ^1"
+ | 21: msg := "unable to open module ^1"
+ | 22: msg := "linker terminated with code ^2"
+ | 23: msg := "unable to execute linker"
+ | 24: msg := "trap occured"
+ | 25: msg := "compiler not installed"
+ | 26: msg := "linker not installed"
+ ELSE
+ Strings.IntToString(err, msg)
+ END;
+ Strings.IntToString(i2, p2);
+ Log.String(Kernel.argv[0]$); Log.String(": ");
+ Log.ParamMsg(msg, p0, p1, p2); Log.Ln;
+ INC(err)
+ END Error;