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