GNAT.Exceptions (g-except.ads) ¶Normally it is not possible to raise an exception with
a message from a subprogram in a pure package, since the
necessary types and subprograms are in Ada.Exceptions
which is not a pure unit. GNAT.Exceptions provides a
facility for getting around this limitation for a few
predefined exceptions, and for example allow raising
Constraint_Error with a message from a pure subprogram.