Development version of Boost.Variant library now uses C++11 variadic
templates when possible.
This leads to more compact binaries, more readable compiler error messages
and faster compilation times.
However this:
* breaks ABI (now variant is declared as `template class variant`)
* breaks user code that was explicitly using BOOST_VARIANT_LIMIT_TYPES
Code that was using BOOST_VARIANT_ENUM_PARAMS and
BOOST_VARIANT_ENUM_SHIFTED_PARAMS macro *must* work correctly without any
modifications.
To disable variadic templates usage in variant define
BOOST_VARIANT_DO_NOT_USE_VARIADIC_TEMPLATES.
When all the tests will pass successfully changes will be merged to master
branch, so there is a high chance that variadic templates will be supported
by Boost 1.56.
In case of appearance of hard to fix variadic templates errors in Boost
libraries dependent on Boost.Variant - report them in this letter and I'll
help in resolving issues.
--
Best regards,
Antony Polukhin