Справочник Ada 95
11.1 Объявления исключений
Объявление exception_declaration объявляет имя исключения.
Синтаксис
exception_declaration ::= defining_identifier_list : exception;
Статические семантики
Каждое отдельное объявление exception_declaration объявляет имя для отдельного исключения. Если обобщенный блок содержит объявление exception_declaration, объявления exception_declaration, неявно сгенерированные различными экземплярами обобщенного блока, ссылаются на разные исключения (но все имеют одинаковое defining_identifier). Конкретное исключение, обозначаемое именем исключения, определяется во время компиляции и остается неизменным независимо от того, сколько раз объявление exception_declaration используется.
Предопределенные исключения — это те, которые объявлены в объявлении пакета Standard: Constraint_Error, Program_Error, Storage_Error и Tasking_Error; одно из них возбуждается, когда происходит ошибка, определённая языком.
Динамические семантики
Выполнение объявления exception_declaration не имеет эффекта.
Выполнение любого блока возбуждает Storage_Error, если для этого выполнения недостаточно памяти. Объем памяти, необходимый для выполнения блоков, не определен.
Примеры
Примеры пользовательских объявлений исключений:
Singular : exception;
Error : exception;
Overflow, Underflow : exception;
Error : exception;
Overflow, Underflow : exception;