On 16.10.2015 12:30, Raffi Enficiaud wrote:
Le 16/10/15 11:22, Andrey Semashev a écrit :
Hi,
For some reason Boost.Test defines the BOOST_PP_VARIADICS macro, which, I believe, is a macro defined by Boost.Preprocessor. This results in build errors as can be seen here:
http://www.boost.org/development/tests/develop/developer/output/teeks99-01b-...
I think Boost.Test should not define BOOST_PP_VARIADICS and rely on Boost.PP for that. In any case, BOOST_PP* is not the namespace of Boost.Test.
Refers to this thread: - http://lists.boost.org/boost-build/2015/10/28334.php
And those two in particular: - http://lists.boost.org/boost-build/2015/10/28344.php - http://lists.boost.org/boost-build/2015/10/28351.php (this is what is causing the errors apparently).
So I will guard the enforcement of BOOST_PP_VARIADICS=1 in case this one is already defined.
You can't guarantee the order of inclusion of Boost.Test and Boost.PP headers. So, if I understand it right, by adding that check you essentially make the interface inconsistent. If you have the non-variadic implementation anyway, why do you want this inconsistency?