Boost logo

Boost :

Subject: Re: [boost] [test] BOOST_PP_VARIADICS is defined twice
From: Raffi Enficiaud (raffi.enficiaud_at_[hidden])
Date: 2015-10-16 05:30:59


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-Ubuntu14-04-64-boost-bin-v2-libs-log-test-attr_attribute_value_impl-test-clang-linux-3-6-debug-threading-multi.html
>
>
> 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.

Boost.Test can define BOOST_PP_VARIADICS=1 in case the compiler supports
cxx11_variadic_macros (which is not cxx11 specific, see
http://lists.boost.org/boost-build/2015/10/28344.php).
It is right now guarded for clang and gcc >= 4.8, which are the
environments I have for our internal tests.

Thanks for the feedback.

Raffi


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk