Erro fatal C1128
o número de seções excedeu o limite de formato de arquivo do objeto: compile com /bigobj
Um arquivo .obj excedeu o número de seções permitidas, uma limitação de formato de arquivo-objeto COFF.
Atingir esta limitação de seção pode ser o resultado do uso de /Gy e de um build de depuração; o /Gy faz com que as funções entrem em suas próprias seções COMDAT. Em um build de depuração, há uma seção de informações de depuração para cada função COMDAT.
O C1128 também pode ser causado quando há muitas funções embutidas.
Para corrigir esse erro, divida o arquivo de origem em vários arquivos de código-fonte, compile sem /Gy ou compile com /bigobj (aumente o número de seções no arquivo .obj). Se você não compilar com /Gy, precisará especificar as otimizações individualmente, já que tanto /O2 quanto /O1 implicam /Gy.
Se possível, compile sem depurar informações.
Talvez você também precise ter instanciações específicas de modelos em arquivos de código-fonte separados, em vez o compilador emiti-los.
Ao portar código, C1128 provavelmente aparecerá primeiro ao usar o compilador x64, e muito mais tarde com o compilador x86. O X64 terá pelo menos 4 seções associadas a cada função compilada /Gy ou embutida a partir de modelos ou classe embutida: código, pdata e informações de depuração, e possivelmente xdata. X86 não terá o pdata.