НАЗВАНИЕf77 - компилятор языка Фортран 77
СИНТАКСИС f77 [-c] [-p] [-O[число]] [-S] [-o вых_файл] [-g] [-onetrip] [-1]
[-66] [-C] [-I[24s]] [-U] [-u] [-w] [-F] [-m] [-E] [-R] [-v]
[-Ncглубина] [-Nlстепень_разветвления]
[-Nqчисло_эквивалентностей] [-Nnразмер] [-Nsчисло_меток]
[-Nxчисло_внешних_имен] файл ...
ОПИСАНИЕКоманда f77 служит для вызова компилятора языка Фортран 77. Компилятор обрабатывает несколько типов файловых аргументов.
1. Аргументы, оканчивающиеся на .f, интерпретируются как имена файлов, содержащих исходные тексты на языке f77; они компилируются, и каждый об ектный модуль помещается в текущем каталоге в файл с именем, которое образуется из имени исходного файла замещением расширения .f на .o.
2. Аргументы, оканчивающиеся на .r или .e, интерпретируются как имена файлов, содержащих исходные тексты на языках RATFOR и EFL соответственно; сначала эти файлы обрабатываются подходящим препроцессором, а уже затем - компилятором f77 с образованием .o-файлов.
3. Аналогично, аргументы, оканчивающиеся на .c или .s, интерпретируются как имена файлов, содержащих исходные тексты на языке C или языке ассемблера соответственно; эти файлы обрабатываются C-компилятором или ассемблером с образованием .o-файлов.
ОКРУЖЕНИЕSHLIB
Если переменная SHLIB имеет значение
YES, будут использоваться разделяемые версии библиотек libc*.
STACKCHECK
Если переменная STACKCHECK имеет значение ON, порождаются команды для контроля стека.
FP
Если переменная FP имеет значение M68881, компилятор генерирует инструкции для сопроцессора MC68881, поддерживающего арифметику вещественных чисел. Если результат какой-либо функции является вещественным, он возвращается только в регистре %fp0. Если переменная FP равна M68881u, вещественные значения возвращаются еще и в регистрах %d0/ %d1 для совместимости со старыми библиотеками.
Компилятор выбирает соответствующие версии библиотек libc и libm согласно значениям переменных окружения FP и SHLIB.
ДИАГНОСТИКАДиагностика, выдаваемая собственно компилятором f77, не нуждается в раз яснениях. Замысловатые сообщения могут вырабатываться редактором связей ld(1).
СЮРПРИЗЫКомпилятор f77 генерирует неправильные команды при вызове функций с результатом типа
CHARACTER - неверно корректируется указатель стека. По этой же причине не работают операторы ENTRY.
При компиляции оператора INQUIRE генерируется имя L%0, которое нигде не определяется. В результате редактор связей ld(1) фиксирует фатальную ошибку.