Перечень сообщений
- L -
Last parameter of операция must have type int
Сообщение об ошибке этапа компиляции
(последний параметр операции должен иметь тип int)
При описании постфиксных операций operator++ или operator--
последний параметр должен описываться с типом int.
Library contains COMDEF recors - extended dictionary not created
Предупреждение утилиты TLIB
(библиотека содержит записи COMDEF - расширенный словарь не
создается)
Объектная запись, добавляемая к словарю, содержит запись
COMDEF. Это несовместимо с параметром расширенного словаря.
Library too large, please restart with page size размер
Сообщение об ошибке утилиты TLIB
(библиотека слишком велика, перезапустите с размером страницы "@размер")
Создаваемая библиотека не может быть построена с текущим
размером страницы библиотеки.
Linkage specification not allowed
Сообщение об ошибке этапа компиляции
(cпецификация компоновки не разрешается)
Спецификации типа компоновки, например extern "C", допустимы
только на уровне файла. Перенесите данное объявление функции на
уровень файла.
Linker name conflict for функция
Сообщение об ошибке этапа компиляции
При правке имен в С++ подставляемая функция или виртуальная
таблица слишком велики и были усечены (чаще всего это происходит
с шаблонами), а усеченные имена совпадают с ранее сгенерированной
функцией или виртуальной таблицей. Эта ошибка выводится компилятором. Ошибку можно исправить изменением имени функции или класса
или компиляцией с параметром -Vs.
Linker stack overflow
Сообщение об ошибке утилиты TLINK
(переполнение стека компоновщика)
Чтобы отмечать модуль, включаемые в выполняемый образ из
библиотек, TLINK использует рекурсивную процедуру. В некоторых
ситуациях эта процедура может привести к переполнению стека. Если
вы получите данное сообщение об ошибке, удалите из библиотек некоторые модули, включите их в объектные файлы при компоновке и
повторите попытку.
Lvalue required
Сообщение об ошибке этапа компиляции
(требуется именующее значение)
Левая часть операции присваивания должна являться адресуемым
выражением. Сюда входят числовые переменные или указатели-переменные, ссылки на поля структур, либо обращение по ссылке через
указатель, либо элемент массива, заданный индексом.
- M -
Macro argument syntax error
Сообщение об ошибке этапа компиляции
(синтаксическая ошибка в аргументе макрокоманды)
Аргумент в определении макрокоманды должен являться идентификатором. Компилятор встретил некоторый символ, который не может
являться частью идентификатора, там, где ожидался аргумент.
Macro expansion too long
Сообщение об ошибке этапа компиляции
(слишком длинное макрорасширение)
Размер макрорасширения не может превышать 4096 символов.
Macro expansion too long
Сообщение об ошибке утилиты MAKE
(макрорасширение слишком велико)
Макроопределение не может расширяться более, чем на 4096
знаков. Такая ошибка часто появляется, если осуществляется регулярное макрорасширение. Макроопределение не может правильно
расширять самое себя.
Macro substitute text строка is too long
Фатальная ошибка утилиты MAKE
(строка текста макроподстановки слишком велика)
Текстовая строка макроподстановки переполняет внутренний буфер MAKE размером 512 байт.
Macro replace text строка is too long
Фатальная ошибка утилиты MAKE
(строка текста замены слишком велика)
Текстовая строка замены переполняет внутренний буфер MAKE
размером 512 байт.
main must have a return type of int
Сообщение об ошибке этапа компиляции
(функция main должна иметь тип возврата int)
К функции main предъявляются специальные требования. Одно из
них состоит в том, что она не может иметь тип возврата иной, нежели int.
Malformed command-line
Сообщение об ошибке этапа компиляции
(неверно сформированная командная строка)
В командной строке найдена недопустимая запись.
Matching base class function for функция has different dispatch number
Сообщение об ошибке этапа компиляции
(соответствующая функция базового класса для функции имеет
другой номер диспетчеризации)
Если в производном классе описывается виртуальная динамическая функция (DDVT), то соответствующая функция базового класса
должна иметь тот же номер диспетчеризации, что и производная
функция.
Matching base class function for функция is not dynamic
Сообщение об ошибке этапа компиляции
(соответствующая функция базового класса для функции не является динамической)
Если в производном классе описывается виртуальная динамическая функция (DDVT), то соответствующая функция базового класса
должна также быть динамической.
Maximum precision used for member pointer type тип
Предупреждение этапа компиляции
(для указателя-элемента типа тип используется максимальная
точность)
Если при описании типа указателя-элемента его класс описан
не полностью, и использован параметр -Vmd, компилятор должен использовать наиболее общее (и наименее эффективное) представление
для данного типа указателя-элемента. Это может привести не только
к генерации менее эффективного кода (и к получению большего чем
нужно элемента-указателя), но привести также к проблемам с раздельной компиляцией. См. описание параметра -Vm в Главе 4 "Компилятор, работающий в режиме командной строки" в "Руководстве пользователя".
Member function must be called or its address taked
Сообщение об ошибке этапа компиляции
(должна вызываться функция-элемент или получаться ее адрес)
Когда в выражении используется функция-элемент, то она
должна либо вызываться, либо нужно получать ее адрес с помощью
операции &. В этом случае функция-элемент используется в недопустимом контексте.
Member identifier expected
Сообщение об ошибке этапа компиляции
(требуется идентификатор элемента)
Здесь предполагается имя элемента или структуры С++, но оно
не найдено. Правая часть операции точки (.) или стрелки (->)
должна быть именем элемента структуры или класса, указанного в
левой части операции.
Member is ambiguous: элемент_1 and элемент_2
Сообщение об ошибке этапа компиляции
(неоднозначность элементов)
Вы должны уточнить ссылку на элемент с помощью соответствующего базового класса. В классе С++ класс элемент может встречаться более чем в одном базовом классе, и не было уточнено, что это
означает. Это применяется только при множественном наследовании,
когда имя элемента в каждом базовом классе не "скрывается" элементом с тем же именем в производном классе по тому же маршруту.
Правила языка С++ требуют, чтобы эта проверка не неоднозначность
выполнялась перед проверкой полномочий доступа (private, protected, public). Таким образом, можно получить данное сообщение, хотя доступен только один элемент (или ни одного).
Member элемент cannot be used without an object
Сообщение об ошибке этапа компиляции
(элемент "элемент" нельзя использовать без объекта)
Это означает, что пользователь записал класс::элемент, где
элемент - это обычный (не статический) элемент, и класс, связываемый с данным элементом, отсутствует. Например, допустима запись:
объект.класс::элемент, но не класс::элемент.
Member элемент has the same name as its class
Сообщение об ошибке этапа компиляции:
(элемент имеет то же имя, что и его класс)
Статический элемент данных, перечислитель, элемент неименованного объединения или вложенный тип не может иметь то же имя,
что и его класс. Имя, совпадающее с именем его класса, может
иметь только функция-элемент или нестатический элемент.
Member элемент is initialized more than once
Сообщение об ошибке этапа компиляции
(элемент инициализируется более одного раза)
В конструкторе класса С++, списке инициализации, следующем
за заголовком конструктора, одно и то же имя элемента указано
несколько раз.
Member pointer requires on right side of .* or ->*
Сообщение об ошибке этапа компиляции
(в правой части .* или ->* требуется указатель элемента)
Правая часть операций С++ .* или ->* должна описываться как
указатель на элемент класса, задаваемый левой частью операции. В
данном случае правая часть не является указателем элемента.
Memory full listing truncated!
Предупреждение утилиты TLIB
(полный листинг памяти усечен)
Библиотекарь исчерпал память при создании файла листинга
библиотеки. Файл будет создан, но он будет неполным.
Memory reference expected
Сообщение об ошибке этапа компиляции
(требуется ссылка на память)
Ассемблерный операнд не является ссылкой на память, которая
требуется в данном месте. Скорее всего, вы забыли заключить индексный регистр в квадратные скобки, например, MOV AX,BX+SI вместо MOV AX,[BX+SI].
Misplaced break
Сообщение об ошибке этапа компиляции
(неправильно расположен break)
Компилятор обнаружил оператор break вне конструкции оператора switch или цикла.
Misplaced continue
Сообщение об ошибке этапа компиляции
(неправильно расположен оператор continue)
Компилятор обнаружил оператор continue вне конструкции цикла.
Misplaced decimal point
Сообщение об ошибке этапа компиляции
(неправильно расположенная десятичная точка)
Компилятор обнаружил десятичную точку в показателе степени
константы с плавающей точкой.
Misplaced elif directive
Сообщение об ошибке этапа компиляции
(неправильно расположенная директива elif)
Компилятор обнаружил директиву #elif без соответствующей ей
директивы #if, #ifdef или #ifndef.
Misplaced elif statement
Сообщение об ошибке утилиты MAKE
(Оператор elif находится не на месте)
Директива !elif обнаружена без соответствующей ей директивы
!if.
Misplaced else
Сообщение об ошибке этапа компиляции
(Неправильно расположен оператор else)
Компилятор обнаружил оператор else без соответствующего ему
оператора if. Это сообщение может быть вызвано как лишним оператором else, так и лишней точкой с запятой, отсутствием фигурной
скобкой, либо некоторой синтаксической ошибкой в предыдущем операторе if.
Misplaced else directive
Сообщение об ошибке этапа компиляции
(Неправильно расположенная директива else)
Компилятор встретил директиву #else без соответствующей ей
директивы #if, #ifdef или #ifndef.
Misplaced else statement
Сообщение об ошибке утилиты MAKE
(Неверно помещен оператор else)
Обнаружена директива !else без соответствующей ей директивы
!if.
Misplaced endif directive
Сообщение об ошибке этапа компиляции
(Неправильно расположенная директива endif)
Компилятор встретил директиву #endif без соответствующей ей
директивы #if, #ifdef или #ifndef.
Misplaced endif statement
Сообщение об ошибке утилиты MAKE
(Неверно помещен оператор endif)
Была обнаружена директива !endif без соответствующей ей директивы !if.
имя_файла(номер_строки): Missing internal name
Сообщение об ошибке утилиты TLINK
(пропущено внутреннее имя)
В секции IMPORTS файла определения модуля имеется ссылка на
запись, заданную с помощью имени модуля и порядкового значения.
Когда запись задается порядковым значением, определению импорта
нужно присвоить внутреннее имя. Это внутреннее имя, которое ваше
программа использует для ссылки на импортируемое определение. В
файле определения модуля должен использоваться следующий синтаксис:
<внутреннее_имя>=<имя_модуля>.<порядковое_значение>
Mixed common types in module модуль. Cannot mix COMDEFs and VIRDEFRs.
Сообщение об ошибке утилиты TLINK
(В модуле содержатся смешанные типы. COMDEF и VIRDEF смешивать не допускается.)
COMDEF и VIRDEF смешивать нельзя. Чтобы запретить генерацию
VIRDEF, включите параметр -Vs.
Mixing pointers to different 'char' types
Предупреждение этапа компиляции
(Смешанное использование указателей на char)
Вы преобразовали указатель на char в указатель на unsigned
char, либо наоборот без явного приведения типов. (Строго говоря,
это допустимо, но на процессоре 8086 часто приводит к ошибочным
результатам).
Multiple base classes require explicit class names
Сообщение об ошибке этапа компиляции
(Множественные базовые классы требуют явных имен классов)
В конструкторе класса С++ каждый вызов конструктора базового
класса в заголовке конструктора должен в случае, если имеется более одного непосредственного базового класса, включать имя базового класса.
Multiple declaration for идентификатор
Сообщение об ошибке этапа компиляции
(Множественное объявление идентификатора)
Идентификатор объявлен более одного раза, что недопустимо.
Это может произойти в случае противоречивых объявлений, например
int a; double a;, в случае, когда функция объявлена двумя разными
способами, либо при повторении некоторого объявления, не являющегося функцией extern или простой переменной.
Multiple entry points defined
Сообщение об ошибке утилиты TLINK
(определено несколько точек входа)
В приложении определено несколько точек входа. Допускается
только одна.
идентификатор must be a member function
Сообщение об ошибке этапа компиляции:
(идентификатор должен быть функцией-элементом)
Большинство функций-операций С++ может являться элементами
классов или обычными функциями, не входящими в класс, однако некоторые из них обязательно должны быть элементами класса. Это
функции operator =, operator ->, operator() и преобразования типов. Данная функция не является функцией-элементом, но должна являться таковой.
идентификатор must be a member function or have a parameter of class type
Сообщение об ошибке этапа компиляции
(идентификатор должен быть функцией-элементом или иметь аргумент типа класса)
Большинство функций-операций С++ должно иметь неявный или
явный аргумент типа класса. Данная функция-операция была объявлена вне класса и не имеет явного аргумента типа класса.
идентификатор must be a previously defined class or struct
Сообщение об ошибке этапа компиляции
(идентификатор должен быть ранее объявленным классом или
структурой)
Вы пытаетесь объявить идентификатор как базовый класс, тогда
как он либо не является классом, либо не был еще полностью определен. Исправьте имя или реорганизуйте объявления.
идентификатор must be a previoustly defined enumeration tag
Сообщение об ошибке этапа компиляции
(идентификатор должен быть ранее определенным тегом (признаком) перечислимого типа)
Данное объявление пытается обратиться к идентификатору, как
к тегу типа enum, тогда как он не был объявлен в качестве такового. Исправьте имя или реорганизуйте объявления.
функция must be declared with no parameters
Сообщение об ошибке этапа компиляции
(функция должна описываться без аргументов)
Данная функция-операция С++ была неправильно объявлена с аргументами.
операция must be declared with one or no parameters
Сообщение об ошибке этапа компиляции
(операция должна быть объявлена с одним параметром или без
них)
Когда operator++ или operator-- описывается, как функция-элемент, она должна описываться, как не имеющая параметров
(например, префиксная версия операции) или с одним параметром типа int (постфиксная версия).
операция must be declared with one or two parameters
Сообщение об ошибке этапа компиляции
(операция должна быть объявлена с одним или двумя аргументами)
Когда operator++ или operator-- описывается, как функция, не являющаяся элементом, она должна описываться с одним параметром (например, префиксная версия операции) или с двумя
параметрами (постфиксная версия).
функция must be declared with one parameter
Сообщение об ошибке этапа компиляции
(функция должна описываться с одним аргументом)
Данная функция-операция С++ была неправильно объявлена с более чем одним аргументом.
функция must be declared with one or no parameter
Сообщение об ошибке этапа компиляции
(функция должна описываться с одним аргументом или без аргументов)
Operator++ или operator-- были описаны как функция-элемент,
а они должны описываться без параметров или с одним параметром
типа int.
функция must be declared with one or two parameter
Сообщение об ошибке этапа компиляции
(функция должна описываться с одним аргументом двумя аргументами)
Данная функция С++ была неправильно объявлена.
Must take address of a memory location
Сообщение об ошибке этапа компиляции
(Необходимо получение адреса ячейки памяти)
Ваш исходный файл использовал операцию получения адреса (&)
в выражении, которое не может выполнять адресацию памяти, например, в случае регистровой переменной.
- N -
Need an identifier to declare
Сообщение об ошибке этапа компиляции
(Для объявления требуется идентификатор)
В данном контексте для завершения объявления требовался
идентификатор. Причиной этого сообщения мог стать typedef без
имени или лишняя точка с запятой на уровне файла. В С++ это может
быть имя класса, неправильно использованное в качестве другого
рода идентификатора.
No : following ?
Сообщение об ошибке этапа компиляции
(Нет : после ?)
Операции вопросительный знак (?) и двоеточие (:) не соответствуют друг другу в данном выражении. Возможно, отсутствует
двоеточие, либо неправильно вложена или отсутствует круглая скобка.
No base class to initialize
Сообщение об ошибке этапа компиляции
(отсутствует базовый класс для инициализации)
Конструктор класса С++ пытается неявно вызвать конструктор
базового класса, тогда как этот класс был объявлен без базовых
классов. Проверьте объявления.
No closing quote
Сообщение об ошибке утилиты MAKE
(нет закрывающей кавычки)
В строковом выражении !if или !elif нет закрывающей кавычки.
No declaration for function функция
Предупреждение этапа компиляции
(отсутствует объявление функции)
Это сообщение выдается при попытке вызова функции без ее
предварительного объявления. В Си можно объявить функцию без прототипа, например "int func();". В С++ каждое объявление функции
является также ее прототипом; приведенный пример эквивалентен
"int func(void);". Объявление может быть записано как в классическом, так и в современном (с прототипом) стиле.
No file name ending
Сообщение об ошибке утилиты MAKE
(не закончено имя файла)
Имя файла в операторе включения !include не содержит закрывающей кавычки или угловой скобки.
No file name ending
Сообщение об ошибке этапа компиляции
(не закончено имя файла)
Имя файла в операторе включения #include не содержит закрывающей кавычки или угловой скобки.
No file names given
Сообщение об ошибке этапа компиляции
(ре заданы имена файлов)
Командная строка компилятора Borland C++ режима командной
строки (BCC) не содержит имен файлов. Вы обязаны задать имя исходного файла.
No internal name for IMPORT in .DEF file
Сообщение об ошибке утилиты LINK
(в файле .DEF отсутствует внутреннее имя для IMPORT)
Файл .DEF имеет семантическую ошибку. Возможно перед именем
модуля вы забыли включить внутреннее имя для импорта.
No macro before =
Сообщение об ошибке утилиты MAKE
(перед = нет макрокоманды)
Перед тем, как присваивать значение, вы должны определить
имя макрокоманды.
No match found for wildcard выражение
Сообщение об ошибке утилиты MAKE
(соответствия трафарету выражение не найдено)
Нет файлов, соответствующих трафарету выражение, которые может найти MAKE. Например, если вы запишете:
prog.exe: *.obj
MAKE будет выводить сообщение об ошибке, если файлов с указанным расширением (OBJ) в текущем каталоге нет.
No module definition file specified: using defaults
Предупреждение утилиты TLINK
(не задан файл определения модуля: используются значения по
умолчанию)
Компоновщик TLINK вызывался с одним из параметров Windows,
но файл определения модуля не задан.
No program starting address defined
Предупреждение утилиты TLINK
(не задан стартовый адрес программы)
Это предупреждение означает, что ни в одном модуле не задан
начальный стартовый адрес программы. Обычно это происходит из-за
того, что вы забываете выполнить компоновку с модулем инициализации C0x.OBJ. При компоновке с динамически компонуемыми библиотеками (DLL.) Windows такое предупреждение выводиться не должно.
No stack
Предупреждение утилиты TLINK
(нет стека)
Такое предупреждение выводится, если ни в одном из модулей
или объектных файлов и библиотек, включаемых в программу, не определяется сегмент стека. Для модели памяти TINY в Borland C++
(или для любой программы, которая будет преобразовываться в формат .COM) это нормальное сообщение. Для других программ (кроме DLL) это указывает на ошибку.
Если данное сообщение генерируется в программе Borland C++ с
моделью памяти, отличной от TINY, убедитесь, что вы используете
корректные объектные файлы инициализации C0x.
No stub fox fixup at адрес
Предупреждение утилиты TLINK
(нет фиктивного модуля для корректировок по данному адресу)
Эта ошибка возникает, когда целью корректировки является
оверлейный сегмент, но для внешней цели заглушки не найдено.
Обычно это является результатом того, что вы объявляете общедоступным идентификатор, на который имеется ссылка в том же модуле.
No terminator specified for in-line file operator
Фатальная ошибка утилиты MAKE
(для встроенной файловой операции не задано завершения)
Формирующий файл содержит операции командной строки && или
<<, начинающие встроенный файл, но файл не завершается.
Non-const function функция called for const object
Предупреждение этапа компиляции
(функция, не имеющая типа константы, вызвана для объекта-константы)
Функция-элемент, не имеющая типа константы (const), вызвана
для объекта типа константы. Это ошибка, но выдается только предупреждение, и программа получает шанс заработать.
Nonportable pointer comparison
Предупреждение этапа компиляции
(немобильное сравнение указателей)
В вашем исходном файле указатель сравнивается с не указателем, не являющимся нулевой константой. Если сравнение выполняется
так, как вам нужно, можно использовать приведение типа, чтобы подавить вывод данного предупреждения.
Nonportable pointer conversion
Сообщение об ошибке этапа компиляции
(немобильное преобразование указателя)
Ненулевое целочисленное значение используется в контексте,
где ожидается указатель или целое значение; размеры указателя и
целого значения одинаковы. Если вы действительно намереваетесь
использовать данное преобразование, следует выполнить явное приведение типов.
Nonportable pointer conversion
Предупреждение этапа компиляции
(немобильное преобразование указателя)
Требуется выполнение неявного преобразования между указателем и интегральным типом, но эти типы имеют разный размер. Такое
преобразование не может выполняться без явного приведения типов.
Оно может и не иметь смысла, поэтому проверьте, действительно ли
это преобразование вам необходимо.
Nonresident Name Table is greater than 64K
Предупреждение утилиты TLINK
(нерезидентная таблица имен превышает 64К)
Максимальный размер нерезидентной таблицы имен - 64К. Компоновщик продолжает работу, но игнорирует последующие нерезидентные
имена.
Nontype template argument must be of scalar type
Сообщение об ошибке этапа компиляции
(нетипизированный аргумент шаблона должен иметь скалярный
тип)
Нетипизированный формальный аргумент шаблона должен иметь
скалярный тип. Он не может быть целым типом, перечислением или
указателем.
non-ANSI Keywork used: ключевое_слово
Сообщение об ошибке этапа компиляции
Использовано ключевое слово, не соответствующее стандарту
ANSI, в то время как задан параметр -A.
Non-virtual function функция declared pure
Сообщение об ошибке этапа компиляции
(невиртуальная функция объявлена "чистой")
"Чистыми" (pure) могут объявляться только виртуальные функции, поскольку производные классы должны иметь возможность их переопределения.
Non-volatile function called for volatile object
Предупреждение этапа компиляции:
(для объекта типа volatile вызвана функция, отличная от
volatile)
В С++ функция-элемент класса была вызвана для объекта типа
volatile, а сама функция после заголовка не была объявлена как
"volatile". Для объекта volatile могут использоваться только
функции volatile.
имя_файла not a MAKE
Сообщение об ошибке утилиты MAKE
(имя файла отлично от MAKE)
Файл, заданный с помощью параметра -f, не является формирующем файлом.
Not an allowed type
Сообщение об ошибке этапа компиляции
(неразрешенный тип)
В вашем исходном файле содержится объявление некоторого неразрешенного типа; например, функции, возвращающую функцию или
массив.
Not enough memory
Фатальная ошибка утилиты MAKE
(недостаточно памяти)
Данная ошибка появляется, если вся рабочая память исчерпана.
Вы должны попытаться осуществить то же на вычислительной машине с
большой памятью. Если на вашей вычислительной машине имеется уже
640К, то упростите исходный файл.
Not enough memory to run application
Сообщение об ошибке утилиты TLINK
(недостаточно памяти для запуска приложения)
Для работы компоновщика не хватает памяти. Попытайтесь
уменьшить объем моделируемого в оперативной памяти диска или активного дискового буфера. Затем снова запустите TLINK. Если вы
работаете в реальном режиме, попробуйте использовать параметр MAKE -S, удалив резидентные задачи и сетевые драйверы. При работе в
защищенном режиме MAKE попробуйте уменьшить размер виртуального
диска или активного дискового буфера.
Not enough memory for command line buffer
Сообщение об ошибке утилиты TLIB
(не хватает памяти для буфера командной строки)
Данная ошибка происходит, когда TLIB исчерпывает доступную
память.
модуль not found in library
Предупреждение утилиты TLIB
(не найден модуль в библиотеке)
При попытке выполнить для библиотеки операцию '-' или '*'
указанный объект в библиотеке отсутствует.
Null pointer assignment
Сообщение об ошибке этапа выполнения
(присваивание пустому указателю)
При выходе из программы с моделью памяти small (малая) или
medium (средняя) выполняется проверка, чтобы определить, были ли
изменены значения двух первых байт в сегменте данных программы.
Эти байты никогда не должны изменяться работающей программой. Если же они были изменены, то выдается сообщение "Null pointer
asignment", говорящее о том, что (вероятно) некоторое значение
было записано в неинициализированный указатель. Во всех прочих
отношениях программа может работать правильно. Однако данная
ошибка является серьезной ошибкой, и ей следует заняться немедленно. Если вы не сможете исправить неинициализированный указатель, это приведет к непредсказуемому поведению компьютера
(вплоть до его "блокирования" в случае моделей памяти large
(большая), compact (компактная) и huge (сверхбольшая)). Для отслеживания таких ошибок может служить интегрированный отладчик,
входящий в диалоговую среду разработки.
Numeric constant too large
Сообщение об ошибке этапа компиляции
(числовая константа слишком велика)
Строковые и символьные управляющие последовательности больше
шестнадцатиричного значения \xFF или восьмеричного \377 сгенерированы быть не могут. Двухбайтовые символьные константы могут задаваться при помощи второй обратной косой черты. Например,
\x0D\x0A представляет собой двухбайтовую константу. Числовой литерал после управляющей последовательности следует разбить:
printf("\x0D" "12345");
Тем самым будет выведен возврат каретки и затем 12345.
- O -
object module имя_файла is invalid
Сообщение об ошибке утилиты TLIB
(недопустимый объектный модуль)
Библиотекарь не может распознать запись заголовка объектного
модуля, добавляемого к библиотеке, и предполагает, что это недопустимый модуль.
Objects of type тип cannot be initialized with {}
Сообщение об ошибке этапа компиляции:
(объект указанного типа не должен инициализироваться с помощью {})
Обычные структуры Си могут инициализироваться набором значений, заключенных в фигурные скобки. Классы С++ могут инициализироваться с помощью конструкторов (если класс имеет конструкторы,
локальных элементов, функций или базовых классов, которые являются виртуальными.
Only <<KEEP or <<NOKEEP
Сообщение об ошибке утилиты MAKE
(только <<KEEP или <<NOKEEP)
При закрытии временного встроенного файла вы задали что-то
отличное от KEEP или NOKEEP.
Only member functions may be 'const' or 'volatile'
Сообщение об ошибке этапа компиляции
(иметь тип 'const' или 'volatile' могут только функции-элементы)
Как 'const' или 'volatile' описан какой-либо другой объект,
отличный от функции-элемента.
Only one of a set of overloaded functions can be "C"
Сообщение об ошибке этапа компиляции
(только один из наборов переопределенных функций может быть
описана как "C")
Функции С++ по умолчанию являются переопределяемыми, и компилятор присваивает каждой из них новое имя. Если вы хотите переопределить присваивание компилятором нового имени, объявив функцию "C", то можете сделать это только для одного из набора функций с тем же именем (в противном случае компоновщик обнаружит более одной глобальной функции с тем же именем).
Operand of delete must be no-const pointer
Сообщение об ошибке этапа компиляции
(операндом удаления должен быть указатель, отличный от константы)
С помощью операции delete не допускается использовать указатель-константу.
Operator [] missing ]
Сообщение об ошибке этапа компиляции
(в operator[] отсутствует ])
В С++ operator[] была объявлена как operator[. Вы должны добавить недостающую квадратную скобку или еще как-либо исправить
объявление.
operator -> must return a pointer or a class
Сообщение об ошибке этапа компиляции
(operator -> должна возвращать указатель или класс)
Функция С++ операция operator-> должна быть объявлена как
возвращающая класс или указатель на класс (или структуру либо
объединение). В любом случае это должно быть нечто такое, к чему
применима операция ->.
Operator delete must return void
Сообщение об ошибке этапа компиляции
(Операция delete должна возвращать void)
Переопределенная операция С++ operator delete была объявлена
иначе.
Operator delete[] must return void
Сообщение об ошибке этапа компиляции
(Операция delete должна возвращать void)
Переопределенная операция С++ operator delete была объявлена
иначе. Опишите delete с одним параметром void*, а другим - типа
size_t.
Operator must be declared as function
Сообщение об ошибке этапа компиляции
(операция должна описываться как функция)
Переопределяемая операция была описана с типом, отличным от
типа функции.
Operator new[] must have an initial parameter of type size_t
Сообщение об ошибке этапа компиляции
(операция new[] должна иметь параметр инициализации типа size_t)
Операция new может объявляться с произвольным числом параметров, но обязательно должна иметь хотя бы один параметр, в котором будет находиться размер распределяемой памяти.
Operator new must return an object of type void*
Сообщение об ошибке этапа компиляции
(операция new должна возвращать объект типа void*)
Переопределенная операция С++ operator new была объявлена
иначе.
Operator new[] must return an object of type void*
Сообщение об ошибке этапа компиляции
(операция new[] должна возвращать объект типа void*)
Переопределенная операция С++ operator new была объявлена
иначе.
Out of memory
Фатальная ошибка этапа компиляции
(недостаточно памяти)
Исчерпана общая рабочая память. Повторите компиляцию этого
файла на машине с большей доступной памятью. Если у вас и так
имеется 640К, следует упростить исходный файл.
Out of memory
Сообщение об ошибке утилиты TLIB
(недостаточно памяти)
По каким-то причинам утилита TLIB или Borland C++ исчерпали
при построении библиотеки доступную память. Во всех конкретных
случаях выводятся также детальное сообщение, а "Out of memory" -
это общая ситуация нехватки памяти в разных ситуациях. При работе
в Windows, чтобы освободить память, закройте одну или более прикладных программ.
Если данное сообщение возникает, когда слишком большой становится таблицы идентификаторов, вы должны освободить память. Для
командной строки это предполагает удаление резидентных программ
или драйверов устройств, использующих память реального режима. В
интегрированной среде дополнительную память можно получить, закрыв редакторы. При работе в Windows, чтобы освободить память,
закройте одну или более прикладных программ.
Out of memory
Сообщение об ошибке утилиты TLINK
(недостаточно памяти)
TLINK исчерпал динамически распределяемую память, необходимую для процесса компоновки. Эта общая ошибка возникает во многих
ситуациях, когда утилите TLINK не хватает памяти. Обычно это означает, что в компонуемых объектных файлах определено слишком
много модулей, внешних идентификаторов, групп или сегментов. Вы
можете попробовать уменьшить объем виртуальных дисков и/или активных дисковых буферов. При работе под Windows, чтобы освободить
память, закройте одну или более прикладных программ.
out of memory creating extended dictionary
Сообщение об ошибке утилиты TLIB
(не хватает памяти при создании расширенного словаря)
Библиотекарь исчерпал память при создании расширенного словаря библиотеки. Библиотека будет создана, но не будет иметь расширенного словаря.
out of memory reading LE/LIDATA record from object module
Сообщение об ошибке утилиты TLIB
(не хватает памяти при чтении записи LE/LIDATA из объектного
файла)
Библиотекарь пытается прочитать запись данных из объектного
модуля, но не может получить достаточно большой блок памяти. Если
добавляемый блок содержит большой сегмент или сегменты данных, то
возможно добавление этого модуля перед другими модулями позволит
решить проблему. Добавив модуль первым, вы получите дополнительную память для записи общедоступных переменных и списка модулей,
добавляемых далее.
Out of space allocating per module debug struct
Сообщение об ошибке утилиты TLIB
(нет памяти при выделении структуры для модулей)
Библиотекарь исчерпал память выделяя пространство для отладочной информации, связанной с конкретным объектным модулем. Устранение отладочной информации из некоторых добавляемых в библиотеку модулей может устранить проблему.
Output device is full
Сообщение об ошибке утилиты TLIB
(устройство вывода переполнено)
Устройство вывода переполнено (обычно нет места на диске).
Overlays generated and overlay manager included
Предупреждение утилиты TLINK
(сгенерированы оверлеи и включен оверлейный менеджер)
Это предупреждение выводится, если оверлеи создаются, но
идентификатор __OVRTRAP__ не определен ни в одном из объектных
модулей или компонуемых библиотек. Этот идентификатор определяется стандартной оверлейной библиотекой OVERLAY.LIB.
Overlays only supported in medium, large and huge memory models
Сообщение об ошибке этапа компиляции
(оверлеи допустимы только для моделей памяти medium, large и
huge)
Оверлеи допустимы только в программах с моделями памяти medium, large и huge).
Overloadable operator expected
Сообщение об ошибке этапа компиляции
(ожидается переопределяемая операция)
Почти все операции С++ могут быть переопределены. Единственными исключениями являются операции выбора поля (.), точка со
звездочкой (.*), двойное двоеточие (::) и условное выражение
(?:). Операции препроцессора # и ## не являются операциями языка
С или С++ и потому переопределяться не могут. Прочие знаки пунктуации, не входящие в число операций, например, точка с запятой,
разумеется, также не могут быть переопределены.
Overloaded имя_функции ambiguous in this context
Сообщение об ошибке этапа компиляции
(имя переопределяемой функции в данном контексте неоднозначно)
Единственный случай, когда имя переопределенной функции может использоваться без фактического вызова, это инициализация или
присваивание переменной или параметра соответствующего типа. В
данном случае переопределяемое имя функции используется в каком-то другом контексте.
Overloaded prefix 'operator операция' used as a postfix operator
Предупреждение этапа компиляции
(переопределенный префикс 'operator операция' используется
как постфиксная операция)
В последней спецификации С++ теперь можно переопределить
префиксную и постфиксную версию операций ++ и --. Чтобы можно было компилировать старый код, когда переопределенной является
только префиксная операция, но она используется в постфиксном
контексте, Borland C++ использует префиксную операцию и выводит
данное предупреждение.
Назад | Содержание | Вперед