Как повесить на исключение дополнительную информацию?
А то получается такая фигня:
...
if ... then
error_flag := ... -- целое, может принимать 1000 разных значений, не заводить же по исключению на каждое
raise My_Exception_With_Flag;
end if;
...
when My_Exception_With_Flag =>
Put_Line(Integer'Image(error_flag));
...
Совмещение подхода исключений и кодов ошибок в одном флаконе!