diff --git a/include/boost/python/object/forward.hpp b/include/boost/python/object/forward.hpp index 17760608..bf21aa2a 100644 --- a/include/boost/python/object/forward.hpp +++ b/include/boost/python/object/forward.hpp @@ -11,6 +11,11 @@ # include # include # include +# if BOOST_WORKAROUND(BOOST_MSVC, == 1200) +# include +# include +# include +# endif namespace boost { namespace python { namespace objects { @@ -34,7 +39,17 @@ struct reference_to_value template struct forward : mpl::if_< - is_scalar +# if BOOST_WORKAROUND(BOOST_MSVC, == 1200) + // vc6 chokes on unforwarding enums nested in classes + mpl::and_< + is_scalar + , mpl::not_< + is_enum + > + > +# else + is_scalar +# endif , T , reference_to_value >