Hello,
It appears that since 1.47 Boost.Variant has a bug that can be
reproduced as follows (MSVC10, Debug mode):
#include
::type vec_type; typedef boost::make_variant_over
::type var_type;
int main() { var_type v; v = struct21(); } The last line generates assertion in variant_impl.hpp, line 264, visitation_impl() function: "Boost.Variant internal error: 'which' out of range." According to the release notes, variant wasn't changed in 1.47, but I recalled teh following discussion: http://boost.2283326.n4.nabble.com/large-variant-performance-compared-50-ele... It seems that the above issue is somehow related to this change. Igor'.