Sintomas
Suponha que aplicou o Microsoft Visual Studio 2012 actualização 4 no seu computador. Quando compilar alguns origem C ou C++ código em conjunto com uma opção do compilador de optimização como /Ox (optimização completo), /Oxt, ou /O2 (velocidade Maximizar) e a plataforma de destino o x64, poderá receber a seguinte mensagem de erro:
erro fatal C1001: Ocorreu um erro interno do compilador.
Tenha em atenção que o problema poderá ocorrer se uma matriz de uma classe ou estrutura é utilizada numa chamada de função e o primeiro campo do primeiro elemento da matriz é utilizado numa chamada de função. Consulte o seguinte exemplo:S* arr = …func1(arr, …)
func2(arr->firstField, …)
Resolução
Informações sobre correção
Existe uma correção suportada pela Microsoft. No entanto, esta correção destina-se apenas a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico.
Se a correção está disponível para transferência, existe uma secção de "Transferência de Correção Disponível" na parte superior deste artigo da Base de Dados de Conhecimento. Se esta secção não for apresentado, submeta um pedido de suporte e serviço de cliente Microsoft para obter a correcção.
Nota Caso ocorram problemas adicionais ou se for necessária a resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos de normais do suporte serão aplicados a questões de suporte adicional e problemas incluídos nesta correção específica. Para uma lista completa dos números de telefone de suporte e serviço de cliente da Microsoft ou para criar um pedido de assistência separado, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=supportNota O formulário "Transferência de correcção disponível" apresenta os idiomas nos quais a correcção está disponível. Se não visualizar o seu idioma, é porque uma correcção não está disponível para esse idioma.
Pré-requisitos
Para aplicar esta correcção, tem de ter o Microsoft Visual Studio 2012 actualização 4 instalado.
Requisito de reinício
Poderá ter de reiniciar o computador depois de instalar a correcção se os ficheiros afectados não estão a ser utilizados no momento da instalação. Recomendamos que feche todos os componentes relacionados com o Visual Studio 2010 antes de instalar a correcção.
Solução alternativa
Para contornar este problema, utilize a opção de compilador de optimização de /O1 (minimizar tamanho) ou desactivar optimização utilizando /Od (desactivar).
Estado
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".