在 GDB 中捕获 FreePascal 异常
我有一个用 fpc 编译的巨大的 pascal 代码。 我收到随机的“EInOutError”异常,我正在尝试使用 gdb 对其进行调试。
我已经尝试过break fpc_raiseException、catch throw、catch 异常、catch catch。似乎不起作用...
当引发异常时,如何中断(在 gdb 上进行回溯)?
I have a huge pascal code compiled with fpc.
I am getting random "EInOutError" exception and I am trying to debug it using gdb.
I already tried break fpc_raiseexception, catch throw, catch exception, catch catch. Nothign seems to work...
How can I break (to have a backtrace at gdb) when a exception is raisen?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
fpc_raiseException 上的断点应该是一件好事。
不要使用与异常相关的 gdb“catch”功能。这些适用于 GCC C++ 例外,不适用于 FPC。
A breakpoint on fpc_raiseexception should be a good thing.
Don't use gdb "catch" functionality relating to exceptions. Those are for GCC C++ exceptions, not for FPC.