Fixed #9238: BOOST_VARIANT_USE_VARIADIC_TEMPLATES support
use BOOST_VARIANT_DO_NOT_USE_VARIADIC_TEMPLATES to select variadic macro support code
More work for supporting new boost::variant interface