Unix Man (Справочное руководство)

         

SVS(1)


SVS(1)

НАЗВАНИЕ


svs - запуск системы SVS FORTRAN

СИНТАКСИС

/util/svs [+a] [-a] [+b] [-b] [+c72] [+charequ] [+d] [-d] [+dc] [-dc] [ [+eфайл] [+f] [-f] [+int2] [+iфайл] [+log2] [+lфайл] [+p] [-p] [+q] [+x] файл ...

ОПИСАНИЕ


/util/svs является shell-процедурой для запуска системы SVS FORTRAN.

Входной язык системы SVS FORTRAN является стандартным Фортраном-77. Компиляция SVS-программ обычно проходит в четыре фазы: получение промежуточного кода, получение объектного кода SVS, получение объектного файла обычного формата, получение выполняемой программы. Для получения выполняемой программы необходимо, чтобы были доступны библиотеки libSVSf.a и libSVSp.a.

Файлы с исходными текстами должны иметь расширение .for. Файл с промежуточным кодом имеет расширение .i (см. ниже опцию -i).

Кроме обычных операторов Фортрана, в исходном тексте могут присутствовать указания компилятору, характеризующиеся символом $ в первой позиции. Перечислим их.

$argcheck, $noargcheck

Трактовать несоответствие формальных и фактических параметров как фатальную ошибку или как предупреждение. Если задана опция +a (только ANSI), то независимо от указаний компилятору несоответствие параметров рассматривается как ошибка.

$binary, $notbinary

Директива позволяет программам, использующим ныне устаревшие "чистые" бесформатные файлы, работать под более новыми версиями системы. Если перед оператором OPEN указана директива $binary, то файл типа UNFORMATTED трактуется как файл типа BINARY. При указании $notbinary UNFORMATTED трактуется как тип файла в соответствии со стандартом ANSI, но файл будет содержать управляющие последовательности и символы конца записи.

$charequ

Разрешить связывать отношением EQUIVALENCE переменные числовых и символьных типов.

$col72

Обрезать входные строки до 72 символов. По умолчанию строки обрезаются до 120 символов. Кроме того, действует ограничение на суммарное количество символов в операторе - 1360, что соответствует 20 строкам по 66 символов.

$debug

Включить/выключить генерацию таблицы для отладчика SVS.

$f66do


При указании этой опции DO- циклы всегда выполняются по крайней мере один раз.

$float, $nofloat

Генерировать код для сопроцессора арифметики вещественных чисел или для эмулятора. См. также опции командной строки +f и -f.

$include файл

Вставить файл в данное место текста. Допускается до пяти уровней вложенности включаемых файлов.

$int2 По умолчанию считать тип INTEGER совпадающим с INTEGER*2, тип LOGICAL - с LOGICAL*1.

$log2 По умолчанию считать тип LOGICAL совпадающим с LOGICAL*2.

$system



В идентификаторах разрешается использовать символы _ и %.

$xref Генерировать таблицу перекрестных ссылок.

В командной строке допускаются следующие опции:

+a -a Рассматривать использование несоответствующих стандарту ANSI возможностей как ошибку (+a) или нет (-a). По умолчанию используется -a. Установка +a вызывает автоматическую установку флага -c72, ограничивающего длину строки до 72 символов. При указании флага +a компилятор позволяет все же указывать директивы $include, $xref, $col72, $float, $nofloat, $debug, $nodebug и $notbinary. При этом недопустимы директивы $system, $f66do, $int2, $charequ и $binary.

+b -b Управление интерпретацией типа файла UNFORMATTED в операторе OPEN. По умолчанию полагается опция -b, соответствующая директиве $notbinary, при указании которой тип файла не является "чистым" бесформатным, а соответствует стандарту ANSI.

+c72 Обрезать входные строки до 72 символов.

+charequ

Разрешить связывать отношением EQUIVALENCE переменные числовых и символьных типов.

+d -d Генерировать (+d) или нет (-d) таблицу для SVS отладчика.

+dc -dc

Условная компиляция строк, содержащих в первой позиции символ D или d.

+e -e Стандартные соглашения системы SVS FORTRAN таковы, что параметры подпрограмм и функций забираются со стека вызванной подпрограммой (функцией), перед возвратом. В то же время соглашения C-компилятора иные: параметры забирает со стека вызывающая функция. Опция -e заставляет SVS-компилятор придерживаться соглашений, принятых в реализации языка C. Если нужно вызывать из Фортран-программы C-функции, следует употребить опцию -e, что и делается при компиляции средствами редактора РК. Отметим, что если имя подпрограммы или функции начинается с символа %, она будет скомпилирована по стандартным соглашениям SVS FORTRAN.

+eфайл



Вывести все сообщения об ошибках компиляции в файл.

+f -fГенерировать код для сопроцессора арифметики вещественных чисел (+f) или для эмулятора (-f).

+int2 По умолчанию считать описание INTEGER эквивалентным INTEGER*2, а LOGICAL - LOGICAL*1.

+iфайл

Назвать .i-файл именем файл.

+log2 По умолчанию считать описание LOGICAL эквивалентным LOGICAL*2.

+lфайл

Сгенерировать листинг и поместить его в файл.

+p -p Выводить (+p) или не выводить (-p) запрос при обнаружении ошибок. При компиляции средствами редактора РК используется опция -p.

+q -q Выводить больше (-q) или меньше (+q) информации о работе компилятора. По умолчанию -q.

+x Генерировать таблицу перекрестных ссылок.

ФАЙЛЫ



/usr/lib/libSVSf.a /usr/lib/libSVSp.a Библиотеки времени выполнения. /usr/bin/fortran Компилятор. /usr/bin/jcode Генератор объектного кода SVS. /usr/bin/jlinker Генератор объектных файлов обычного формата. /usr/lib/ftncterrs Перечень ошибок времени компиляции. /usr/lib/ftnrterrs Перечень ошибок времени выполнения.

СМ. ТАКЖЕ



, .

ДИАГНОСТИКА



Система SVS FORTRAN содержит файл сообщений об ошибках компиляции, а также файл сообщений об ошибках времени выполнения. Компилятор выдает номера ошибок и сообщения о них.


Содержание раздела