ゲームプログラムにXtalというスクリプトインタプリタを組み込んで使っています。
(http://code.google.com/p/xtal-language/)
インタプリタの本体(xtallib.lib)が、VC++2008 Expressでは正常にビルドできるのですが
VC++2010 Expressでは次のエラーが出てビルドできません。
\src\xtal\xtal_base.h(105): error C2661: 'xtal::visit_members' : 1 個の引数を伴うオーバーロードされた関数はありません。
C++の経験があまりないためコードの内容があまり理解できないのですが、
一応「オーバーロードされた関数」は存在するようですし、
現に同じコードでVC++2008ではエラーが出ていないのでコード自体に問題があるようには見えません。
VC++2010ではプロジェクトを変換しないといけませんが、
変換のみで他はなにも変更せずにビルドするとエラーが出ます。
何か設定などが必要なのでしょうか?
また、VC++2008とVC++2010が同時にインストールされていると、VC++2010から
VC++2008のコンパイラを使用するように設定ができるのですが、
その設定の場合は問題なくビルドできるようです。
問題のソースをアップしておきました。
http://bit.ly/9wqNAd
http://code.google.com/p/xtal-language/からSVNクライアントで落とした
ものからいらないファイルを削ってzipでまとめています。
vc9\xtallib\xtallib.vcprojがプロジェクトファイルです。
とりあえず、2010のコンパイラでエラーが出るだけなので開発するのに支障はないのですが
原因を知っておきたいと思い質問させていただきます。
