Ошибка средств компоновщика LNK1179
недопустимый или поврежденный файл: дубликат COMDAT "имя_файла"
Модуль объекта содержит два или более COMDAT с одинаковым именем.
Эта ошибка может быть вызвана с помощью /H, что ограничивает длину внешних имен и /Gy, которые пакеты выполняются в COMDATs.
Пример
В следующем коде function1
и function2
идентичны в первых восьми символах. Компиляция с помощью /Gy и /H8 приводит к ошибке ссылки.
void function1(void);
void function2(void);
int main() {
function1();
function2();
}
void function1(void) {}
void function2(void) {}