
Hello, I wanted to use boost::variant, so I got the Boost libraries from CVS. While developing a small test program I discovered an issue in the MPL header file apply.hpp that prevented successful compilation on MSVC 7.1. In particular, starting on line 245 in boost/mpl/apply.hpp it says // ISO98 C++, with minor concession to vc7 template< typename F, AUX_APPLY_N_PARAMS(i, typename T) > struct BOOST_PP_CAT(apply,i) { // Metafunction forwarding confuses vc7 typedef typename F::template apply< AUX_APPLY_N_PARAMS(i, T) >::type BOOST_MPL_AUX_LAMBDA_SUPPORT( BOOST_PP_INC(i) , BOOST_PP_CAT(apply,i) , (F, AUX_APPLY_N_PARAMS(i,T)) ) }; The first typedef in that struct should be // Metafunction forwarding confuses vc7 typedef typename F::template apply< AUX_APPLY_N_PARAMS(i, T) >::type type; Regards, Martin ---------------------------------------------------------------- Visit my pages on the Web: XEngine Project Page: http://xengine.sourceforge.net Private homepage: http://members.liwest.at/GroovingArts