ack/lang/m2/libm2/Traps.def
1987-10-30 18:32:14 +00:00

27 lines
709 B
Modula-2

DEFINITION MODULE Traps;
IMPORT EM;
CONST
ERRTOOLARGE = 64; (* stack size of process too large *)
ERRTOOMANY = 65; (* too many nested traps + handlers *)
ERRNORESULT = 66; (* no RETURN from function procedure *)
ERRCARDOVFL = 67; (* CARDINAL overflow *)
TYPE TrapHandler = EM.TrapHandler;
PROCEDURE InstallTrapHandler(t: TrapHandler): TrapHandler;
(* Install a new trap handler, and return the previous one.
Parameter of trap handler is the trap number.
*)
PROCEDURE Message(str: ARRAY OF CHAR);
(* Write message "str" on standard error, preceeded by filename and
linenumber if possible
*)
PROCEDURE Trap(n: INTEGER);
(* cause trap number "n" to occur *)
END Traps.