できた
Swig(with D) が吐き出すラップ関数の定義は
#define DllExport __declspec( dllexport ) DllExport int new_Test() {
だが、
DllExport int __stdcall new_Test() {
にしたらできた。
#できた!と思ったら実行終了した瞬間シェルが終了してしまったが…。dmdだけで作ってるときもたまに起こる現象。なぜ
…うーん、デストラクタ(delete_*) を読んだら Access Violation が違った、デストラクタは呼べている。
void main() { void* fooclass = new_Foo(); delete_Foo(fooclass); stdout.writeLine("here"); }
here と表示されたあと AV か…。