08-04-2023, 04:20 PM
GDB的catch命令可以通过“catch exception”捕获Ada的异常,但是在我的系统里,用这个命令产生这个错误:
搜索了一下这个问题,发现GDB的bugzilla有人报告过。[1] 可以对 __gnat_debug_raise_exception 下断点,在发生异常时,Ada的异常处理调用这个子程序,从而GDB可以停在异常发生的地方。
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=11385
引用:Your Ada runtime appears to be missing some debugging information.
Cannot insert Ada exception catchpoint in this configuration.
搜索了一下这个问题,发现GDB的bugzilla有人报告过。[1] 可以对 __gnat_debug_raise_exception 下断点,在发生异常时,Ada的异常处理调用这个子程序,从而GDB可以停在异常发生的地方。
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=11385