% ///jamimager/jamerrors.jam
%If we go back to the scheme of catching all errors with a jam executable object
%Maureen Stone January 26, 1984 4:57:04 pm PST

%--------------
% Error handlers
% --------------

(/opstk){(stack contains:)=
(:indent) 1 .def /pstk}.cvx .def

(.stkundflw)
{(**Stack Underflow -- attempt to retrieve argument from empty stack.)=
/opstk .stop}.cvx .def

(.undefkey){(**Undefined key -- attempt to retrieve an unknown dictionary entry.)=
/opstk .stop}.cvx .def

(.badname)
{(**Bad File Name -- the given file name is unknown or illegal.)=
/opstk .stop}.cvx .def

(.typechk)
{(**Type Error -- bad arguments on stack --)=
/opstk .stop}.cvx .def

(.rangechk)
{(**Range Error -- some operation is attempting to index out of bounds.)=
/opstk .stop}.cvx .def

(.limitchk)
{(**Limit Error -- attempt to make an object larger than JaM can represent.)=
/opstk .stop}.cvx .def

(.syntaxerr)
{(**Syntax Error -- input ended in the middle of a string or array.)=
/opstk .stop}.cvx .def

(.overflow)
{(**Numeric Overflow -- numeric overflow has occurred in scanning a number.)=
/opstk .stop}.cvx .def

(.stkovrflw)
{(**Stack Overflow -- Too many entries have been pushed onto the operand stack.)=
(The operand stack has been packaged into an array, then cleared.)=
.stop}.cvx .def