If your program encounters a signal (exception) at run time, to make it easier to debug the program, you may want to recompile and relink with the following command-line options before debugging the cause of the signal:
Use the -fpen option to control the handling of floating point exceptions.
As with other debugging tasks, use the -g option to generate sufficient symbol table information and debug unoptimized code.
If requested, idb will catch and handle signals before the Intel Fortran run-time library (RTL) does. You can use the idb commands catch and ignore to control whether idb catches signals or ignores them:
When idb catches a signal, an idb message is displayed and execution stops at that statement line. The error-handling routines provided by the RTL are not called. At this point, you can examine variables and determine where in the program the signal has occurred.
When idb ignores a signal, the signal is passed to the RTL. This allows the handling and display of run-time signal messages in the manner requested during compilation.
To obtain the appropriate run-time error message when debugging a program that generates a signal (especially one that allows program continuation), you might need to use the ignore command before running the program. For instance, use the following command to tell the debugger to ignore floating-point signals and pass them through to the RTL:
(idb) ignore fpe
In cases where you need to locate the part of the program causing a signal, consider using the where command.