分享方式:


嚴重錯誤 C1001

內部編譯器錯誤(編譯器檔案檔案 ,行

編譯器無法為建構產生正確的程式碼,通常是因為特定運算式和優化選項的組合,或剖析時發生問題。 如果列出的編譯器檔案具有 utc 或 C2 路徑區段,則可能是優化錯誤。 如果檔案有 cxxfe 或 c1xx 路徑區段,或為 msc1.cpp,則可能是剖析器錯誤。 如果名為 的檔案是 cl.exe,則沒有其他可用資訊。

您可以移除一或多個優化選項,以修正優化問題。 若要判斷哪個選項發生錯誤,請一次移除一個選項,然後重新編譯,直到錯誤訊息消失為止。 最常負責的選項是 /Og (全域優化) /Oi (產生內建函式)。 判斷哪一個優化選項負責之後,您可以使用優化 pragma,在發生 錯誤的函式周圍停用它,然後繼續對模組的其餘部分使用 選項。 如需優化選項的詳細資訊,請參閱 優化最佳做法

如果優化不負責錯誤,請嘗試重寫報告錯誤的行,或該行周圍的數行程式碼。 若要查看編譯器在前置處理之後看到程式碼的方式,您可以使用 /P (前置處理至檔案) 選項。

如需如何隔離錯誤來源以及如何向 Microsoft 報告內部編譯器錯誤的詳細資訊,請參閱 如何回報 Visual C++ 工具組 的問題。