Spec-Zone.ru › GNU Fortran 7

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API