lldb: точка останова для исключений (эквивалент броска броска gdb) - PullRequest
42 голосов
/ 14 ноября 2011

Я пытаюсь использовать lldb для отладки c ++ и хочу остановить, если выдается исключение, например, catch throw в gdb, и я не могу найти эквивалент в документации lldb.

Ответы [ 3 ]

49 голосов
/ 19 марта 2014

Используйте break set -E c++, чтобы разбить все исключения, и break set -F std::range_error, чтобы разбить определенное исключение.

49 голосов
/ 07 октября 2012

В Xcode вы можете установить точку останова исключения («Просмотр»> «Навигаторы»> «Показать навигатор точки останова», нажмите кнопку «+» в нижней части окна списка точек останова, чтобы добавить новую точку останова).используя командную строку lldb, установите точку останова на __cxa_throw для исключений C ++, objc_exception_throw для исключений Objective C.

Для всех исключений c ++: break set -E C++.

0 голосов
/ 29 ноября 2014

Я думаю, breakpoint set -w <boolean> - правильный ответ, вы можете использовать help breakpoint set, чтобы увидеть документ.

...