On Thu, Dec 29, 2005 11:45 am, John Maddock wrote:
Unfortunately, uncommenting that check solved the problem but partially. As my next testes, I tried to use Boost.Any and I see there are compilere related checks still present. When I include the any.hpp #include
and I'm getting this error message (I have to confess that it's hard for me to decipher it :-)) c:\boost\include\boost-1_33_1\boost\mpl\aux_\yes_no.hpp(42) : error C2265: '<Unknown>' : reference to a zero-sized array is illegal c:\boost\include\boost-1_33_1\boost\mpl\aux_\yes_no.hpp(47) : see reference to class template instantiation 'boost::mpl::aux::weighted_tag<n>' being compiled c:\boost\include\boost-1_33_1\boost\type_traits\broken_compiler_spec.hpp(23)
fatal error C1506: unrecoverable block scoping error
The message above relates to the following check of compiler:
#if !BOOST_WORKAROUND(BOOST_MSVC, == 1200) typedef char (&type)[n]; #else
This is a known issue: eVC++ bumps the version number up to 1201 or 1202 so a lot of version checks / workarounds don't work anymore.
A large patch for this was added to mainline cvs, but it didn't make it in time for 1.33.1 (too big a patch)
I understand it now. Would you recommend to use CVS HEAD or I better wait until the patch will be included in future release? Cheers -- Mateusz Łoskot http://mateusz.loskot.net