Spec-Zone.ru › GNU Fortran 14

2.5 Параметры для отладки программы

GNU Fortran имеет различные специальные параметры, используемые для отладки программы.

-fdebug-aux-vars

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

-ffpe-trap=list

Указывает список ловушек исключений с плавающей запятой для включения. На большинстве систем, если возникает исключение с плавающей запятой и ловушка для этого исключения включена, будет отправлен сигнал SIGFPE, и программа будет прервана, создав дамп памяти, полезный для отладки. list — это (возможно, пустой) список, разделенный запятыми, содержащий либо ‘none’ (для очистки набора исключений, которые должны отлавливаться), либо следующие исключения: ‘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.

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

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

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

Spec-Zone.ru

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