Карта сайта

sotau.cbg.ru

Turbo Pascal
Turbo Pascal
Сообщения об ошибках периода компиляции (141 - 162)

141 Cannot compile overlay to memory - Нельзя выполнить компиляцию оверлейных модулей в память

Программа, использующая оверлейные модули, должна компилироваться на диск

142 Procedure or function variable expected - Должна использоваться переменная процедурного типа

В этом контексте оператор получения адреса @ может использоваться только с переменной процедурного типа

143 Invalid procedure or function reference - Недопустимая ссылка на процедуру или функцию

Возможные причины сообщения:

- Вы пытаетесь вызвать процедуру в выражении
- процедура или функция, использующаяся в качестве параметра вызова другой процедуры или функции, должна компилироваться в состоянии {$F+} и не может описываться с помощью зарезервированных слов INLINE или INTERRUPT

144 Cannot overlay this unit - Этот модуль не может использоваться в качестве оверлейного

Попытка использовать в качестве оверлейного модуль, который не был скомпилирован с директивой {$O+}

145 Too many nested scopes - Слишком много вложений

В программе не может быть больше 512 вложений с не более чем 128 вложениями в каждом модуле. Вложениями считаются:

- каждый модуль в предложении USES
- каждая вложенная запись в типе RECORD
- каждый вложенный оператор WITH

146 File access denied - Отказано в доступе к файлу

Возможные причины:

- Вы пытаетесь использовать файл с атрибутом «только для чтения» в качестве выводного файла
- Вы используете имя каталога вместо имени выводного файла

147 Object type expected - Здесь должен быть тип OBJECT

Этот идентификатор должен принадлежать к типу OBJECT

148 Local object types are not allowed - Нельзя объявлять локальные объекты

Нельзя объявить объект в процедуре (функции)

149 VIRTUAL expected - Пропущено слово VIRTUAL

150 Method identifier expected - Пропущен идентификатор инкапсулированного правила

151 Virtual constructor are not allowed - Конструктор не может быть виртуальным

152 - Ошибка с этим кодом не описана в версии 7.0 системы Турбо Паскаль

153 Destructor identifier expected - Пропущен идентификатор деструктора

154 Fail only allowed within constructor - Обращение к стандартной процедуре FAIL может содержаться только в конструкторе

155 Invalid combination of opcode and operands - Недопустимая комбинация кода команды и операндов

Код ассемблерной команды не может иметь такие операнды. Причины ошибки:

- указано слишком много или слишком мало операндов для данной команды, например, INC AX, BX или MOV AX
- количество операндов правильное, но их типы или порядок следования не соответствуют данной команде, например, DEC 1, MOV AX, CL или MOV 1, AX

156 Memory reference expected - Отсутствует адрес

Операнд ассемблерной команды не содержит адрес. Вероятно, Вы забыли выделить квадратными скобками индексный регистр, например, MOV АХ, BX+SI вместо MOV АХ, [BX+SI]

157 Cannot add or subtract relocatable symbols - Нельзя складывать или вычитать перемещаемые символы

В ассемблерных выражениях обоими операндами в операциях сложения или вычитания могут быть только ссылки на константу. Идентификаторы переменных, процедур, функций и меток являются перемещаемымисимволами и не могут использоваться в качестве двух операндов одновременно в таких операциях. Если VAR -идентификатор переменной, a CONST - константы, то предложения MOV AX, CONST+CONST и MOVE AX, VAR+CONST будут правильными, в то время как выражение MOV AX, VAR+VAR недопустимо

158 Invalid register combination - Недопустимая комбинация регистров

Допустимыми комбинациями индексных регистров являются [ВХ] , [BpJ, [SI], [DI] , [BX+SI] , [BX+DI] , [BP+SI] и [BP+DI] . Другие комбинации (например, [АХ] , [BP+BX] , [SI+DX]) недопустимы. Заметим, что локальные переменные размещаются в стеке и доступ к ним организуется через регистр ВР. Ассемблер автоматически добавляет [ВР] в ссылках на такие переменные, поэтому в операндах типа LOCAL [ВХ] , где LOCAL - локальная переменная, образуется недопустимая ссылка LOCAL[BP+BX]

159 286/287 instructions are not enabled - Недоступен набор команд микропроцессоров 286/287

Используйте директиву {$G+}, но учтите, что такую программу можно исполнять только на ПК, оснащенных микропроцессором Intel 80286/80287 или более поздним

160 Invalid symbol reference - Недопустимая ссылка на символ

К указанному символу нельзя обратиться в ассемблерной программе. Это может быть следствием таких причин:

- Вы пытаетесь использовать ссылки на стандартные процедуры (функции) или специальные массивы MEM, MEMW, MEML, PORT и PORTW в ассемблерных операндах
- Вы обращаетесь к строковой, вещественной константе или константе типа SET в операнде ассемблерной команды
- в ассемблерном операнде Вы обращаетесь к процедуре или функции, написанной в режиме INLINE
- Вы пытаетесь получить с помощью операции @Result доступ к результату, возвращаемому функцией
- Вы пытаетесь использовать короткую форму команды JMP для передачи управления в непомеченный оператор программы

161 Code generation error - Ошибка генерации кода

Ошибка возникает, в частности, при компиляции ассемблерных фрагментов, содержащих команды LOOP, LOOPE, LOOPNE, JCXZ, если команда ссылается на недоступную метку

162 ASM expected - Отсутствует зарезервированное слово ASM


    © 2009 - 2024 Acid Ulcer