Четвертый BORLAND С++ и его окружение

       

- T -


Table limit exceeded


Сообщение об ошибке утилиты TLINK

(превышен размер таблицы)

Переполнена одна из внутренних таблиц компоновщика. Обычно

это означает, что компонуемые программы превышают возможности

компоновщика в части общедоступных идентификаторов, внешних идентификаторов, или определений логических сегментов. Каждый экземпляр сегмента в объектном файле считается за логический сегмент.

Если этот сегмент определяется в двух объектных файлах, то результатом будет два логических сегментов.

Target index of FIXUP is 0 in module модуль


Сообщение об ошибке утилиты TLINK

(целевой индекс FIXUP в модуле равен 0)

Ошибка транслятора.

Template argument must be a constant expression


Сообщение об ошибке этапа компиляции



(аргумент шаблона должен быть выражением-константой)

Нетипизированный фактический аргумент шаблона класса должен

быть выражением-константой (соответствующего типа). Это включает

в себя целочисленные выражения-константы, адреса объектов или

функций с внешней компоновкой элементов.

Template class nesting too deep: 'class'


Сообщение об ошибке этапа компиляции

(слишком глубокая вложенность шаблона класса)

Компилятор накладывает определенные ограничения на уровень

вложенности шаблонов классов, который можно обойти обычно только

через рекурсивную зависимость шаблонов класса. Когда предел такой

вложенности превышен, компилятор выводит данное сообщение об

ошибке для всех вложенных шаблонов классов, что обычно позволяет

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

ошибкой Out of memory (Нет памяти).

Например, рассмотрим следующий набор шаблонов классов:

template<class T> class A

{

friend class B<T*>;

};

template<class T> class B

{

friend class A<T*>;

};

A<int> x;

Что приведет к выводу следующих сообщений:


Error: Template class nesting too deep: 'B<int******>'


Error: Template class nesting too deep: 'B<int****>'


Error: Template class nesting too deep: 'B<int***>'


Error: Template class nesting too deep: 'B<int**>'



Error: Template class nesting too deep: 'B<int*>'

Error: Template class nesting too deep: 'B<int>'

Fatal: Out of memory

Template function argument аргумент not used in argument types


Сообщение об ошибке этапа компиляции

(аргумент шаблона функции не используется в типе аргумента)

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

В списке аргументов шаблона функции должны использоваться все ее

формальные аргументы. В противном случае невозможно сгенерировать

экземпляр шаблона функции на основе типов фактических аргументов.

Template functions may only have type-arguments


Сообщение об ошибке этапа компиляции

(в шаблонах функций могут быть только аргументы-типы)

В шаблоне функции описывается аргумент, отличный от типа. В

шаблоне функции это не допускается, так как нет способа задать

значение при ее вызове.

Templates can only be declared at file level


Сообщение об ошибке этапа компиляции

(шаблоны могут описываться только на уровне файла)

Объявление в описании шаблона должно задавать тип класса или

функцию.

Templates must be clases or functions


Сообщение об ошибке этапа компиляции

(шаблоны должны быть классами или функциями)

Описание шаблона должны быть классом или функцией.

Temporary used to initialize идентификатор



Предупреждение этапа компиляции

(Для инициализации идентификатора использовалась временная

переменная)

См. следующее сообщение.

Temporary used for parameter номер in call to функция



Предупреждение этапа компиляции

(При вызове функции для параметра номер использовалась временная переменная) См. следующее сообщение.

Temporary used for parameter параметр in call to функция



Предупреждение этапа компиляции

(При вызове функции для параметра параметр использовалась временная переменная) См. следующее сообщение.

Temporary used for parameter номер



Предупреждение этапа компиляции (Для параметра номер использовалась временная переменная) См. следующее сообщение.

Temporary used for parameter параметр

Предупреждение этапа компиляции (Для параметра параметр использовалась временная переменная)



В С++ переменной или параметру типа ссылки должна присваиваться ссылка на объект этого же типа. Если типы не совпадают,

фактическое значение присваивается временной переменной нужного

типа, а адрес этой временной переменной присваивается переменной

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

переменная или параметр типа ссылки относится не к тому, что вы

ожидали, а к временной переменной. В других ситуациях это предупреждение не выдается.

Например, функция f требует ссылку на int, а c имеет тип char:

f (int&);

char c;

f (c);

Вместо вызова f с адресом c компилятор генерирует код, эквивалентный следующему исходному коду С++:

int X = c, f (X);

Terminated by user


Сообщение об ошибке утилиты TLINK

(прервано пользователем)

Вы прервали работу компоновщика.

The '...' handler must be last


Сообщение об ошибке этапа компиляции

(обработчик '...' должен быть последним)

Если в списке обработчиков присутствует '...', то это должен

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

The combinations '+*' or '*+' not allowed


Сообщение об ошибке утилиты TLIB

(комбинации '+*' или '*+' не допускаются)

Не допускается добавлять и извлекать модуль из библиотеки за

одно действие. Возможно требуется действие '+-'.

The constructor конструктор is not allowed


Сообщение об ошибке этапа компиляции

(конструктор недопустим)

Конструкторы вида X:: (X) недопустимы. Правильный способ записи конструктора: X:: (const X&)

'this' can only be used within a member function

Сообщение об ошибке этапа компиляции

('this' можно использовать только в функции-элементе)

В С++ this - это зарезервированное слово, которое можно использовать только в пределах функций-элементов класса.

This initialization is only partly bracketed



Предупреждение этапа компиляции

(данная инициализация заключена в скобки только частично)

При инициализации структуры скобки могут использоваться,

чтобы отметить инициализацию каждого элемента структуры. Если сам

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



компилятор выводит данное предупреждение.

Too few arguments in template class name шаблон


Сообщение об ошибке этапа компиляции

(слишком мало аргументов в шаблоне класса)

В имени шаблона класса пропущены фактические значения некоторых формальных параметров.

Too few parameters in call


Сообщение об ошибке этапа компиляции

(слишком мало параметров в вызове)

Вызов функции с прототипом (через указатель) имеет слишком

мало аргументов. Прототипы требуют точного задания всех параметров.

Too few parameters in call to функция


Сообщение об ошибке этапа компиляции

(слишком мало параметров в вызове функции)

Вызов названной функции (объявленной с использованием прототипа) имеет слишком мало аргументов.

Too many commas on command-line


Сообщение об ошибке этапа компиляции

(слишком много запятых в командной строке)

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

Too many decimal points


Сообщение об ошибке этапа компиляции

(слишком много десятичных точек)

Компилятор встретил константу с плавающей точкой, в которой

находится более одной десятичной точки.

Too many default cases


Сообщение об ошибке этапа компиляции

(слишком много операторов default)

Компилятор встретил более одного оператора default в одной

конструкции switch.

Too many error or warning messages


Сообщение об ошибке этапа компиляции

(слишком много сообщений об ошибке или предупреждений)

Компилятор может зарегистрировать до 255 ошибок или предупреждений, а потом остановит свою работу.

Too many error or warning messages


Сообщение об ошибке утилиты TLINK

(слишком много ошибок или предупреждений)

Число выводимых компилятором сообщений ограничивается определенным пределом. Данное сообщение показывает, что компоновщик

достиг этого предела.

Too many errors


Сообщение об ошибке утилиты TLINK

(слишком много ошибок)

Компилятор обнаружил больше ошибок, чем допускается параметром -E.

Too many exponents


Сообщение об ошибке этапа компиляции

(слишком много показателей степени)

Компилятор встретил в константе с плавающей точкой более одного показателя степени.



Too many initializers


Сообщение об ошибке этапа компиляции

(слишком много инициализаторов)

Компилятор встретил больше инициализаторов, чем это допускается инициализируемым объявлением.

Too many LNAMEs


Сообщение об ошибке утилиты TLINK

(слишком много LNAME)

В одном объектном модуле LNAME не может иметь более 256 LNAME.

Too many rules for target цель


Сообщение об ошибке утилиты MAKE

(слишком много правил для цели)

При построении цели MAKE не может определить, какому правилу

следовать.

Too many storage classes in declaration


Сообщение об ошибке этапа компиляции

(в объявлении слишком много классов памяти)

В объявлении должно указываться не больше одного класса памяти.

Too many suffixes in .SUFFIXES list


Сообщение об ошибке утилиты MAKE

(слишком много суффиксов в списке .SUFFIXES)

В списке суффиксов вы превысили максимально допустимое ограничение - 255.

Too many types in declaration


Сообщение об ошибке этапа компиляции

(в объявлении слишком много типов)

Объявление может содержать не более одного из следующих базовых типов: char, int, float, double, struct, union, enum или

typedef-имя.

Too much global data defined in file


Сообщение об ошибке этапа компиляции

(в файле объявлено слишком много глобальных данных)

Сумма объявленных глобальных данных превысила по размеру

64К. Проверьте объявления массивов, которые могут быть причиной

выхода за пределы памяти. Либо реорганизуйте программу, либо, если все объявления вам нужны, используйте переменные far.

Trying to derive a far class from a huge base база


Сообщение об ошибке этапа компиляции

(попытка объявить класс far, производный от базового класса

huge)

Если класс объявлен (или имеет по умолчанию) тип huge, то

все классы, производные от него, также должны быть huge.

Trying to derive a far class from a near base база


Сообщение об ошибке этапа компиляции

(Попытка объявить класс far, производный от базового класса

near). Если класс объявлен (или имеет по умолчанию) тип near, то

все классы, производные от него, также должны быть near.



Trying to derive a near class from a far base база


Сообщение об ошибке этапа компиляции

( попытка объявить производный класс near от базового класса

far). Если класс объявлен (или имеет по умолчанию) тип far, то все

классы, производные от него, также должны быть far.

Trying to derive a huge class from a near base база


Сообщение об ошибке этапа компиляции

(попытка объявить производный класс huge от базового класса

near). Если класс объявлен (или имеет по умолчанию) тип near, то

все классы, производные от него, также должны быть near.

Trying to derive a near class from the huge base база


Сообщение об ошибке этапа компиляции: (попытка объявить производный класс near от базового класса

huge). Если класс объявлен (или имеет по умолчанию) тип huge, то

все классы, производные от него, также должны быть huge.

Two consecutive dots


Сообщение об ошибке этапа компиляции

(две последовательно расположенные точки)

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

(.), то две последовательные точки в программе на языке Си недопустимы.

Two operands must evaluate to the same type


Сообщение об ошибке этапа компиляции

(два операнда должны давать при вычислении один и тот же

тип)

Типы выражений по обеим сторонам двоеточия в условной операции (?:) должны быть одинаковыми, за исключением тех, что позволяют взаимные преобразования типа - char в int, float в double

или void* в конкретный указатель. В данном выражении с обеих сторон операции содержатся различные, не преобразуемые автоматически

типы. Это может быть либо ошибкой, либо вам нужно просто выполнить приведение типов участвующих в выражении операндов.

Type тип is not a defined class with virtual functions


Сообщение об ошибке этапа компиляции

(данный тип не является определенным типом для виртуальных

функций)

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

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

Примечание относительно сообщений Type mismatch: При компиляции программ в С++ перед следующими сообщениями всегда выводится другое сообщение, поясняющее точную причину несоответствия типов. Обычно это "Cannot convert 'тип_1' to 'тип_2'. Но могут быть



и другие причины.

Type mismatch in default argument value


Сообщение об ошибке этапа компиляции

(несоответствие типа в используемом по умолчанию значении параметра). См. следующее сообщение.

Type mismatch in default value for parameter параметр


Сообщение об ошибке этапа компиляции

(несоответствие типа в используемом по умолчанию значении

параметра параметр)

Используемое по умолчанию значение параметра не может быть

преобразовано к типу параметра. Первое сообщение выводится, когда

для параметра не задано имя.

Type mismatch in parameter номер


Сообщение об ошибке этапа компиляции

(несоответствие типа в параметре номер)

Вызванная через указатель функция была объявлена с прототипом; данный параметр с указанным номером (отсчитывая слева направо от 1) не может преобразоваться к объявленному типу параметра.

Type mismatch in parameter параметр


Сообщение об ошибке этапа компиляции

(несоответствие типа в параметре параметр)

Вызванная через указатель функция была объявлена с прототипом; указанный же параметр не может быть преобразован к объявленному типу параметра. См. выше сообщения о несоответствии типов.

Type mismatch in parameter номер in call to функция


Сообщение об ошибке этапа компиляции

(несоответствие типа параметра номер в вызове функции)

В вашем исходном файле объявлена указанная функция с прототипом, а данный параметр с указанным номером (отсчитывая слева направо от 1) не может быть преобразован к объявленному типу параметра.

Type mismatch in parameter параметр in call to функция


Сообщение об ошибке этапа компиляции

(несоответствие типа параметра в вызове функции функция)

В вашем исходном файле объявлена указанная функция с прототипом, а указанный параметр нельзя преобразовать к объявленному

типу параметра. См. сообщение

.

Type mismatch in parameter параметр in template class name шаблон

Сообщение об ошибке этапа компиляции

(несоответствие типа в параметре в имени шаблона класса). См. следующее сообщение.

Type mismatch in parameter число in template class name шаблон




Сообщение об ошибке этапа компиляции

(несоответствие типа в параметре в имени шаблона класса)

Фактической значение аргумента шаблона для данного параметра

не соответствует в точности типу формального параметра шаблона.

См. выше сообщения о несоответствии типов.

Type mismatch in redeclaration of идентификатор


Сообщение об ошибке этапа компиляции

(несоответствие типа в повторном описании идентификатора)

В вашем исходном файле переменная переописывается с другим

типом, нежели тот, с которым она была объявлена первоначально.

Это может произойти, если функция вызывается и затем объявляется

с типом возврата, отличным от целочисленного. В этом случае вы

должны объявить функцию до первого к ней обращения.

Type name expected


Сообщение об ошибке этапа компиляции

(требуется имя типа)

Произошла одна из следующих ошибок:

  • в описании файлового уровня или поля структуры не задан

    класс памяти и имя типа;


  • в описании typedef не указан тип для имени;


  • в описании деструктора класса С++ имя деструктора не является именем типа (это должно быть то же имя, что и имя

    класса);


  • при указании имени базового класса С++ имя не является

    именем базового класса.


  • Type qualifier идентификатор must be a struct or class name


    Сообщение об ошибке этапа компиляции

    (квалификатор идентификатор типа должен быть структурой или

    именем класса)

    Квалификатор С++ в конструкторе квалификатор::идентификатор

    не является именем структуры или класса.


    Содержание раздела