致命的なエラー C1001

内部コンパイラ エラー (コンパイラ ファイル file、行 number)

多くの場合、特定の式と最適化オプションの組み合わせ、または解析の問題が原因で、コンパイラはコンストラクトの正しいコードを生成できません。 一覧に表示されているコンパイラ ファイルに utc または C2 パスのセグメントが含まれている場合は、最適化エラーである可能性があります。 ファイルに cxxfe または c1xx パス セグメントがある場合、またはファイルが msc1.cpp の場合は、パーサー エラーである可能性があります。 ファイル名が cl.exe である場合、他の情報は利用できません。

多くの場合、1 つ以上の最適化オプションを削除することで、最適化の問題を修正できます。 障害が発生しているオプションを特定するには、オプションを 1 つずつ削除し、エラー メッセージが消えるまで再コンパイルします。 最も一般的に使用されるオプションは、/Og (グローバルの最適化) および /Oi (組み込み関数の生成) です。 使用する最適化オプションを決定したら、optimize プラグマを使用してエラーが発生する関数の周囲でそれを無効にし、モジュールの残りの部分でオプションを引き続き使用できます。 最適化オプションの詳細については、「最適化のベスト プラクティス」を参照してください。

最適化がエラーの原因ではない場合は、エラーが報告された行、またはその行を囲む数行のコードを書き直してみてください。 前処理後にコンパイラがコードを認識する方法でコードを表示するには、/P (ファイルの前処理) オプションを使用できます。

エラーの原因を特定する方法と、内部コンパイラ エラーを Microsoft に報告する方法の詳細については、「Visual C++ ツールセットの問題を報告する方法」を参照してください。