RuntimeError.mesa
Copyright Ó 1985, 1988, 1989, 1991 by Xerox Corporation. All rights reserved.
Russ Atkinson (RRA) February 19, 1985 1:01:44 pm PST
Doug Wyatt, February 26, 1985 3:11:29 pm PST
Carl Hauser, July 15, 1988 3:38:41 pm PDT
Willie-s, August 5, 1991 4:48 pm PDT
RuntimeError: CEDAR DEFINITIONS
= BEGIN
Signals and errors generated by the Mesa runtime
Aborted:
ERROR;
for builtin ABORTED
AbstractionFault: ERROR;
ArithmeticFault: ERROR;
AssignRefCompositeFault: ERROR;
BoundsFault:
ERROR;
raised by bounds checking
DivideCheck:
SIGNAL;
raised by overflow on a divide
NarrowFault:
ERROR;
This error is raised by Narrow when the type of the variant is not equal to the expected type. Compiler generated use is naked (not applied)
Type: TYPE = WORD;
NarrowRefFault:
ERROR [ref:
REF, type: Type];
This error is raised by Narrow when the type of the reference is not equal to the expected type.
ProcAny: TYPE = PROC ANY RETURNS ANY;
NestedProcFault:
ERROR [proc: ProcAny];
Raised if the procedure described by proc is a nested procedure.
NilFault:
ERROR;
raised by NIL pointer checking
ResumeFault:
ERROR;
raised when an ERROR is resumed
Resume:
SIGNAL
RETURNS [
-- doesn't return -- ];
used to force a resume from a catch phrase even if the compiler won't accept RESUME at that point. WIZARDs only.
SendMsg:
SIGNAL
RETURNS [signal:
SIGNAL
ANY
RETURNS
ANY, args:
POINTER, results:
POINTER];
used to request the current signal, arguments and results pointer inside of an ANY catch phrase
StackFault:
ERROR;
... is typically disastrous, caused by bad or clobbered code
StartFault:
SIGNAL [dest:
PROGRAM];
UnboundProcedureFault:
SIGNAL [dest:
PROC
ANY
RETURNS
ANY]
RETURNS [
PROC
ANY
RETURNS
ANY];
... raised when transfer is attempted to an unbound procedure
Uncaught:
ERROR [signal:
SIGNAL
ANY
RETURNS
ANY, parameters:
WORD];
... raised when the UncaughtSignalHandler is about to be called. Using UNCAUGHT is much better than handling ANY! UNCAUGHT is builtin.
UNCAUGHT:
ERROR [signal:
SIGNAL
ANY
RETURNS
ANY, parameters:
WORD];
... For compatibility with Cedar7.0. RuntimeError.Uncaught = RuntimeError.UNCAUGHT = UNCAUGHT.
UnnamedError:
ERROR;
Corresponds to unnamed ERROR.
UnnamedSignal:
SIGNAL;
Corresponds to unnamed ERROR.
Unwind: ERROR; -- builtin UNWIND
UnwindFault:
ERROR;
raised when an UNWIND catch phrase tries to start another UNWIND;
ZeroDivisor:
SIGNAL;
the classic divide by zero signal
Related procedures
UCSProc:
TYPE =
PROC [msg:
WORD, signal:
SIGNAL
ANY
RETURNS
ANY, frame:
POINTER];
RegisterUncaughtSignalHandler:
PROC [proc: UCSProc]
RETURNS [old: UCSProc];
Registration mechanism for the global uncaught signal handling function.
InformationalSignal:
SAFE
PROC [signal:
SAFE
SIGNAL];
This is a temporary kludge that provides a minimal informational signal mechanism.
InvalidProcess:
ERROR [process:
PROCESS];
Tried to operate on an invalid process.
END.