Internal Compile Error
Unityで起きたエラーですが、直接の原因がUnityかは不明です。
他の環境(といってもOSのバージョンが違うのだけど)でビルド通ってるプロジェクトなのに、自分のMacだとエラーとなって原因調査しました。
Software | Version |
---|---|
Mac OS X | 10.9.1 |
Unity | 3.5.7 |
コンソールにはInternal Compile Errorと出てずらずら警告やらが並びます。このエラーは単純にコンパイルエラーとのことで、原因は様々だとか。自分の場合は、Open Editor Logから下記のようなエラーが見つかりました。
Unhandled Exception: System.StackOverflowException: The requested operation caused a stack overflow. at Mono.CSharp.ResolveContext.WithFlowAnalysis (Boolean do_flow_analysis, Boolean omit_struct_analysis) [0x00000] in <filename unknown>:0 at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec, ResolveFlags flags) [0x00000] in <filename unknown>:0 at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0 省略
Javaの考え的には、Monoが使うメモリ空間を指定してあげたらいいんだろうと思ったけど、どうすりゃいいねん(´・ω・`)
じみーちに調べた結果、あるプログラムファイルで長めの文字列を結合したファイルでコンパイルがこけてたことがわかり解決できました。
意味もない例
string longLongStr = "とっても" + "ながい" + "もじれつ…。。。";
一応書き残しておきます。