Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Книга Фортран Павловец 2008

.pdf
Скачиваний:
127
Добавлен:
31.05.2015
Размер:
1.55 Mб
Скачать

│F2730

│ <name>:cannot

modify active

DO variable

│ DO-переменная

не может быть

модифицирована внутри

│ данного

диапазона. Такую

ошибку может вызвать,

│ например, следующий программный фрагмет:

DO 100 I=1,10

 

OPEN

(33,

IOSTAT=I)

 

│ 100 CONTINUE

 

 

READ

(*,*) (I, I=1, 10)

 

├─────────┼──────────────────────────────────────────────────────┤

│F2731

<iooption>: noncharacter array nonstandard

Если при компиляции используется параметр /4Ys (или│

│ метакоманда $STRICT), должны использоваться стандарт-│

│ ные форматы языка. В этих случаях в качестве коррект-│

│ ных спецификаторов ввода/вывода следует

использовать│

только символьные переменные, массивы

элементов и│

подстроки.

├─────────┼──────────────────────────────────────────────────────┤

│F2732

│ <stmt>:nonstandard statement

END DO, DO

WHILE,

│ (IMPLICIT

NONE,

INCLUDE, SELECT,

NAMELIST,

TYPE,

END TYPE, TYPE()

и

т.д.). Оператор

нестандартный и

задана метакоманда

$STRICT.

 

├─────────┼──────────────────────────────────────────────────────┤

│F2733

│ <iooption>: option nonstandard

 

 

Указанный параметр

ввода/вывода не является частью

стандартного языка

ФОРТРАН-77;

он

не может быть за-

│ дан, если используется параметр компиляции /4Ys (или │

│ │ метакоманда $STRICT). │

├─────────┼──────────────────────────────────────────────────────┤ │F2734 │ END=:illegal when REC= present │

│ В операторах READ должны присутсвовать оба параметра:│

│ │ REC= и END= │

├─────────┼──────────────────────────────────────────────────────┤

│F2735

REC=:illegal

when

FMT=*

В операторах

READ

и WRITE применение параметра REC=

│ является некорректным, если используется ввод/вывод, │

│ │ управляемый списком. │

├─────────┼──────────────────────────────────────────────────────┤

│F2736

│ LOCKING:nonstandard

│ Если используется параметр компиляции /4Ys (или ме-

такоманда $STRICT), то применение оператора LOCKING

запрещено.

├─────────┼──────────────────────────────────────────────────────┤ │F2737 │ <iooption>:lowercase in string nonstandard │

│ Если используется параметр компиляции /4Ys (или мета-│

│ команда

$STRICT), то значение специфицированного па-│

│ раметра

ввода/вывода должно

быть

задано прописными│

│ буквами.

Например,

запись

ACCESS='DIRECT' является│

в

данном

случае

корректной;

ACCESS='direct' - │

некорректной.

 

 

├─────────┼──────────────────────────────────────────────────────┤

│F2738

<name>:HUGE internal

units illegal

Массив, используемый

как "внутреннее

устройство", не│

│ может быть объявлен с атрибутом HUGE, или использован│

в метакоманде $LARGE. Размер массива не может

превы-│

шать размер сегмента.

├─────────┼──────────────────────────────────────────────────────┤

│F2739

│ <name>:record length too large

for internal unit

│ Для несимвольного массива,

используемого

как "внут-

│ реннее

устройство", размер

элемента, умноженный на

"элемент счета"

(т.е. на длину

записи во

внутреннем

файле)

оказался

слишком большим.

 

181

├─────────┼──────────────────────────────────────────────────────┤

│F2740

│ RECL=:out

of range

было меньше или равно 0,

Значение

параметра RECL=

либо превысило максимальное

действительное значение.

├─────────┼──────────────────────────────────────────────────────┤

│F2741

ACCESS=:nonstandard option value

Этот параметр не используется для доступа к файлу.

├─────────┼──────────────────────────────────────────────────────┤

│F2742

format specification

illegal when

namelist specified

Спецификаторы NML= и

FMT= взаимно

исключающие.

├─────────┼──────────────────────────────────────────────────────┤ │F2743 │ <name>:NML=:not a namelist group name │

│ Имя, определяемое спецификатором NML=, было объявлено│

│ │ в операторе NAMELIST. │

├─────────┼──────────────────────────────────────────────────────┤

│F2744

NML=:namelist group name missing

Спецификатор NML= требует имени в качестве параметра.│

├─────────┼──────────────────────────────────────────────────────┤

│F2745

│ <name>:i/o of entire structures illegal

│ Читаться или писаться в файл, используя форматный

ввод/вывод могут только переменные элементы типа

структуры.

├─────────┼──────────────────────────────────────────────────────┤ │F2800 │ <name>:CHARACTER*(*) type illegal │

│ Элемент был объявлен с типом CHARACTER*(*), но не был│

указан в списке формальных параметров в текущей

под-│

программе.

├─────────┼──────────────────────────────────────────────────────┤ │F2801 │ no ASSIGN statements for assigned GOTO (or FMT=) │

│ Фрагмент программы не имеет операторов ASSIGN для ис-│

│ пользования с присваиваемым оператором GOTO или спе- │

│ │ цификатором FMT=. │

├─────────┼──────────────────────────────────────────────────────┤ │F2803 │ <name>:ASSIGN:variable not INTEGER │

│ В операторах ASSIGN корректными являются только пере-│

│ │ менные типа INTEGER*n или INTEGER. │

├─────────┼──────────────────────────────────────────────────────┤

│F2804

│ <name>:ASSIGN:too many INTEGER*1

variables

могут

ис-

В подпрограмме

переменные типа

INTEGER*1

пользовать только

первые 127 операторов ASSIGN.

Это

│ ограничение обусловлено ограничениями области памяти │

│ │ для хранения элементов типа INTEGER*1. │

├─────────┼──────────────────────────────────────────────────────┤ │F2805 │ label <number>:redefined in program unit │

│ Специфицированная метка ранее указана в подпрограмме.│

│ │ Метки не могут быть определены больше одного раза│

│ внутри этой подпрограммы. Эта ошибка возникает также,│

│ если в DO-цикле указана ссылка на определенную ранее │

│ │ метку. │

├─────────┼──────────────────────────────────────────────────────┤

│F2806

│ DO-loop variable:not

a variable

константой,

Переменная DO-цикла была символьной

но не фактической

переменной.

 

├─────────┼──────────────────────────────────────────────────────┤

│F2807

<name>:illegal use of active DO-loop variable

Неправильным является использование действительной│

│ переменной DO-цикла в качестве другой переменной│

DO-цикла вo встроенном операторе DO. Внутри DO-циклов│

│ значения переменным DO-цикла назначены быть не могут.│

├─────────┼──────────────────────────────────────────────────────┤

│F2808

│ DO-loop variable not INTEGER or REAL

182

В качестве

переменных DO-цикла допустимы только

переменные

типа INTEGER*n и REAL*n.

├─────────┼──────────────────────────────────────────────────────┤

│F2809

│ DO-loop expression

not INTEGER or REAL

В качестве границ DO-цикла допустимы

только выраже- │

ния типа INTEGER*n

и REAL*.

├─────────┼──────────────────────────────────────────────────────┤

│F2810

zero illegal as increment

В качестве приращений в DO-циклах допустимы

только │

│ ненулевые приращения (в противном случае цикл никог- │

│ │ да не завершится). │

├─────────┼──────────────────────────────────────────────────────┤

│F2811

│ IF or ELSEIF missing

Нарушено

соответствие операторов IF или ELSEIF и

ELSE или

ELSEIF, заданных в программе.

├─────────┼──────────────────────────────────────────────────────┤

│F2812

│ ENDIF missing

 

Прежде, чем был указан оператор END, не все блоки

IF-ENDIF были

завершены.

├─────────┼──────────────────────────────────────────────────────┤ │F2813 │ DO-loop label <number>:not seen │

│ Не все DO-циклы были завершены прежде, чем был указан│

│ │ оператор END. │

├─────────┼──────────────────────────────────────────────────────┤ │F2814 │ IF, ELSEIF, or ELSE missing │

│ Нарушено соотвествие оператора IF, ELSEIF или ELSE и │

│ │ оператора ENDIF, указанных в программе. │

├─────────┼──────────────────────────────────────────────────────┤ │F2815 │ assigned GOTO variable not INTEGER │

│ Для присваиваемых переменных GOTO корректным является│

использование только элементов типа INTEGER*n

и│

INTEGER.

├─────────┼──────────────────────────────────────────────────────┤ │F2816 │ computed GOTO variable not INTEGER │

│ Для вычисляемых переменных GOTO допустимо использова-│

│ │ ние только элементов типа INTEGER*n и INTEGER. │

├─────────┼──────────────────────────────────────────────────────┤

│F2817

│ expression type not LOGICAL

Для логических операторов или блочных операторов

IF типы выражений дожны быть типа LOGICAL[*n].

├─────────┼──────────────────────────────────────────────────────┤ │F2818 │ expression type not INTEGER or REAL │

│ Типы выражений для арифметических операторов IF долж-│

│ │ ны быть типа INTEGER[*n] или REAL[*n]. │

├─────────┼──────────────────────────────────────────────────────┤ │F2819 │ illegal statement after logical IF │

│ За логическими операторами IF могут следовать только │

│ │ "одностроковые" операторы. За логическим оператором │

│ IF может следовать любой исполняемый оператор, кроме │

операторов DO,

ELSE, ELSEIF, END, ENDIF, блочный IF │

и логический IF.

├─────────┼──────────────────────────────────────────────────────┤

│F2820

│ block label <number>:must not be referenced

На метки,

указываемые в операторах ELSE и ELSEIF,

ссылаться

нельзя.

├─────────┼──────────────────────────────────────────────────────┤ │F2821 │ label <number>:previously used as executable label │

│ Специфицированная метка, ранее указанная как исполни-│

тельная метка,

была использована в качестве метки│

оператора FORMAT

или оператора спецификации.

├─────────┼──────────────────────────────────────────────────────┤

183

│F2822

│ label <number>:previously used as FORMAT label

│ Специфицированная метка, ранее используемая как метка│

│ оператора FORMAT, была использована как исполнитель-│

│ │ ная метка или метка оператора спецификации. │

├─────────┼──────────────────────────────────────────────────────┤

│F2823

DO-loop label <number>:out of order

Специфицированная метка завершения

оператора DO не│

│ была упорядочена. Метки DO-цикла могут быть повторены│

│ │ в обратном порядке. │

├─────────┼──────────────────────────────────────────────────────┤

│F2824

│ assigned and unconditional GOTO illegal here

Присваиваемые и безусловные GOTO-операторы не могут

обеспечить выход из DO-цикла.

├─────────┼──────────────────────────────────────────────────────┤

│F2825

│ block and

arithmetic IF illegal here

Блоковые и арифметические операторы IF не могут

завершать

DO-цикл.

├─────────┼──────────────────────────────────────────────────────┤ │F2826 │ statement illegal as DO-loop termination │

│ Для завершения DO-цикла не могут использоваться опе- │

│ раторы ELSE, ELSEIF, END, ENDIF, FORMAT или STOP. │

├─────────┼──────────────────────────────────────────────────────┤

│F2827

│ STOP (or

PAUSE):

maximum of 5 digits

 

Операторы STOP и

PAUSE предполагают только цифровые

значения

в диапазоне от 0 до 99.999,

включительно.

├─────────┼──────────────────────────────────────────────────────┤ │F2828 │ ASSIGN target not an INTEGER variable │

│ В качестве "адресатов" в операторах ASSIGN предпола- │

│ │ гаются только переменные типа INTEGER. │

├─────────┼──────────────────────────────────────────────────────┤

│F2829

│ STOP (or PAUSE):illegal expression

PAUSE являются

Действительными в операторах STOP и

только целочисленные или символьные

константы.

├─────────┼──────────────────────────────────────────────────────┤ │F2830 │ END missing │

│ Оператор END не указан как последний оператор в моду-│

│ │ ле. │ ├─────────┼──────────────────────────────────────────────────────┤ │F2831 │ label <number>:must not be referenced │

│ Указанная метка присутствует в операторе спецификации│

│ │ или операторе DATA. │

├─────────┼──────────────────────────────────────────────────────┤

│F2832

│ statement illegal in INTERFACE

В операторах INTERFACE действительны только опера-

торы описания (спецификации).

├─────────┼──────────────────────────────────────────────────────┤

│F2833

RETURN:integer or character expression required

Если при компиляции используется параметр /4Ys (или│

│ метакоманда $STRICT), то после оператора RETURN могут│

│ следовать только целочисленные или символьные выраже-│

│ │ ния. │ ├─────────┼──────────────────────────────────────────────────────┤ │F2834 │ <name>:alternate RETURN missing │

│ В специфицированной подпрограмме задан альтернирующий│

оператор RETURN,

тогда как он не задан в объявлении│

подпрограммы.

├─────────┼──────────────────────────────────────────────────────┤

│F2835

statement

out of order

or END missing

Оператор

спецификации

был вложен в

исполнительный │

│ оператор; вне правильной последовательности операто- │

│ ров "возник" другой оператор, либо предыдущая прог- │

184

│ │ рамма не была завершена оператором END. │

├─────────┼──────────────────────────────────────────────────────┤

│F2836

│ statement out of order

Оператор появился вне допустимой последовательности │

операторов в программе. Например, оператор

специфи-│

│ кации мог появиться вместе с исполнительными операто-│

│ │ рами. │

├─────────┼──────────────────────────────────────────────────────┤

│F2837

│ label <number>:undefined

на которую есть ссылка в

Специфицированная метка,

программе, не была определена.

├─────────┼──────────────────────────────────────────────────────┤

│F2838

│ statement illegal

in BLOCK DATA

В подпрограммах в

конструкции BLOCK DATA допустимы

только операторы DATA и операторы спецификации типа. │

├─────────┼──────────────────────────────────────────────────────┤

│F2839

│ only variables allowed in assigned GOTO statements

В присваиваемых операторах GOTO разрешены только

переменные.

├─────────┼──────────────────────────────────────────────────────┤ │F2840 │ <name>:assumed-size array:not reference argument │

│ Массивы "допустимого размера" должны передаваться по │

ссылке. Они не могут быть локальными

объектами │

подпрограммы.

├─────────┼──────────────────────────────────────────────────────┤ │F2841 │ <name>:adjustable-size array:not reference argument │

│ Массивы "настраиваемого размера" должны передаваться │

по ссылке. Они

не могут быть локальными объектами │

подпрограммы.

├─────────┼──────────────────────────────────────────────────────┤

│F2842

│ too many assigned GOTO statements

255 присваиваемых

В подпрограмме допустимо не

более

операторов GOTO (это ошибка

компиляции).

├─────────┼──────────────────────────────────────────────────────┤ │F2843 │ statement illegal with INTERFACE TO │

│ Интерфейс должен относиться к подпрограмме или функ- │

│ ции. Оператор INTERFACE TO может не использоваться │

│ │ для объявления вызовов подпрограмм. │

├─────────┼──────────────────────────────────────────────────────┤ │F2844 │ no matching DO loop │

│ Операторы EXIT, CYCLE или END DO не имеют соответст- │

│ │ вующего DO-цикла. │

├─────────┼──────────────────────────────────────────────────────┤

│F2845

END SELECT missing

не имеет завершения.

Конструкция SELECT

├─────────┼──────────────────────────────────────────────────────┤

│F2846

DO-LOOP ENDDO:not seen

Для цикла DO без метки

не найден оператор завершения.│

├─────────┼──────────────────────────────────────────────────────┤

│F2848

│ statement illegal in STRUCTURE declaration

В объявлении STRUCTURE допустим только оператор

STRUCTURE.

├─────────┼──────────────────────────────────────────────────────┤ │F2860 │ expresiion must be integer, character, or logical │

│ Выражение SELECT CASE должно быть целочисленным, типа│

│ │ CHARACTER*1 или логическим. │

├─────────┼──────────────────────────────────────────────────────┤ │F2861 │ no matching SELECT CASE statement │

│ Оператор SELECT CASE не имеет предварительно заданно-│

│ │ го оператора SELECT CASE. │

├─────────┼──────────────────────────────────────────────────────┤

185

│F2862

│ only

one CASE

DEFAULT allowed

В операторе SELECT CASE допустимо не более одного

CASE

DEFAULT.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2863 │ CASE values must be constant expression │

│ Значение CASE не может быть переменной или выражением│

│ │ которое содержит переменные. │

├─────────┼──────────────────────────────────────────────────────┤

│F2864

CASE

value type does not match SELECT CASE expression│

type

│ Тип значения CASE и типы данных выражения SELECT CASE│

│ │ должны совпадать. │

├─────────┼──────────────────────────────────────────────────────┤

│F2865

│ overlapping case values

Заданное значение должно соответствовать только

одному значению CASE.

├─────────┼──────────────────────────────────────────────────────┤

│F2866

│ The CASE

statement must follow a SELECT CASE

│ statement

CASE появился

без предварительно заданного

Оператор

оператора SELECT CASE.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2867 │ LOGICAL case value ranges illegal │

│ Логическое значение регистра не должно задаваться как│

│ │ диапазон значений. │

├─────────┼──────────────────────────────────────────────────────┤

│F2868

│ SELECT CASE:character expression must

be length 1

Допустимы только символьные выражения

типа

CHARACTER*1.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2869 │ lower value exceeds upper value in case value range │

│ Значение слева от двоеточия должно быть больше значе-│

│ │ ния справа от двоеточия. │

├─────────┼──────────────────────────────────────────────────────┤

│F2870

<name>:element is an array

Поле, являющееся массивом структур, не индексируется.│

├─────────┼──────────────────────────────────────────────────────┤ │F2901 │ -4I2 or -4I4 expected │

│ По умолчанию поддерживаются только 2-х и 4-х байтовые│

│ │ целочисленные и логические значения. │

├─────────┼──────────────────────────────────────────────────────┤ │F2902 │ -4Y and -4N: both options used for argument │

│ В обоих параметрах компиляции-/4Y и /4N-была специфи-│

│ │ цирована метакоманда $DO86 или $FREEFORM. │

├─────────┼──────────────────────────────────────────────────────┤

│F2993

separator expected in format

При использовании параметра компиляции /4Ys (или

│ метакоманды $STRICT), в качестве разделителей элемен-│

│ │ тов используются запятая (,), двоеточие (:), правая│

│ круглая скобка ( )) или слэш (/), за исключением сле-│

│ дующих случаев:

│ - между дескриптором преобразования P и дескрипторами│

F, D, E или

G (они следуют

друг за другом без│

разделителей);

 

│ - разделители не ставятся до и после дескриптора пре-│

│ образования в виде слэша (/);

│ - разделители не ставятся до и после дескриптора пре-│

│ │ образования в виде двоеточия (:). │

├─────────┼──────────────────────────────────────────────────────┤

│F2994

\or $ : nonstandard edit descriptor in format

Дескрипторы преобразования \ и $ не входят в состав│

186

│ стандартного ФОРТРАНа-77, а являются расширением язы-│

ка. Данная ошибка возникает, если используется

пара-│

метр компиляции /4Ys (или метакоманда $STRICT).

├─────────┼──────────────────────────────────────────────────────┤

│F2995

Z : nonstandard edit descriptor in format

Дескриптор преобразования Z не входит

в состав │

│ стандартного ФОРТРАНа-77, а является расширением язы-│

│ ка. Эта ошибка возникает, если используется параметр │

│ │ компиляции /4Ys (или метакоманда $STRICT). │

└─────────┴──────────────────────────────────────────────────────┘

2.2.3 Сообщения о восстанавливаемых ошибках

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

┌─────────┬──────────────────────────────────────────────────────┐ │ Номер │ Сообщения о восстанавливаемых ошибках компиляции │

├─────────┼──────────────────────────────────────────────────────┤ │F3606 │ <subprogram>:formal argument <name>:type mismatch │

│ Тип формального параметра не совпадает с типом факти-│

│ ческого параметра, используемого в вызове подпрограм-│

│ │ мы. │ ├─────────┼──────────────────────────────────────────────────────┤ │F3607 │ <subprogram>:formal argument <name>:length mismatch │

│ Длина формального параметра отличается от длины фак- │

│ │ тического параметра, используемого в программе. │

└─────────┴──────────────────────────────────────────────────────┘

2.2.4 Предупреждающие сообщения об ошибках

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

┌─────────┬──────────────────────────────────────────────────────┐ │ Номер │ Предупреждающие сообщения об ошибках │

├─────────┼──────────────────────────────────────────────────────┤

│F4000

UNKNOWN WARNING

Встретилось неизвестное предупреждение.

├─────────┼──────────────────────────────────────────────────────┤ │F4001 │ colon expected following ALIAS │

│ Атрибут ALIAS задан в неправильной форме. Правильным │

│ │ будет его следующий вид: ALIAS:<string>. │

├─────────┼──────────────────────────────────────────────────────┤

│F4002

│ $DEBUG:'<debug-list>' illegal with $FREEFORM

в

│ Данная форма метакоманды $DEBUG была использована

тот момент, когда была действительна метакоманда

$FREEFORM.

 

├─────────┼──────────────────────────────────────────────────────┤

│F4003

│ $DECMATH not support

Метакоманда $DECMATH в данной версии ФОРТРАНа не

поддерживается.

├─────────┼──────────────────────────────────────────────────────┤ │F4006 │ metacomand already set │

│ Была переустановлена метакоманда, которая может быть │

│ │ указана только один раз. │

├─────────┼──────────────────────────────────────────────────────┤

187

│F4007

│ metacomand

must come before all FORTRAN statements

Данная метакоманда должна

появляться прежде всех

операторов

языка ФОРТРАН.

 

├─────────┼──────────────────────────────────────────────────────┤ │F4008 │ character following metacomand ignored │

│ Любые символы, которые следуют за полностью выполнен-│

│ │ ной метакомандой, игнорируются. │

├─────────┼──────────────────────────────────────────────────────┤ │F4010 │ <filename>:error closing file │

│ При закрытии исходного файла возникла системная ошиб-│

│ │ ка. │ ├─────────┼──────────────────────────────────────────────────────┤ │F4011 │ empty escape sequence │

│ В конце Си-строки был встречен символ обратного слэша│

│ (\), например 'abc\'. Он замещается на ноль. Обратный│

│ │ слэш должен быть удален. │

├─────────┼──────────────────────────────────────────────────────┤

│F4014

│ <character>:nonalphabetic character

in $DEBUG ignored│

│ В идентификатор

метакоманды был включен небуквенный

символ. Допустимыми являются только

символы a-z или

A-Z; регистр не

является значимым.

 

├─────────┼──────────────────────────────────────────────────────┤

│F4056

overflow in constant arithmetic

Результат операции превышает значение #7FFFFFFF.

├─────────┼──────────────────────────────────────────────────────┤

│F4057

owerflow in constant multiplication

Результат операции превышает значение #7FFFFFFF.

├─────────┼──────────────────────────────────────────────────────┤

│F4058

adress of

frame

variable taken,

DS!=SS

Программа

была

скомпилирована

с сегментом данных,│

│ принимаемым по умолчанию (DS), размер которого не ра-│

│ вен размеру стекового сегмента (SS); программа "пыта-│

лась" выполнить ссылку на переменную типа фрейма с│

помощью указателя типа "near".

├─────────┼──────────────────────────────────────────────────────┤

│F4059

│ segment

lost in

conversion

│ В результате

выполнения операции преобразования

│ "дальнего" указателя

(типа "far"; полный адрес) в

"ближний" адрес

(типа

"near"; только смещение) был

потерян

адрес сегмента.

├─────────┼──────────────────────────────────────────────────────┤

│F4060

│ conversion of long adress to

short adress

В

результате

выполнения

операции преобразования│

адреса типа "far" (32-х разрядный указатель) в

адрес│

│ типа "near" (16-ти разрядный указатель) был потерян│

│ │ адрес сегмента. │

├─────────┼──────────────────────────────────────────────────────┤ │F4061 │ long/short mismatch in argument:conversion supplied │

│ Фактические и формальные параметры функции отличают- │

ся типом основания. Тип фактического параметра был │

преобразован к типу формального параметра.

├─────────┼──────────────────────────────────────────────────────┤ │F4062 │ near/far mismatch in argument: conversion supplied │

│ Фактические и формальные параметры функции отличают- │

│ ся указателем размера. Размер фактического параметра │

│ был преобразован к размеру формального параметра. │

├─────────┼──────────────────────────────────────────────────────┤

│F4063

│ <name>:function too large for post-optimiser

│ Компилятор

предпринял попытку выполнить процедуру

оптимизации

функции, но при этом произошел выход за

пределы доступной памяти. Выдается предупреждение,

188

│ процедура оптимизации пропускается, продолжается вы- │

│ полнение процедуры компиляции.

Чтобы избежать такой

ошибки, рекомендуется разбить

функцию на несколько

"более мелких" функций.

 

├─────────┼──────────────────────────────────────────────────────┤

│F4064

│ procedure too large,

skipping <optimization>

│ optimization and continuing

Компилятор

пытался

выполнить заданный тип оптимиза-│

ции,

но

при этом

произошел выход за пределы дос-│

│ тупной памяти. Выдается сообщение, заданная часть оп-│

│ тимизации пропускается, компиляция продолжается.

Чтобы избежать такой ошибки, рекомендуется разбить│

функцию на несколько "более мелких" функций.

├─────────┼──────────────────────────────────────────────────────┤

│F4065

│ Recoverable

heap

overflow in post-optimizer - some

│ optimization may

be

missed

Компилятор

пытался

выполнить процедуру оптимизации│

функции, но

при этом произошел выход за пределы дос-│

│ тупной памяти. Выдается предупреждение, процедура оп-│

│ тимизации пропускается, компиляция продолжается. │

│ Для предотвращения возникновения такой ошибки следует│

│ разбить функцию на несколько "более мелких" функций. │

├─────────┼──────────────────────────────────────────────────────┤

│F4066

local symbol table overflow - some local symbol may

be missing in listings

│ При выполнении операции сбора локальных символов для │

│ листинга исходного файла компилятор "вышел" за преде-│

лы

доступной области памяти. В листинге указываются │

не

все символы.

├─────────┼──────────────────────────────────────────────────────┤

│F4072

insufficient

memory

to process

debugging information

Пользователь

задал

параметр

компиляции /Zd,

но

│ компилятор не имел достаточной памяти для сохранения │

всей требуемой

для отладки информации (это ошибка │

компиляции).

├─────────┼──────────────────────────────────────────────────────┤

│F4186

│ string too long

- truncated to 40 characters

В метакоманде $TITLE или $SUBTITLE использована

строка, длиннее

40 символов. Строка усекается.

├─────────┼──────────────────────────────────────────────────────┤

│F4201

│ ENTRY:formal argument

<na,e>:ATTRIBUTE <attribute>: │

│ mismatch

и при

В объявлении

использовании оператора ENTRY │

произошло несоответствие атрибутов VALUE и REFERENCE.│

├─────────┼──────────────────────────────────────────────────────┤

│F4202

│ <subprogram>:formal

argument <name>:never used

│ Если

на

некоторый

формальный параметр

не происходит│

ссылок, то

компилятор должен допускать, что для дан-│

ного

параметра назначена переменная. В

модели

памяти│

│ средней емкости, если функция передается в формальный│

│ параметр, то может быть выделена некорректная обоасть│

│ │ памяти (т.е. не такой величины, которая требуется в│

│ действительности). Данное сообщение подавляется любым│

из предыдущих

сообщений об ошибках компиляции (вида│

F2xxx).

├─────────┼──────────────────────────────────────────────────────┤

│F4303

│ <name>:language attributes illegal on formal

│ arguments

В текущей процедуре для формального параметра был

специфицирован атрибут языка (Си или ПАСКАЛя).

├─────────┼──────────────────────────────────────────────────────┤

189

│F4313

│ <name>:not previonsly

declared

/4Yd (или

│ При использовании параметра компиляции

метакоманды

$DECLARE)

имя <name> не было

объявлено

в операторе

типа прежде, чем оно было использовано.

├─────────┼──────────────────────────────────────────────────────┤ │F4314 │ <instrinsic>:declared with wrong type │

│ Указанное имя было объявлено с некоторым типом в опе-│

раторе INTRINSIC. Некорректный

тип игнорируется и │

используется корректный тип.

├─────────┼──────────────────────────────────────────────────────┤

│F4315

│ <name>:<attribute> illegal

with attributes specified │

│ same list

 

Специфицированный атрибут противоречит атрибуту,

указанному в том же списке

атрибутов элемента.

├─────────┼──────────────────────────────────────────────────────┤

│F4316

│ <name>:<attribute>

illegal with attributes specified │

│ in earlier list

 

Специфицированный

атрибут противоречит атрибуту, │

ранее указанному в

списке атрибутов элемента.

├─────────┼──────────────────────────────────────────────────────┤ │F4317 │ <name>:<attribute>attribute repeated │

│ Специфицированный атрибут был уже однажды использован│

│ │ ранее в списке атрибутов элемента. │

├─────────┼──────────────────────────────────────────────────────┤

│F4318

│ <name>:<attribute>illegal

on COMMON statements

Специфицированный атрибут

является некорректным в

объявлениях "общих" блоков.

├─────────┼──────────────────────────────────────────────────────┤ │F4319 │ <name>:<attribute> illegal on formal arguments │

│ Специфицированный атрибут не может использоваться для│

│ │ формальных параметров. │

├─────────┼──────────────────────────────────────────────────────┤

│F4320

│ <name>:<attribute> illegal on ENTRY statements

Специфицированный

атрибут не может использоваться в

операторах ENTRY.

 

├─────────┼──────────────────────────────────────────────────────┤

│F4321

│ <name>:<attribute> illegal on subprogram statements

Специфицированный атрибут не может использоваться в

операторах SUBPROGRAM.

├─────────┼──────────────────────────────────────────────────────┤

│F4322

│ <name>:<attribute> illegal on variable declarations

Специфицированный атрибут не может использоваться в

объявлениях переменных.

├─────────┼──────────────────────────────────────────────────────┤

│F4323

│ <name>:<attribute> illegal on type

declarations

Специфицированный атрибут не может

использоваться в

объявлениях типов.

 

├─────────┼──────────────────────────────────────────────────────┤

│F4325

<name>:<attribute> illegal on NAMELIST declarations

Атрибуты в объявлении NAMELIST некорректны.

├─────────┼──────────────────────────────────────────────────────┤

│F4326

<name>:EQUIVALENCE:nonconstant upper substring

expression ignored

│ Выражение для вычисления "верхнего значения" подстро-│

│ ки в операторе EQUIVALENCE не являлось константой. │

│ │ Выражение игнорируется. │

├─────────┼──────────────────────────────────────────────────────┤

│F4327

<name>:INTERFACE: not formal argument

Была объявлена переменная, которая не была задана в │

│ списке формальных параметров подпрограммы, специфици-│

│ рованной в операторе INTERFACE.

190