Example of an EXCEPTION PROCEDURE Declaration

PROCEDURE P1;
  BEGIN
  REAL A, B;
  FILE MYFILE (KIND=DISK);
  EXCEPTION PROCEDURE CLEANUP;
    BEGIN
    CLOSE (MYFILE, LOCK);
    END;  %OF EXCEPTION PROCEDURE CLEANUP
  IF MYFILE.AVAILABLE THEN
    BEGIN
    OPEN (MYFILE);
    CLEANUP;       % A DIRECT CALL TO THE EXCEPTION PROCEDURE
    END;
  A := 17* (B + 4);
  END;  % OF PROCEDURE P1.  THE PROCEDURE CLEANUP WILL BE
        % INVOKED AUTOMATICALLY IF WE EXIT P1 ABNORMALLY.