我有一个使用 gfortran
和 -fcheck=bounds
编译器选项编译的 Fortran 程序。这会导致代码报告“数组越界”错误并随后退出。
我想使用 gdb
调试我的程序以查找错误原因。不幸的是,在 gdb 中,代码仍然会因越界错误而退出。
有没有办法告诉gdb
在发生越界错误时停止执行?
最佳答案
使用-g
编译以获取调试信息。然后,首先,我在 exit
上放置了一个断点,这工作得很好,一旦程序停止,您就可以从 exit
回溯到错误点。
回溯还通过一个名为_gfortran_runtime_error_at
的函数,因此您可能会更幸运地将断点放在那里,这对我有用,并且显然只会在您遇到运行时错误时触发。
关于fortran - 在 gdb 中对 gfortran 程序的数组越界设置断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37838574/