はまった

D言語Windowsアプリケーションを作っていたわけだが、DialogBox のコールバック関数を、C++からコピペしてとりあえず使っていたのだが、どうしてもコールバック関数内で異常終了していた。1時間くらい悩んでいたわけだが、switch に default: break; をつけただけで直った…。

どうやら、例外が出ずに死んでいたようで、C++のコードから持ってくる場合はなかなかの高確率で、default が無いので、要注意。コンパイル時点で defaultを強制してくれ… on_