Condividi tramite


Errore irreversibile C1001

INTERNAL COMPILER ERROR(file del compilatore, numero di riga)

Il compilatore non può generare codice corretto per un costrutto, spesso a causa della combinazione di un'espressione specifica e di un'opzione di ottimizzazione o di un problema nell'analisi. Se il file del compilatore elencato ha un segmento di percorso utc o C2, probabilmente si tratta di un errore di ottimizzazione. Se il file ha un segmento di percorso cxxfe o c1xx o è msc1.cpp, è probabilmente un errore del parser. Se il file denominato è cl.exe, non sono disponibili altre informazioni.

È spesso possibile risolvere un problema di ottimizzazione rimuovendo una o più opzioni di ottimizzazione. Per determinare quale opzione è in errore, rimuovere le opzioni una alla volta e ricompilare fino a quando il messaggio di errore non viene rimosso. Le opzioni più comunemente responsabili sono /Og (ottimizzazioni globali) e /Oi (Genera funzioni intrinseche). Dopo aver determinato quale opzione di ottimizzazione è responsabile, è possibile disabilitarla intorno alla funzione in cui si verifica l'errore usando il pragma di ottimizzazione e continuare a usare l'opzione per il resto del modulo. Per altre informazioni sulle opzioni di ottimizzazione, vedere Procedure consigliate per l'ottimizzazione.

Se le ottimizzazioni non sono responsabili dell'errore, provare a riscrivere la riga in cui viene segnalato l'errore o diverse righe di codice che circondano tale riga. Per visualizzare il codice nel modo in cui il compilatore lo vede dopo la pre-elaborazione, è possibile usare l'opzione /P (Preprocess to a file).

Per altre informazioni su come isolare l'origine dell'errore e su come segnalare un errore interno del compilatore a Microsoft, vedere Come segnalare un problema con il set di strumenti di Visual C++.