1 Out of memory(Выход за пределы памяти). — Данная ошибка появлятся, если компилятор израсходовал всю доступную ему память. Для решения этой проблемы измените значение области Destination с Memory на Disk. Разместите в начале программы директиву {$L-}, удалите из памяти резидентные программы, в использовании которых нет крайней необходимости. Если ни одна из рекомендаций не помогает, то, возможно, программа или программный модуль слишком велики, чтобы компилировать их в таком объеме памяти. В этом случае программу или программный модуль необходимо разбить на два или более программных модуля.
2 Identifier expected(Ожидается идентификатор). — В этом месте должен находиться идентификатор.
3 Unknown identifier(Неизвестный идентификатор). — Этот идентификатор не был описан.
5Syntax error (Синтаксическая ошибка). — В исходном тексте найден недопустимый символ. Возможно, не заключена в кавычки строко вая константа.
6 Error in real constant(Ошибка в константе вещественного типа). — Ошибка в синтаксисе константы вещественного типа.
7 Error in integer constant(Ошибка в константе целого типа). — Ошибка в синтаксисе константы целого типа (учтите, что после чисел, превышающих диапазон представления целых чисел, должны ставиться точка и нуль, например: 12345678912.0).
8 String constant exceeds line(Строковая константа превышает размеры строки). — Вероятно, после строковой константы отсутствует символ кавычка.
9 Too many nested files(Слишком много вложенных файлов). — Компилятор допускает не более 15 вложенных исходных файлов и не более 4 включаемых файлов.
10 Unexpected end of file(Неожиданный конец файла). — Данное сообщение может появиться по одной из следующих причин:
> в программе, вероятнее всего, неодинаковое количество операторов BEGIN и END;
> включаемый файл заканчивается в середине раздела операторов (каждый раздел операторов должен целиком помещаться в одном файле);
> в файле не закрыты скобки комментария.
11Line too long(Строка слишком длинная). — Максимальная длина строки не может превышать 127 символов.
12 Type identifier expected(Ожидается идентификатор типа). — В определенном месте не указан тип идентификатора.
13 Too many open files(Слишком много открытых файлов). — В файле CONFIG.SYS не установлен параметр FILES=N, где N представляет собой целое число без знака. Установите в файле CONFIG.SYS значение параметра FILES=N>= 30.
14 Invalid file name(Недопустимое имя файла). — Имя файла неверно или указан несуществующий путь.
15 File not found(Файл не найден). — Файл не найден ни в одном из каталогов, предназначенных для хранения файлов данного типа.
16 Disk full(Диск заполнен). — Удалите с диска ненужные файлы (например, файлы с расширением .ВАК или .ТМР) или попробуйте сохранить текст программы на другом диске, который имеет достаточ ный объем свободной памяти.
17 Invalid compiler directive(Недопустимая директива компилятора). — Неверная буква в директиве компилятора, один из параметров директивы компилятора неверный или вы пользуетесь глобальной директивой компилятора, когда компиляция тела программы уже началась.
18 Too many files(Слишком много файлов). — В компиляции программы или программного модуля участвует слишком много файлов. Попытайтесь не использовать так много файлов, например, объеди няя включаемые файлы.
19 Undefined type in pointer definition(Неопределенный тип в описании указателя). — Вы пытаетесь объявить типизированный указатель, связанный с ранее необъявленным типом данных.
20 Variable identifier expected(Ожидается идентификатор переменной). — В указанном курсором месте ожидается идентификатор переменной.
21 Error in type(Ошибка в определении типа). — Определение типа не может начинаться с этого символа.
22 Structure too large(Слишком длинная структура). — Максимально допустимый размер любого структурированного типа 65520 байт.
23 Set base type of range(Количество элементов в множестве превышает допустимое значение). — Базовый тип множества должен представлять собой перечисляемый тип данных не более чем с 256 значениями.
24 File components may not be files or objects(Компоненты файла не могут быть файлами или объектами). — Тип компонентов файла не может быть объектным типом, файловым типом или любым другим структурированным типом, содержащим компоненты типа файла или объекта.
25 Invalid string length(Неверная длина строки). — Длина описываемой строки должна находиться в пределах от 1 до 255.
26 Type mismatch(Несоответствие типов). — Причины, вызвавшие появление данного сообщения, могут быть следующими:
> несовместимы типы переменной и выражения в операторе присваивания;
> несовместимы типы фактического и формального параметров в обращении к процедуре или функции;
> тип выражения несовместим с типом индекса при индексировании массива;
> несовместимы типы операндов в выражении.
27 Invalid subrange base type(Неправильный базовый тип для интервала).
28 Lower bound greater than upper bound(Нижняя граница превышает верхнюю). — При описании интервального типа данных вы объявили нижнюю границу диапазона больше верхней.
29 Ordinal type expected(Ожидается перечисляемый тип). — Вещественные, строковые, структурные и ссылочные типы в данном случае не допускаются.
32 Integer or real constant expected(Ожидается константа целого или вещественного типа).
33 Pointer type identifier expected(Ожидается идентификатор типа указатель). —Указанный курсором идентификатор не является указателем.
34 Invalid function result type(Недопустимый тип результата функции). — Правильными типами результата функции являются все простые, строковые и ссылочные типы.
35 Label identifier expected(Ожидается идентификатор метки). — Обнаружена ссылка на метку, не описанную в разделе LABEL.
36 BEGIN expected(Ожидается оператор BEGIN).
37 END expected(Ожидается оператор END).
38 Integer expression expected(Ожидается выражение целого типа).
39 Ordinal expression expected(Ожидается выражение перечисляемого типа).
40 Boolean expression expected(Ожидается выражение логического типа).
41 Operand types do not match operator(Несоответствие типов операнду). — Данная операция не может применяться к операндам этого типа. Такое сообщение будет вызвано, например, при попытке выполнить cледующую операцию: '9' DIV 'G'.
42 Error in expression(Ошибка в выражении). — Данный идентифика тор не может участвовать в выражении указанным образом. Возможно, вы забыли указать операцию между двумя операндами.
43 Illegal assignment(Запрещенное присваивание). — Это сообщение может появиться по следующим причинам:
> файлам и нетипизированным переменным нельзя присваивать значения;
> идентификатору функции можно присваивать значения только внутри раздела операторов данной функции.
44 Field identifier expected(Ожидается идентификатор поля). — Данный идентификатор не соответствует полю предшествующей переменной типа RECORD или OBJECT.
45 Object file too large(Объектный файл слишком большой). — Турбо Паскаль не может компоновать OBJ-файлы размером более чем 64 Кбайта.
46 Undefined external(He определена внешняя процедура). — Внешняя процедура или функция не имеет соответствующего определения PUBLIC в объектном файле. Убедитесь, что вы указали все объектные файлы в директивах {$L <имя ОВ1-файла>}, и проверьте написание идентификаторов процедуры или функции в файле .ASM.
47 Invalid object file record(Недопустимая запись объектного файла). — Файл .OBJ содержит неверную объектную запись. Убедитесь в том, что данный файл является действительно OBJ-файлом.
48 Code segment too large(Сегмент кода слишком большой). — Максимально допустимый размер кода программы или программного модуля равен 65520 байтам. Разбейте программу или программный модуль на несколько частей.
49 Data segment too large(Сегмент данных слишком большой). — Максимальный размер сегмента данных программы равен 65520 байтам, включая данные, описываемые используемыми программными модулями. Если нужно большее количество глобальных данных, опишите большие структуры с помощью указателей и выделяйте для них память динамически с помощью процедуры New.
50 DO expected(Ожидается оператор DO).
51 Invalid PUBLIC definition(Недопустимое определение PUBLIC). — Появление этого сообщения возможно по следующим причинам:
> данный идентификатор получил тип PUBLIC с помощью соответствующей директивы языка Ассемблер, но не соответствует описанию EXTERNAL в программе или программном модуле;
> две или более директивы PUBLIC на языке Ассемблер определяют один и тот же идентификатор;
> OBJ-файл определяет идентификатор PUBLIC вне сегмента CODE.
52 Invalid EXTRN definition(Неправильное определение EXTRN). — Появление этого сообщения возможно по следующим причинам:
> из Ассемблера была осуществлена ссылка с помощью директивы EXTRN на идентификатор, который не был описан в тексте програм мы на Паскале;
> идентификатор обозначает абсолютную переменную;
> идентификатор обозначает процедуру или функцию типа INLINE.
53 Too many EXTRN definition(Слишком много определений типа EXTRN). — Турбо Паскаль не может обрабатывать файлы .OBJ при более чем 256 определениях EXTRN.
56Invalid relocatable reference(Недопустимая перемещаемая ссылка). — Появление этого сообщения возможно по следующим причинам:
> OBJ-файл содержит данные и перемещаемые ссылки в сегментах, отличных от CODE, например, при попытке описать инициализиро ванные переменные в сегменте DATA;
> OBJ-файл содержит ссылки с размерами в байтах на перемещае мые символы. Такая ошибка происходит в случае использования опе раторов HIGH и DOWN с перемещаемыми символами или тогда, когда вы ссылаетесь в директивах DB на перемещаемые символы;
> операнд ссылается на перемещаемый символ, который не был оп ределен в сегментах CODE или DATA;
> операнд ссылается на процедуру EXTRN или функцию EXTRN со смещением, например CALL SortProc+8.
57THEN expected(Ожидается оператор THEN).
58 ТО or DOWNTO expected(Ожидается зарезервированное слово ТО или DOWNTO).
59 Undefined forward(Неопределенное опережающее описание). — Появление этого сообщения возможно по следующим причинам:
> была описана процедура или функция в интерфейсной секции про граммного модуля, но их определение отсутствует в секции реализации;
> процедуры или функции были описаны с помощью опережаю щего описания, но их определение не найдено.
61 Invalid typecast(Недопустимое преобразование типов). — Появление этого сообщения возможно по следующим причинам:
> размер переменной и тип результата отличаются друг от друга;
> вы пытаетесь осуществить приведение типа выражения, когда раз решается только ссылка на переменную, процедуру или функцию.
62 Division by zero(Деление на нуль). — Предшествующая операция пытается выполнить деление на нуль.
63 nvalid file type(Недопустимый тип файлов). — Данный файловый тип не обслуживается процедурой обработки файлов. Например, про цедура ReadLn используется для типизированного файла или проце дура Seek — для текстового файла.
64 Cannot Read or Write variables of this type(Нет возможности считать или записать переменные данного типа). — Эта ошибка может по явиться из-за попытки ввести или вывести переменную несоответству ющего типа:
> процедуры Read и ReadLn могут считывать переменные символь ного, целого, вещественного и строкового типов;
> процедуры Write и WriteLn могут выводить переменные символь ного, целого, действительного, булевого и строкового типов.
65 ointer variable expected(Ожидается переменная типа указатель). — Предыдущая переменная должна иметь тип указатель.
66 String variable expected(Ожидается строковая переменная). — Пред шествующая переменная должна иметь строковый тип.
67 String expression expected(Ожидается выражение типа строка). — Предшествующее выражение должно иметь строковый тип.
68 Circular unit reference(Циклическая зависимость модулей).
69 Unit name mismatch(Несоответствие имен программных модулей). Имя программного модуля, найденное в файле .TPU, не соответствует имени, указанному в операторе USES.
70 Unit version mismatch(Несоответствие версий программных модулей). — Один или несколько программных модулей, используемых данной программой, были изменены после их компиляции. Воспользуйтесь командой Compile/Make (Компиляция/Формирование)или Compile/Build (Компиляция/Построение)в интегрированной интерактивной среде программирования и параметрами /М или /В в компиляторе ТРС, что позволит автоматически скомпилиро вать программные модули, нуждающиеся в перекомпиляции.
71 uplicate unit name(Повторное имя программного модуля). — Имя этого программного модуля уже указано в операторе USES.
72Unit file format error(Ошибка формата файла программного модуля). —TPU-файл является недействительным. Убедитесь, что это действительно TPU-файл соответствующей версии языка.
73Implementation expected(Ожидается оператор IMPLEMENTA TION). — В модуле отсутствует раздел реализации.
74Constant and case types do not match(Несовпадение типов константы и оператора CASE). — Тип константы оператора CASE несовместим с выражением в операторе варианта.
75Record variable expected(Нужна переменная типа запись). — Предшествующая переменная должна иметь тип запись.
76 Constant out of range(Константа вне диапазона). — Эта ошибка может появиться по следующим причинам:
> при попытке указать массив с константами, нарушающими границы;
> при попытке присвоить переменной значение константы, выходя щее за диапазон переменной;
> при попытке передать константу вне диапазона в качестве пара метра процедуре или функции.
77File variable expected(Ожидается файловая переменная). — Предшествующая переменная должна иметь файловый тип.
78 Pointer expression expected(Ожидается выражение типа указатель). — Предшествующее выражение должно иметь тип указатель.
79 Integer or real expression expected(Ожидается выражение целого или вещественного типа). — Предшествующее выражение должно иметь тип INTEGER иди REAL.
80 Label not within current block(Метка вне пределов текущего блока). — Оператор GOTO не может осуществить переход на метку, находящуюся вне текущего блока.
81 Label already defined (Метка уже определена). —Данная метка уже помечает точку перехода.
82 Undefined label in processing statement part(Неопределенная метка в предыдущей части оператора).
83 Invalid @ argument(Недействительный аргумент оператора @. — Правильными аргументами являются имена переменных, процедур или функций.
84 Unit expected(Ожидается оператор UNIT).
85 ";" expected(Ожидается символ ";").
86 ":" expected(Ожидается символ ":").
87 "," expected(Ожидается символ ","). 88"(" expected(Ожидается символ "("). 89")" expected(Ожидается символ ")").
90 "=" expected(Ожидается символ "=").
91 ":=" expected(Ожидается символ ":=").
92 "[" or "(" expected(Ожидается символ "[" или "(")•
93 "]" ог ")" expected(Ожидается символ "]" или ")"). 94"." expected(Ожидается символ ".").
95".." expected(Ожидается символ "..").
96Too many variables(Слишком много переменных). — Эта ошибка может появиться по следующим причинам:
> объем памяти, занимаемый всеми описанными в программе или программном модуле глобальными переменными, не может превы шать 64 Кбайт;
> объем памяти, занимаемый описанными в программе или функции локальными переменными, не может превышать 64 Кбайт.
97 Invalid FOR control variable(Недопустимая переменная управления циклом FOR). — Параметр цикла оператора FOR должен быть переменной перечисляемого типа.
98 Integer variable expected(Ожидается переменная целого типа). — Предшествующая переменная должна иметь целый тип.
100 String length mismatch(Несовпадение длины строки). — Длина строковой константы не соответствует количеству элементов символьного массива.
101 Invalid ordering of fields(Недопустимый порядок полей). — Поля в константе типа RECORD должны записываться в порядке их описания.
103 Integer or real variable expected(Ожидается переменная целого или вещественного типа). — Предшествующая переменная должна иметь целый или вещественный тип.
104 Ordinal variable expected(Ожидается переменная перечисляемого типа). — Предшествующая переменная должна иметь перечисляе мый тип.
105 INLINE error(Ошибка в операторе INLINE). — Оператор < не допускается в сочетании с перемещаемыми ссылками на переменные. Такие ссылки всегда имеют размер в слово.
106 Character expression expected(Ожидается выражение символьного типа).
108 Overflow in arithmetic operation(Переполнение при выполнении математических операций). — Значение результата последней выполненной математической операции превышает допустимые размеры типа Longlnt (-2147483648 ... 2147483647). В этом случае рекомендуется использовать вещественные типы вместо целочисленных.
109 No enclosing FOR, WHILE or REPEAT statement(He найдены операторы цикла). — Эта ошибка возникает в том случае, когда стандартные процедуры Break и Continue используются вне операторов цикла FOR, WHILE или REPEAT.
112 CASE constant out of range(Константа в операторе CASE вне диапазона допустимых границ). — Значение целочисленных констант оператора CASE должно находиться в пределе от -32768 до 32767.
113 Error in statement(Ошибка в операторе). — Символ, на который указывает курсор, не может быть первым символом в операторе.
117 Target address not found(Указанный адрес не найден). — Команда Search/Find Error(Компиляция/Поиск ошибки) в интегрированной интерактивной среде или опция /F в командной строке компилятора не позволяет обнаружить оператор, соответствующий указанному адресу.
118 Include files are not allowed here(В данном месте программы под ключение файла невозможно). — Раздел операторов должен целиком размещаться в одном файле.
120 NIL expected(Ожидается оператор NIL). — Типизированные кон станты или указатели могут инициализироваться только значением NIL.
121 Invalid qualifier(Неверный квалификатор). — Эта ошибка может появиться по следующим причинам:
> при попытке индексировать переменную, которая не является массивом;
> при попытке указать поля в переменной, которая не является записью;
> при попытке применить оператор л к переменной, которая не является указателем.
122 Invalid variable reference(Недопустимая ссылка на переменную). — Предыдущая конструкция удовлетворяет синтаксису ссылки на переменную, но не указывает адрес памяти. Наиболее вероятно, что вызвана функция-указатель, но отсутствует ссылка на результат.
123 Too many symbols(Слишком много символов). — Программа или программный модуль описывает более 64 Кбайт символов. Если вы компилируете программу с помощью директивы {$D+}, то попробуйте отключить эту директиву или попытайтесь разбить программу на несколько модулей.
124 Statement part too large(Слишком большой раздел операторов). — Турбо Паскаль ограничивает размер раздела операторов до величи ны примерно 24 Кбайта. Если вы обнаружили эту ошибку, поместите части разделов операторов в одну или несколько процедур. В любом случае при наличии раздела операторов такого размера не стоит жалеть усилий, чтобы сделать более ясной и понятной структуру своей программы.
125 Files must be var parameters(Файлы должны иметь переменные в качестве параметров). — Попытка передать процедуре или функции параметр-значение файлового типа. Укажите ключевое слово VAR перед переменными.
126 Too many conditional symbols(Слишком много символов в условном выражении). — Отсутствует место для определения условных символов. Попытайтесь удалить некоторые идентификаторы или сократить некоторые из ключевых имен компиляции.
127 Misplaced conditional directive(Пропущена условная директива). — Компилятор обнаружил директиву {$ELSE} или {SENDIF} без соответствующих директив {SIFDEF}, {SIFNDEF} или {SIFOPT}.
128 ENDIF directive missing(Пропущена директива ENDIF). — Исходный файл закончился внутри конструкции условной компиляции. В исходном файле должно быть равное количество директив {SIFxxx} и {SENDIF}.
129 Error in initial conditional defines(Ошибка в определениях начальных условных выражений). — Исходные условные идентификаторы, указанные в опции Options/Compiler/Conditional Defines (Параметры/Компилятор/Условные определения) или в параметре /D компилятора командной строки, являются недопустимыми.
130 Header does not match previous definition(Заголовок не соответствует предыдущему определению). — Эта ошибка может появитьсяпо следующим причинам:
> заголовок процедуры или функции, указанный в интерфейсной секции, не соответствует заголовку исполняемой части процедуры или функции;
> заголовок процедуры или функции, указанный с помощью опере жающего описания FORWARD, не соответствует заголовку найден ной одноименной процедуры или функции.
133 Cannot evaluate this expression(Невозможно вычислить данное выражение). — В выражении-константе или в отладочном выражении используются неподдерживаемые средства, например, в описании константы используется функция Sin или в отладочном выражении вызывается определенная пользователем функция.
137 Structured variable are not allowed here(В данном месте использование структурной переменной не допускается). — Предпринята попытка выполнения над структурной переменной неподдерживаемой операции, например попытка перемножить две записи.
140 Invalid floating-point operation(Недопустимая операция с вещественным числом). — При операции с двумя действительными значениями было получено переполнение или деление на нуль.
142Procedure or function variable expected(Ожидается процедура или функция). — В этом контексте оператор получения адреса @ может использоваться только с переменной-процедурой или функцией.
143 Invalid procedure or function reference(Недопустимый указатель на процедуру или функцию).—Эта ошибка может появиться по следующим причинам:
> вы пытались вызвать процедуру в выражении;
> если конкретную реализацию процедуры или функции нужно присвоить переменной-процедуре, то она должна компилироваться с использованием ключа {$F+} и не может описываться с помощью ключевых слов INLINE или INTERRUPT.
147Object type expected(Ожидается объектный тип). — Идентификатор не определяет объектный тип или данный тип упущен.
148 Local object types not allowed(Локальные объектные типы не разре шены). — Объектные типы могут быть определены только в глобаль ном блоке программы или модуля. Объявление типа объекта внутри процедур (функций) и модулей не допускается.
149 VRTUAL expected(Ожидается VIRTUAL). — В описании объекта отсутствует ключевое слово VIRTUAL.
150 thod identifier expected(Ожидается идентификатор метода). — Указанный идентификатор не является идентификатором метода.
151 Virtual constructor are not allowed(Конструктор нельзя объявлять виртуальным). — Правило конструктора должно быть статическим.
152 Constructor identifier expected(Ожидается идентификатор конструкто ра). —Данный идентификатор не является конструктором объекта.
153 structor identifier expected(Ожидается идентификатор деструк тора). —Данный идентификатор не является идентификатором дест руктора.
154 Fail only allowed within constructors(Вызов FAIL допускается толь ко внутри конструктора).—Стандартная процедура FAIL может быть вызвана только из конструктора объекта.
155 Invalid combination of opcode and operands(Недопустимая комби нация кода операции и операндов). — Код ассемблерной команды не воспринимает данное сочетание операндов. Появление этого сообщения возможно по следующим причинам:
> внутри операторов Ассемблера использованы комментарии, например MOV {начальное значение} АХ,1;
> указано слишком много или слишком мало операндов для дан ной команды, например INC АХ, ВХ или MOV АХ;
> количество операндов правильное, но их тип и порядок не соот ветствует коду операции, например DEC1, MOV AX, CL или MOV 1, АХ.
156 Memory reference expected(Ожидается ссылка на область памяти). — Операнд ассемблерной инструкции не является требуемым указателем на область памяти. Скорее всего, в указании индексных регистров опе ранда отсутствуют квадратные скобки, например MOV AX,BX+SI вместо MOV AX,[BX+SI].
157Cannot add or substract relocatable symbols(Сложение или вычита ние перемещаемых символов невозможно). — С перемещаемыми идентификаторами в операнде Ассемблера допускается выполнение единственной операции — это сложение с константой или вычитание константы. Переменные, процедуры, функции и метки представляют собой перемещаемые идентификаторы. Предположим, что Var — это переменная, a Const — константа. Тогда инструкции MOV AX,Const+Const и MOV AX, Var+Const являются допустимыми, a MOV AX,Var+Var — нет.
158 Invalid register combination(Недопустимая регистровая комбина ция). — Допустимыми комбинациями индексных регистров являются [ВХ], [ВР], [SI], [DI], [BX+SI], [BX+DI], [BP+SI] и [BP+DI]. Другие комбинации индексных регистров, например [АХ], [ВР+ВХ] и [SI+DX], не допускаются. Заметим, что локальные переменные (переменные, описанные в процедуре или функции) размещаются в стеке и доступ к ним организуется через регистр ВР. При ссылках на такие переменные Ассемблер автоматически добавляет [ВР], поэтому хотя конструкция типа Local[BX] (где Local — локальная переменная) и выглядит допустимой, операндом в итоге будет Local[BP+BX].
160 Invalid symbol reference(Недопустимая ссылка на идентификатор). — Данный идентификатор в операнде Ассемблера недоступен. Эта ошибка может появиться по следующим причинам:
> вы пытались обратиться к стандартной процедуре, стандартной функции или специальным массивам: Mem, MemW, MemL, Port, PortW;
> вы обратились к строковой, вещественной константе в операторе ассемблерной команды;
> в операнде Ассемблера вы пытались обратиться к процедуре или функции типа INLINE;
> вы пытались получить с помощью операции @Result доступ к результату, возвращаемому функцией;
> вы пытались использовать короткую инструкцию команды JMP, которая выполняет переход не на метку, а на что-то другое.
161 Code generation error(Ошибка генерации кода). — Ошибка возникает, в частности, при компиляции ассемблерных фрагментов, содержащих команды LOOPNE, LOOPE, LOOPили JCXZ,если команда ссылается на недоступную метку.
162 ASM expected(Ожидается ключевое слово ASM).
163 Duplicate dynamic method index(Дублирование индекса динами ческого метода). — Индекс динамического метода уже использован
другим динамическим методом. Возможно, вы пытались переопреде лить динамический метод, но ошиблись в имени, введя, таким образом, новый метод.