2.5 Параметры отладки программы или GNU Fortran
GNU Fortran имеет различные специальные параметры, используемые для отладки вашей программы или компилятора GNU Fortran.
-fdump-fortran-original- Выводит внутреннее дерево разбора после преобразования исходной программы во внутреннее представление. Полезно только для отладки самого компилятора GNU Fortran.
-fdump-fortran-optimized- Выводит дерево разбора после оптимизации на стадии фронтенда. Полезно только для отладки самого компилятора GNU Fortran.
-fdump-parse-tree-
Выводит внутреннее дерево разбора после преобразования исходной программы во внутреннее представление. Полезно только для отладки самого компилятора GNU Fortran. Этот параметр устарел; используйте
-fdump-fortran-originalвместо него. -
-ffpe-trap=список -
Указывает список ловушек для исключений с плавающей точкой, которые необходимо включить. На большинстве систем, если происходит исключение с плавающей точкой, и ловушка для этого исключения включена, будет отправлен сигнал SIGFPE, и программа будет прервана, создав дамп памяти, полезный для отладки. список — это (возможно, пустой) список исключений, разделённый запятыми: ‘
invalid’ (неверное операция с плавающей точкой, напримерSQRT(-1.0)), ‘zero’ (деление на ноль), ‘overflow’ (переполнение в операции с плавающей точкой), ‘underflow’ (подпороговое значение в операции с плавающей точкой), ‘inexact’ (потеря точности во время операции) и ‘denormal’ (операция выполняется с нормализованным значением). Первые пять исключений соответствуют пяти исключениям IEEE 754, тогда как последнее (‘denormal’) не является частью стандарта IEEE 754, но доступно на некоторых распространённых архитектурах, таких как x86.Первые три исключения (‘
invalid’, ‘zero’ и ‘overflow’) часто указывают на серьёзные ошибки, и если программа не предусматривает обработку этих исключений, включение ловушек для этих трёх исключений, вероятно, хорошая идея.Многие, если не большинство, операции с плавающей точкой приводят к потере точности из-за округления, и поэтому
ffpe-trap=inexactвряд ли будет представлять интерес на практике.По умолчанию ловушки для исключений не включены.
-
-ffpe-summary=список -
Указывает список исключений с плавающей точкой, статус флагов которых выводится в
ERROR_UNITпри вызовеSTOPиERROR STOP. список может быть либо ‘none’, либо ‘all’, либо список исключений, разделённый запятыми: ‘invalid’, ‘zero’, ‘overflow’, ‘underflow’, ‘inexact’ и ‘denormal’. (См.-ffpe-trapдля описания исключений.)По умолчанию выводится сводка для всех исключений, кроме ‘
inexact’. -fno-backtrace-
При возникновении серьёзной ошибки во время выполнения или выдачи смертельного сигнала (ошибка сегментации, недопустимая инструкция, ошибка шины, исключение с плавающей точкой и другие сигналы POSIX, для которых действие ‘
core’), библиотека Fortran Runtime пытается вывести трассировку ошибки.-fno-backtraceотключает генерацию трассировки. Этот параметр влияет только на компиляцию основной программы Fortran.
См. Параметры отладки вашей программы или GCC, для получения дополнительной информации о параметрах отладки.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.3/gfortran/Debugging-Options.html