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

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

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

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

│F2229

│ <subprogram>:formal argument

<name>:

previously passed with NEAR,

now with FAR or HUGE

Произошло несоответствие длин адресов. Эта ситуация

│ возникла потому, что не был задан оператор INTERFACE,│

│ специфицирующий атрибут FAR или HUGE для формального │

│ │ параметра. │

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

│F2230

<subprogram>:formal argument <name>:

previously passed with FAR or HUGE, now with NEAR

│ Не был задан оператор INTERFACE, специфицирующий для │

│ │ формального параметра атрибут NEAR. │

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

│F2231

<name>:PROGRAM:name redefined

Имя программы уже существует как глобальный объект.

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

│F2232

<subprogram>:formal

argument<name>:Hollerith

passed to CHARACTER

formal argument

│ Использование текстовых констант (констант Холлерита)│

разрешено только с константами типа INTEGER, REAL и

LOGICAL.

├─────────┼──────────────────────────────────────────────────────┤ │F2233 │ <name>:previously called near │

│ К функции, которая была объявлена ранее или обращение│

│ к

которой

осуществлялось

при

помощи

адресов│

типа

"near",

было

выполнено

обращение

при│

помощи адресов типа "far".

 

 

├─────────┼──────────────────────────────────────────────────────┤ │F2234 │ <name>:previously called far │

│ К функции, которая была объявлена ранее или обращение│

│ к

которой

осуществлялось

при

помощи

адресов│

типа

"far",

было выполнено

обращение при

помощи│

адресов типа "near".

 

 

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

│F2299

│ <name>:EQUIVALENCE:structure components

illegal

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

в операторе

EQUIVALENCE, но в отдельном поле структуры.

├─────────┼──────────────────────────────────────────────────────┤ │F2301 │ <name>:EQUIVALENCE(or COMMON):formal argument illegal│

│ Элемент, не являющийся локальной переменной или мас- │

│ сивом, либо

переменная

или массив в блоке общего

пользования,

указан в

операторах EQUIVALENCE или

COMMON.

 

 

├─────────┼──────────────────────────────────────────────────────┤ │F2302 │ <name>:EQUIVALENCE:not array │

│ В операторе EQUIVALENCE указан элемент, не являющийся│

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

│ │ фицирован список индексов. │

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

│F2303

│ <name>:EQUIVALENCE:array subscripts missing

│ Для объявления указанного массива была использована

конструкция типа x(). Если границы

массива

специфи-

цировать требуется, следует убрать

круглые

скобки.

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

│F2304

<name>:EQUIVALENCE:nonconstant offset illegal

Для

массива,

специфицированного в операторе

│ EQUIVALENCE, использовалось непостоянное смещение. │

├─────────┼──────────────────────────────────────────────────────┤ │F2305 │ <name>:nonconstant lower substring expression illegal│

│ В операторе EQUIVALENCE нижняя граница выражения типа│

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

161

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

│F2306

│ <name>:EQUIVALENCE enclosing class too big

│ При вычислении смещения в выражении

типа массива в

операторе

EQUIVALENCE произошло

арифметическое

переполнение.

 

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

│F2307

│ <name>:allocatable array illegal

Размещаемые массивы не могут указываться в списках

операторов COMMON или EQUIVALENCE.

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

│F2308

│ <name>:COMMON(or NAMELIST):length specification

│ illegal

 

│ Спецификация длины типа в операторе COMMON является

ошибочной операцией.

Для объявления длины следует

использовать отдельный

оператор типа.

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

│F2309

│<name>:COMMON(or NAMELIST):attributes on

items illegal│

│ Атрибут STRUCTURE может

указываться

так же как и

атрибут COMMON.

 

 

Поля в структуре STRUCTURE

могут не иметь атрибутов. │

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

│F2310

│ <name>:COMMON (or EQUIVALENCE):SUBROUTINE

│ (or FUNCTION) name illegal

│ Имя функции или процедуры было включено в оператор

│ COMMON или

EQUIVALENCE.

│ Правильным

является лишь использование локальных

│ переменных

и массивов.

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

│F2311

<name>:COMMON (or

EQUIVALENCE or STRUCTURE):

preinitialization

illegal

│ Элементы в операторах COMMON или EQUIVALENCE не могут│

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

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

Для оператора DATA следует использовать стандартную

нотацию.

├─────────┼──────────────────────────────────────────────────────┤ │F2312 │ <name>:COMMON(or EQUIVALENCE):formal argument illegal│

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

│ │ в операторе COMMON или EQUIVALENCE. │

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

│F2313

│ <name>:COMMON(or EQUIVALENCE or

NAMELIST):not an

│ array or

variable

EQUIVALENCE был использован

В операторе

COMMON или

элемент,

не

являющийся

массивом

или переменной.

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

│F2314

│ <array>:COMMON:too big

блока общего пользования

При вычислении размера

произошло арифметическое переполнение.

├─────────┼──────────────────────────────────────────────────────┤ │F2315 │ <array>:COMMON:array size nonconstant or zero │

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

│ │ зовано значение 0 или не значение константы. │

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

│F2316

│ <name1>,<name2>:EQUIVALENCE:both in blank common

block

элемента,

специфицированных

в

 

Два

операторе │

│ EQUIVALENCE с различными смещениями, оба оказались в │

│ пустом блоке

общего

пользования.

В

операторе

EQUIVALENCE

 

эти элементы были специфицированы

как

размещенные

в одной и

той же области

памяти.

 

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

162

│F2317

│ <name1>,<name2>:EQUIVALENCE:both in common

block

<commonblock>

специфицированные в

 

Два

элемента,

операторе │

│ EQUIVALENCE с различными смещениями, оба оказались в │

│ одном поименованном блоке. Эти элементы специфициро- │

ваны в операторе EQUIVALENCE как имеющие одну и ту │

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

├─────────┼──────────────────────────────────────────────────────┤ │F2318 │ <name1>,<name2>:EQUIVALENCE:in different common block│

│ Два элемента, находящиеся в различных "общих" блоках,│

│ были специфицированы в одном операторе EQUIVALENCE. │

├─────────┼──────────────────────────────────────────────────────┤ │F2319 │ <name>:EQUIVALENCE:extends blank common block forward│

│ │ В оераторе EQUIVALENCE: является неправильным уве-│

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

│ ния элементов памяти в начало "общего" блока, объяв- │

│ │ ленного в операторе COMMON. │

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

│F2320

│ <name>:EQUIVALENCE:extends common

block

<commonblock>│

│ forward

неправильным уве-

В операторе EQUIVALENCE, является

личивать размер поименованного "общего"

блока путем

│ добавления элементов памяти в начало "общего" блока, │

│ │ объявленного в операторе COMMON. │

├─────────┼──────────────────────────────────────────────────────┤ │F2321 │ <name1>,<name2>:EQUIVALENCE:conflicting offsets │

│ При обработке оператора EQUIVALENCE были выявлены два│

│ элемента, которые должны иметь, но не имеют, одинако-│

│ вое смещение. Такую ошибку может породить несогласо- │

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

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

│F2322

│ <name>:EQUIVALENCE:two different common blocks

Оператор EQUIVALENCE "помещает" один элемент в два

различных "общих" блока.

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

│F2323

<commonblock>:COMMON:size

changed

Размер специфицированного

"общего" блока отличается

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

│ │ подпрограмме. │

├─────────┼──────────────────────────────────────────────────────┤ │F2324 │ <commonblock>:COMMON:too big to be NEAR │

│ Специфицированный "общий" блок, объявленный с атрибу-│

│ │ том NEAR, имеет размер больший, чем сегмент. │

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

│F2325

│ <name>:COMMON:function or subroutine

name

Указанное имя было

использовано

и как имя блока

общего пользования и

как имя функции

или процедуры.

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

│F2326

│ <name>:already in COMMON

в

операторе COMMON где-ни-

Указанное имя

появлялось

будь в другом

месте данной

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

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

│F2327

<name>:EQUIVALENCE:needs at least two items

Оператор EQUIVALENCE имеет менее 2-х элементов.

├─────────┼──────────────────────────────────────────────────────┤ │F2328 │ <name>:already typed │

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

│ │ же подпрограмме. │

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

│F2329

blank common cannot be HUGE

В модели памяти средней емкости размер "общих" пустых│

163

│ элементов должны быть меньше, чем размер сегмента. │

Поименованные "общие"

элементы этому ограничению│

не подчиняются.

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

│F2330

│ <name>:already dimensioned

│ Границы

массива указывались для заданного элемента

ранее в

соответствующем операторе описания в той

же самой подпрограмме.

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

│F2331

│ <name>:types

illegal

on BLOCK

│ DATA/COMMON/PROGRAM/SUBROUTINE

Указанный элемент не

является элементом одного из

классов, для

которых

может быть указан тип.

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

│F2332

│ <name>:cannot initialize

in type statemens

│ Была предпринята попытка

инициализировать указанный

│ элемент в операторе типа, тогда как был использован

параметр компиляции /4Ys (или была действительна

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

 

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

│F2333

│ <name>:DIMENSION:not array

│ Указанный в операторе DIMENSION элемент (например

элемент, уже объявленный в операторе EXTERNAL или

PARAMETER) не является массивом.

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

│F2334

<name>:ALLOCATABLE:bounds must be omitted

Индексами в объявлении размещаемого массива должны

│ быть двоеточия; параметры верхних и нижних границ не │

│ │ задаются. │

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

│F2336

│ <array>:array bounds missing

│ Оба выражения для

определения границ массива были │

│ потеряны при объявлении

указанного массива.

Необходимо указание

по

крайней мере верхней границы │

массива.

 

 

├─────────┼──────────────────────────────────────────────────────┤ │F2337 │ <array>:*:not last array bound │

│ Массив "предполагаемого размера" был объявлен с сим- │

│ волом звездочки (*), которой не оказалось в специфи- │

│ │ кации значения последней границы массива. │

├─────────┼──────────────────────────────────────────────────────┤ │F2338 │ <array>:bound size too small │

│ Размер границы указанного массива не был положитель- │

│ ным целым числом. Границы массива "настраиваемого │

│ размера" могут быть проверены на этапе исполнения. │

│ Данная ошибка этапа компиляции может возникнуть толь-│

│ ко в том случае, когда верхняя и (возможно указанная │

│ явно) нижняя границы массива "создают" отрицательный │

│ или нулевой счетчик элементов для границ массива. │

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

│F2339

│ <array>:adjustible-size array not in subprogram

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

лен

в программе, объявленной

с оператором PROGRAM

или

BLOCK DATA. Массив данного

типа действителен в

│ подпрограмме только в операторах ENTRY, FUNCTION или │

│ │ SUBROUTINE. │

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

│F2340

│ IMPLICIT already seen

был просмотрен, так что

Оператор

IMPLICIT

уже

оператор

IMPLICIT

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

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

164

│F2341

│ <letters>:IMPLICIT:only single letter allowed

В операторе IMPLICIT верхнее или нижнее значение

диапазона не является единственным символом.

├─────────┼──────────────────────────────────────────────────────┤ │F2342 │ INPLICIT NONE already seen │

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

│ │ IMPLICIT NONE. │

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

│F2343

│ <letter1>,<letter2>:IMPLICIT:lower limit exceeds

│ upper limit

Значение

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

IMPLICIT

меньше значения нижнего предела.

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

│F2344

│ <letter>:already

IMPLICIT

Указанный

символ

уже

был

специфицирован ранее в

операторе

IMPLICIT в

той

же подпрограмме.

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

│F2345

│ <name>:illegal use of

SAVE (or EXTERNAL, INTRINSIC,

│ PARAMETER, AUTOMATIC)

<name> было ранее указано в

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

операторе типа.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2346 │ <name>:INTRINSIC:unknown name │

│ Указанное имя <name> не является именем поддерживае- │

│ │ мой встроенной функции. │

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

│F2348

<name>:already declared SAVE (or EXTERNAL, INTRINSIC,│

PARAMETER, AUTOMATIC)

│ Специфицированное имя <name> было объявлено в одном и│

│ │ том же операторе типа несколько раз. │

├─────────┼──────────────────────────────────────────────────────┤ │F2349 │ <name>:PARAMETER:nonconstant expression │

│ Указанный элемент был объявлен в операторе PARAMETER │

│ │ со значением, не являющимся константой. │

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

│F2350

RECORD:structure type illegal in IMPLICIT

statement

Структурные переменные не могут вводиться

неявно.

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

│F2351

│ <name>:repeated in formal-argument list

Указанный элемент был повторен в списке формальных

параметров операторной функции.

├─────────┼──────────────────────────────────────────────────────┤ │F2352 │ <name>:formal argument not local variable │

│ В качестве формальных параметров операторных функций │

│ могут использоваться только локальные переменные. │

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

│F2354

│ <name>:statement function already

declared

Указанная операторная

функция уже

была объявлена в

текущей подпрограмме.

 

 

├─────────┼──────────────────────────────────────────────────────┤ │F2355 │ <name>:formal argument not a variable │

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

│ ного элемента присутствуют в списке формальных пара- │

│ │ метров операторной функции. │

├─────────┼──────────────────────────────────────────────────────┤ │F2356 │ <name>:statement function:too few actual arguments │

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

│ │ больше, чем имеется фактических параметров. │

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

│F2357

<name>:statement function:too many actual arguments │

Для операторной функции фактических параметров задано│

165

│ │ больше, чем объявлено формальных параметров. │

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

│F2359

│ <type>:illegal length

типа был использован

│ В объявлении

для заданного

некорректный

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

длины. Например, такую

ошибку может

вызвать выражение REAL*13.

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

│F2360

│ END STRUCTURE: no matching STRUCTURE statement

Оператор END STRUCTURE задан без предшествующего

оператора STRUCTURE.

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

│F2361

│ <stmt>:not a name

Параметр

оператора STRUCTURE или END STRUCTURE не

является

символическим именем.

├─────────┼──────────────────────────────────────────────────────┤ │F2362 │ integer constant expression expected │

│ Для необязательной спецификации длины/типа предпола- │

галось целочисленное значение или целочисленное вы-

ражение.

├─────────┼──────────────────────────────────────────────────────┤ │F2363 │ length <value>:illegal type length │

│ В операторе типа был использован нулевой или отрица- │

тельный спецификатор длины, либо

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

ны был больше наибольшего для всех

допустимых типов.

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

│F2364

│ only C attribute

legal on INTEGER type

В операторе

типа

INTEGER присутствует атрибут,

отличный от

атрибута C.

├─────────┼──────────────────────────────────────────────────────┤ │F2365 │ attributes illegal on non-INTEGER types │

│ Атрибуты в операторах типа являются некорректными. │

│ Атрибуты не могут употребляться как переменные. │

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

│F2366

DOUBLE

PRECISION:lenght specifith illegal

DOUBLE

COMPLEX:lenght specifith illegal

│ Оператор DOUBLE PRECISION или DOUBLE COMPLEX содержал│

│ спецификатор длины.

│ DOUBLE PRECISION соответствует REAL*8; DOUBLE COMPLEX│

│ │ соответствует COMPLEX*8. │

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

│F2367

value <value>:INTEGER:range error

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

выпол-│

│ нена операция преобразования типов, либо тип целочис-│

│ ленного элемента "конфликтует" с размером целого чис-│

│ ла, указанного в параметре компиляции /4I (или

мета-│

│ команде $STORAGE).

Такая ошибка может произойти,│

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

$STORAGE:2

 

INTEGER*4 i

i=300000*30000

i=

10* 4000

i=-30000-30000

END

 

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

│соответствующую встроенную функцию INT2 или INT4.

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

│F2368

│ <name>:truncated to

6 characters

 

│ При использовании

параметра компиляции /4Ys (или

метакоманды $STRICT) длина имени

не может превышать

6 символов.

 

 

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

166

│F2369

│ <name>:$ illegal in C name

 

│ Использование символ доллара в специфицированном

│ имени является ошибкой для Си-переменной.

│ В

именах

Си-переменных

допустимо

│ использовать только символы подчеркивания (_) и

│ буквенно-цифровые символы.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2370 │ length specification illegal │

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

│ такоманда $STRICT), тогда спецификации длины возмож- │

│ но использовать только с операторами типа CHARACTER. │

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

│F2371

│ <name1>,<name2>:EQUIVALENCE:character and

│ noncharacter items mixed

В операторе EQUIVALENCE "перемешаны" символьные и

несимвольные элементы.

├─────────┼──────────────────────────────────────────────────────┤ │F2372 │ <name>:more than 7 array bounds │

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

такоманды $STRICT) массив может быть

не более, чем │

7-ми мерным.

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

│F2373

<name>:REFERENCE or VALUE only legal on formal

arguments

│ Атрибуты REFERENCE или VALUE были использованы с эле-│

│ ментом,

который

не был объявлен в списке

формальных│

│ параметров

процедуры.

 

 

│ Если элемент используется

в операторе типа, тогда│

элемент

с

атрибутом

должен

также быть

указан и в│

списке формальных

параметров

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

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

│F2374

│ <name>:attributes illegal on array bounds

Для элементов, используемых для задания размерности

массива, применение атрибутов недопустимо.

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

│F2375

<name>:assumed-size array: cannot

pass

by value

Массив "предполагаемого размера"

был

передан

как │

│ фактический параметр в процедуру, которая имеет соб- │

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

│ │ VALUE. │

├─────────┼──────────────────────────────────────────────────────┤ │F2376 │ <name>:adjustable-size array:cannot pass by value │

│ Массив "настраиваемого размера" был передан как фак- │

│ тический параметр в подпрограмму, которая имеет свой │

│ собственный формальный параметр, объявленный с атри- │

│ │ бутом VALUE. │

├─────────┼──────────────────────────────────────────────────────┤ │F2377 │ <name>:NEAR common block has HUGE item │

│ "Общий" блок, объявленный с атрибутом NEAR, включает │

элемент (элементы), который требует

"общий" блок │

"очень большого" размера.

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

│F2378

│ <name>:NEAR array bigger than segment

Размер массива,

объявленного с атрибутом NEAR,

превышал размер

сегмента.

├─────────┼──────────────────────────────────────────────────────┤ │F2379 │ <name>:item in common block crosses segment │

│ Элемент или компонента (элемент) массива в "общем" │

│ блоке выходит за

границы сегмента.

Элементы

или

массивы

должны быть выровнены

по границам сегмента.

 

167

├─────────┼──────────────────────────────────────────────────────┤ │F2380 │ <name>:VARYING illegal on symbol class │

│ Атрибут VARYING был применен к "какому-то элементу", │

│ │ не являющемуся функцией или процедурой. │

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

│F2381

│ <commonblock>:NEAR/FAR/HUGE attribute

mismatches default

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

│ отличается от атрибута, неявно примененного к "обще- │

му" блоку в предыдущей подпрограмме.

В программах модели памяти средней

емкости атрибут │

│ NEAR используется неявно, если размер "общего" блока │

│ не требует, чтобы "общий" блок был определен с атри- │

│ бутом

HUGE.

В

программах

модели

или

памяти

большой

емкости

 

атрибуты

FAR

HUGE

используются неявно.

 

 

 

 

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

│F2382

│ <commonblock>:<attribute>

attribute mismatch with

earlier NEAR/FAR/HUGE

объявлении "общего" блока

Атрибут, заданный ранее в

│ (возможно даже в другой подпрограмме), отличается от │

│ │ текущего атрибута. │

├─────────┼──────────────────────────────────────────────────────┤ │F2383 │ <name>:COMMON:character and noncharacter items mixed │

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

│ такоманды $STRICT) в "общем" блоке не могут одновре- │

менно использоваться символьные и несимвольные

эле- │

менты.

├─────────┼──────────────────────────────────────────────────────┤ │F2384 │ <name>:<attribute> variable cannot be AUTOMATIC │

│ Атрибут должен быть одном из следующих: HUGE, EXTERN,│

│ │ FAR, ALLOCATABLE. │

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

│F2385

<name>:STRUCT has no elements

Структура STRUCT была объявлена без полей компонент. │

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

│F2386

NAMELIST:group name required

Имя должно задаваться в слэшах.

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

│F2387

│ <name>:STRUCTURE:intrinsic type name

Получаемые имена

типов могут не быть такими же, как

имена встроенных

типов.

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

│F2388

│ <name>:NAMELIST:array bounds

illegal

В операторе NAMELIST допустимо использовать только

имена переменных и массивов.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2389 │ <name>:not a STRUCTURE name │

│ Параметр в операторе STRUCTURE() ранее не был указан │

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

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

│F2390

<name>:ALLOCATABLE:common block variable illegal

Переменные общего блока могут не быть размещаемыми.

├─────────┼──────────────────────────────────────────────────────┤ │F2391 │ <name>:ALLOCATABLE:equivalenced variable illegal │

│ Эквивалентным переменным может быть не задан атрибут │

│ │ размещения. │

├─────────┼──────────────────────────────────────────────────────┤ │F2392 │ MAP:no enclosing UNION statement │

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

│ UNION.

168

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

│F2393

<name>:element name conflicts with operator

│F2394

<name>:NAMELIST:structure illegal

│ Структурные переменные не могут указываться в группе │

│ │ NAMELIST. │

├─────────┼──────────────────────────────────────────────────────┤ │F2395 │ UNION:not in STRUCTURE │

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

│ │ STRUCTURE. │

├─────────┼──────────────────────────────────────────────────────┤ │F2396 │ <name>:ALLOCATABLE:must be in array │

│ Переменная была задана с атрибутом размещения, но не │

│ │ размерности. │

├─────────┼──────────────────────────────────────────────────────┤ │F2401 │ <name>:DATA:illegal address expression │

│ В операторе DATA для указания смещения использовалось│

некорректное выражение.

Для элементов в операторе│

DATA действительны только

постоянные смещения.

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

│F2402

│ <name>:cannot initialize

format argument

Инициализируемый элемент

является формальным

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

 

├─────────┼──────────────────────────────────────────────────────┤ │F2403 │ <name>:cannot initialize item in blank common block │

│ Для инициализации в пустом "общем" блоке специфици-│

│ рованного элемента была предпринята попытка использо-│

│ │ вать оператор DATA. │

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

│F2404

<name>:can

only initialize common block in BLOCK DATA│

subprogram

│ Была предпринята попытка инициализировать специфици- │

рованный элемент, поименованный

в "общем" блоке, в │

операторе DATA.

├─────────┼──────────────────────────────────────────────────────┤ │F2405 │ <name>:DATA:not an array or variable │

│ В операторах DATA могут быть инициализированы только │

│ │ массивы и переменные. │

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

│F2406

<name>:repeat count not positive

integer

Повторный счет для инициализации

специфицированного

│ элемента не был положительным целочисленным значени- │

│ │ ем. │ ├─────────┼──────────────────────────────────────────────────────┤

│F2407

<name>:DATA nonconstant item in initializer list

Для инициализации специфицированного элемента в

опе-│

│ раторе DATA было использовано значение, не являющееся│

│ │ константой. │

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

│F2408

<name>:DATA:too

few

constants

to initialize item

Оператор DATA

не

содержит

достаточного количества│

│ констант для инициализации специфицированного элемен-│

│ │ та. │ ├─────────┼──────────────────────────────────────────────────────┤ │F2409 │ <name>:nonstatic address illegal in initialization │

│ При обработке списка встроенных DO-циклов операторов │

│ в операторе DATA

специфицированный элемент не имеет │

│ статического адреса. Следует убедиться, что элемент

имеет в качестве

спецификаторов индексов постоянные

величины.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2410 │ <name>:bound or increment not constant │

169

Значения границы элемента, специфицированного в

операторе DATA, не являлись константами.

├─────────┼──────────────────────────────────────────────────────┤ │F2411 │ <name>:DATA:zero increment │

│ В операторе DATA значение приращения для специфициро-│

│ │ ванного элемента равно нулю. │

├─────────┼──────────────────────────────────────────────────────┤ │F2412 │ <name>:DATA:active implied-DO variable │

│ Специфицированная переменная вложенности DO-операто- │

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

│ │ ции вложенных DO-операторов оператора DATA. │

├─────────┼──────────────────────────────────────────────────────┤ │F2413 │ <name>:DATA:implied-DO variable not INTEGER │

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

│ │ ные DO-циклы, типов INTEGER и INTEGER*n. │

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

│F2414

│ <name>:DATA:not array-element name

│ В операторах

DATA

в инициализируемых вложенных

DO-операторах

могут

быть инициализированы только

элементы массива.

 

├─────────┼──────────────────────────────────────────────────────┤ │F2415 │ DATA:too few constants to initialize names │

│ Список констант был исчерпан прежде, чем была завер- │

│ │ шена инициализация списка имен. │

├─────────┼──────────────────────────────────────────────────────┤ │F2416 │ <name>:bound or increment not INTEGER │

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

│ такоманды $STRICT) для приращений и границ вложенных │

DO-циклов в операторе DATA применимы только элементы │

│ типа INTEGER. В противном случае, применим любой │

│ арифметический тип; он "округляется" до типа INTEGER │

│ путем неявного использования встроенной функции INT. │

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

│F2417

│ DATA:iteration count not positive

В списке вложенных DO-циклов (...,dovar=start,stop,

inc): если приращение <inc> является положительным,

│ тогда <start> должно быть больше <stop>; если прира- │

│ щение <inc> отрицательное, тогда

<stop> должно быть

больше <start>. Если это условие

не выполняется, то

цикл будет выполняться ноль раз,

что недопустимо.

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

│F2418

│ <name>:variable was declared automatic

Переменная,

помещаемая в стэк (объявленная с типом

AUTOMATIC),

не может быть задана с атрибутом HUGE.

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

│F2419

<name>:cannot initialize allocatable array

Размещаемый массив не указывается в операторе DATA.

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

│F2490

│ <name>:STAT= must be last parameter

Параметр STAT= должен быть последним в операторе

ALLOCATE.

├─────────┼──────────────────────────────────────────────────────┤ │F2491 │ <name>:<stmt>:not allocatable array │

│ Имя в операторе размещения не является именем разме- │

щаемого массива. (Второй параметр есть ALLOCATE или

DEALLOCATE).

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

│F2492

<stmt>:STAT= variable must be

scalar

Первый параметр есть ALLOCATE

или DEALLOCATE.

├─────────┼──────────────────────────────────────────────────────┤ │F2493 │ <name>:*: illegal bound │

170