-- Exceptions of general use across Agpl. -- And type for storage of exceptions. with Ada.Exceptions; package Agpl.Exceptions is pragma Preelaborate; Unimplemented : exception; protected type Protected_Occurrence is -- Maybe a more general type with a queue of exceptions could be useful? procedure Check_And_Clear; -- Will raise any stored exception or null otherwise function Is_Set return Boolean; procedure Clear; -- Clear any stored exception without raising it procedure Store (E : Ada.Exceptions.Exception_Occurrence); private Occurrence : Ada.Exceptions.Exception_Occurrence; end Protected_Occurrence; end Agpl.Exceptions;