Нет, этого не существует; это связано с тем, что в Solaris это зависит от ваших компиляторов и/или параметров компиляции, которые используются C++ ABI (и как выбрасываются исключения).
mdb
не не делает попытку узнать все это, и ни один не gdb
на Solaris (если вы скомпилировать его, catch throw
не будет работать ни с староголландских или нового стиля исполняемых файлов ВС CC).
Ваш лучший вариант - выяснить, что такое «C++ ABI hooks», т. Е. Какие скрытые/внутренние функции вызывают на throw()
и точку останова. Или, как только вы нашли/перечислили эти крючки, напишите свой собственный модуль, который будет реализовывать команду ::catch
(mdb
- расширяемый - модульный отладчик).
Edit: (бесстыдный штепсель) Смотри также this answer of mine (относительно C++ исключений и DTrace, «скрытые» имена функций могут быть использованы для mdb
точек останова).