DEFINITION MODULE M2RTS ;
(*
Author : Gaius Mulley
Title : M2RTS
Date : Wed Jun 20 15:21:04 BST 1990
Description: Implements the run time system facilities of Modula-2.
Last update: Fri Jul 10 14:53:39 GMT 1998
*)
EXPORT QUALIFIED HALT,
SubrangeAssignmentError, ArraySubscriptError,
FunctionReturnError,
InstallTerminationProcedure, Terminate,
ExitOnHalt ;
(*
HALT - terminate the current program calling creating a core dump.
The procedure Terminate is called before the core dump is
created.
*)
PROCEDURE HALT ;
(*
SubrangeAssignmentError - part of the runtime checking, called if a
subrange variable is just about to be assigned an illegal value.
*)
PROCEDURE SubrangeAssignmentError (file: ARRAY OF CHAR; line: CARDINAL) ;
(*
ArraySubscriptError - part of the runtime checking, called if an
array indice is out of range.
*)
PROCEDURE ArraySubscriptError (file: ARRAY OF CHAR; line: CARDINAL) ;
(*
FunctionReturnError - part of the runtime checking, called if a
function exits without a RETURN statement.
*)
PROCEDURE FunctionReturnError (file: ARRAY OF CHAR; line: CARDINAL) ;
(*
ExitOnHalt - if HALT is executed then call exit with the exit code, e.
*)
PROCEDURE ExitOnHalt (e: INTEGER) ;
(*
InstallTerminationProcedure - installs a procedure, p, which will
be called when the procedure Terminate
is ionvoked.
*)
PROCEDURE InstallTerminationProcedure (p: PROC) ;
(*
Terminate - calls each installed termination procedure in turn.
*)
PROCEDURE Terminate ;
END M2RTS.