IMPLICIT exceptions


Motivation

We need some mechanism for handling checked runtime errors in Modula-3. We have added implicit exceptions, which are exceptions that any procedure can raise.

Implementation

The compiler takes a pragma <* IMPLICIT *>, which is used to suppress warnings about implicit exceptions.

<* IMPLICIT *> EXCEPTION Foo;

This pragma means that foo can be raised by any procedure.

The SPIN runtime translates checked runtime errors into implicit exceptions.


Other SPIN Modula-3 changes

May 20, 1996

whsieh@cs.washington.edu