reallocエミュレート

http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/gslib/GSLib/SandBox/Lua/Lua.cpp?rev=1.1&content-type=text/vnd.viewcvs-markup

の冒頭にある、my_realloc, my_free がそれにあたります。malloc を使って realloc を実装するにはどうするのか調べるために、作ってみました。コメントにある通り、VC++.net のヘルプを見て作ってみました。

あと、lua 本体ですが、面倒だったので本体全部をプロジェクトにぶっこんでしまいました。
先ほどの my_realloc, my_free を lua に呼び出させるには、

http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/gslib/GSLib/SandBox/Lua/lua/lmem.c?rev=1.1&content-type=text/vnd.viewcvs-markup

にあるように、l_realloc, l_free を強引に書き換えてしまえば動くみたいです。#ifndef l_free とあるので、強引な書き換えなしにもっとエレガントにうまく行きそうですが、面倒だったので、これでやめておきます。

これで、lua のメモリ確保は制御下におくことができました。