When the attached source file is compiled with DMD 1.024 on Windows XP, the compiler generates the following output: Assertion failure: 'v' on line 1421 in file 'interpret.c' abnormal program termination Sorry the test case is so large; it's very, very difficult to cut down CTFE examples when it's almost impossible to tell why something is or is not evaluable at compile-time (hint, hint! :P)
Created attachment 217 [details] Causes assertion failure Compiled with the following: dmd cr_test
Brought it down to the following: struct PR { } int crRegister_ctfe() { PR pr; pr = PR(); return 0; } const i = crRegister_ctfe(); The problem appears to be assigning a struct literal to an already-declared variable. "PR pr = PR();" works fine.
Fixed dmd 1.025 and 2.009
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル