
-----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Peter Dimov
Nice bug. I think that it's triggered by the "value<" sequence in the code below:
enum { msvc71_wknd_ = ( BOOST_MPL_AUX_VALUE_WKND(T1)::value < BOOST_MPL_AUX_VALUE_WKND(T2)::value ) };
when the compiler has already seen a template class named "value" (it tries to keep track of class templates in order to not require typename).
Wild!
You can work around the problem by replacing the above with
enum { msvc71_wknd_ = ( BOOST_MPL_AUX_VALUE_WKND(T2)::value > BOOST_MPL_AUX_VALUE_WKND(T1)::value ) };
I've commited the fix to the CVS HEAD as it seems fairly harmless (he said before breaking all other compilers). ;-)
It worked for me, thanks!