Как я могу заставить gdb прерывать (как в точке останова) программу в точке, где выбрасывается исключение, и снова прерывать при перебрасывании и начале соответствующих блоков захвата?
gdb
Попробуйте catch throw и catch catch.
catch throw
catch catch
Установить точку перехвата.