Spec-Zone.ru › GNU Fortran 11

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 вместо него.

-fdebug-aux-vars

Переименовывает внутренние переменные, созданные фронт-эндом gfortran, и делает их доступными для отладчика. Имена внутренних переменных затем начинаются с заглавных букв, за которыми следует знак подчёркивания. Этот параметр полезен для отладки генерации кода компилятором вместе с -fdump-tree-original и включения отладки исполняемого файла с помощью -g или -ggdb3.

-fdump-fortran-global

Выводит список глобальных идентификаторов после преобразования в среднее представление. В основном полезно для отладки самого компилятора GNU Fortran. Вывод, генерируемый этим параметром, может меняться между версиями. Этот параметр также может генерировать внутренние ошибки компилятора для функций, которые были добавлены совсем недавно.

-ffpe-trap=list

Указывает список ловушек для исключений с плавающей точкой, которые необходимо включить. На большинстве систем, если возникает исключение с плавающей точкой и ловушка для этого исключения включена, будет отправлено сообщение SIGFPE, и программа будет прервана, создав файл core, полезный для отладки. list — это (возможно, пустой) список, разделенный запятыми, следующих исключений: ‘invalid’ (неверное операция с плавающей точкой, например SQRT(-1.0)), ‘zero’ (деление на ноль), ‘overflow’ (переполнение в операции с плавающей точкой), ‘underflow’ (потерь в операции с плавающей точкой), ‘inexact’ (потеря точности во время операции) и ‘denormal’ (операция, выполненная с ненормализованным значением). Первые пять исключений соответствуют пяти исключениям IEEE 754, тогда как последнее (‘denormal’) не является частью стандарта IEEE 754, но доступно на некоторых распространённых архитектурах, таких как x86.

Первые три исключения (‘invalid’, ‘zero’ и ‘overflow’) часто указывают на серьёзные ошибки, и если программа не предусматривает обработки этих исключений, включение ловушек для этих трёх исключений, вероятно, хорошая идея.

Если параметр используется более одного раза в командной строке, списки будут объединены: ‘ffpe-trap=list1 ffpe-trap=list2’ эквивалентно ffpe-trap=list1,list2.

Обратите внимание, что после включения исключение нельзя отключить (нет отрицательной формы).

Многие, если не большинство, операции с плавающей точкой приводят к потере точности из-за округления, и поэтому 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 Compiler Collection (GCC).

Далее: Параметры каталогов, Предыдущий: Параметры ошибок и предупреждений, Наверх: Вызов GNU Fortran [Содержание][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/Debugging-Options.html

Spec-Zone.ru

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