FIX: Eroare "Fatal error C1001" atunci când utilizați opțiunea /Oxt, /Ox sau /O2 și platforma target x64 în Visual Studio 2012 actualizare 4

Simptome

Să presupunem că ați aplicat Microsoft Visual Studio 2012 4 de actualizare pe computer. Când se compilează unele sursă C sau C++ cod împreună cu o opțiune de compilator de optimizare, cum ar fi /Ox (optimizare complet), /Oxt, sau /O2 (maximiza viteza) și platforma ţintă x64, este posibil să primiți următorul mesaj de eroare:

eroare fatală C1001: s-a produs o eroare internă în compilator.


Notă problema poate apărea dacă o matrice struct sau class este utilizat într-o funcție de apel și domeniul primul primul element din array este utilizat într-o funcție de apel. Consultați următorul exemplu:S* arr = …func1(arr, …)
func2(arr->firstField, …)

Rezolvare

Informații despre remedierea rapidă

O remediere rapidă compatibilă este disponibilă de la Microsoft. Cu toate acestea, această remediere rapidă este destinată pentru a corecta doar problema descrisă în acest articol. Aplicați această remediere rapidă numai pentru sistemele care întâmpină această problemă anume.

Dacă remedierea rapidă este disponibilă pentru descărcare, există o secțiune "Descărcare disponibilă pentru remediere rapidă" în partea de sus a acestui articol din baza de cunoștințe. Dacă nu apare această secţiune, trimite o solicitare de la serviciul pentru clienți Microsoft de asistență pentru a obţine remedierea rapidă.

Notă Dacă se produc probleme suplimentare sau este necesară depanarea, poate fi necesar să creați o solicitare de asistenţă separată. Costurile de obicei pentru suport se vor aplica pentru sprijin suplimentar, întrebări și probleme care nu sunt specifice pentru această remediere rapidă . Pentru o listă completă cu numerele de telefon ale clienților servicii și asistență Microsoft sau pentru a crea o solicitare de asistenţă separată, vizitați următorul site Web Microsoft:

http://support.microsoft.com/contactus/?ws=supportNotă Formularul "Descărcare disponibilă pentru remediere rapidă" afişează limbile pentru care este disponibilă remedierea rapidă. Dacă nu vedeți limba dvs., înseamnă că o remediere rapidă nu este disponibilă pentru respectiva limbă.

Cerințe preliminare

Pentru a aplica această remediere rapidă, trebuie să aveți Microsoft Visual Studio 2012 actualizare 4 instalat.

Cerinţă de repornire

Trebuie să reporniți computerul după ce instalați remedierea rapidă dacă fișierele afectate nu sunt utilizate în momentul instalării. Vă recomandăm să închideţi toate componentele legate de Visual Studio 2010 înainte de a instala remedierea rapidă.

Soluție

Pentru a rezolva această problemă, utilizați opțiunea de compilator de optimizare /O1 (minimiza dimensiunea) sau să dezactivați optimizare utilizând /Od (Dezactivare).

Stare

Microsoft a confirmat că aceasta este o problemă cu produsele Microsoft enumerate în secţiunea „Se aplică la".

Aveți nevoie de ajutor suplimentar?

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă la Microsoft Insider

V-a fost de ajutor această informație?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×