Boost logo

Boost :

From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2019-07-24 09:39:26


On 7/24/19 12:28 PM, Niall Douglas via Boost wrote:
> On 18/07/2019 23:43, Michael Caisse via Boost wrote:
>> Please download the beta, give it a try, and report any problems you
>> encounter.
>
> Testing Outcome on MSVC, I get:
>
> C:\Users\ned\Downloads\boost_1_71_0_b1_rc1\boost_1_71_0\libs\outcome\test>..\..\..\b2
> toolset=msvc-14.0
> Performing configuration checks
>
> - default address-model : 32-bit
> - default architecture : x86
> - !BOOST_COMP_GNUC : no
> - BOOST_COMP_GNUC >= 6.0 : no
> - !BOOST_COMP_CLANG : no
> - BOOST_COMP_CLANG >= 4.0 : no
> - Boost.Config Feature Check: cxx14_variable_templates : yes
> - Boost.Config Feature Check: cxx14_constexpr : yes
> - !BOOST_COMP_GNUC : no
> - BOOST_COMP_GNUC >= 6.0 : no
> - !BOOST_COMP_CLANG : no
> - BOOST_COMP_CLANG >= 4.0 : no
> - Boost.Config Feature Check: cxx14_variable_templates : yes
> - Boost.Config Feature Check: cxx14_constexpr : yes
> ...found 1 target...
>
>
> Outcome's Jamfile requires:
>
> project
> : requirements
> [ requires cxx14_variable_templates cxx14_constexpr ]
> [ predef-require "!BOOST_COMP_GNUC" or "BOOST_COMP_GNUC >= 6.0" ]
> [ predef-require "!BOOST_COMP_CLANG" or "BOOST_COMP_CLANG >= 4.0" ]
> <define>BOOST_TEST_MODULE=Outcome
> <library>../../test/build//boost_unit_test_framework
> ;
>
> So, the fact that !BOOST_COMP_GNUC and !BOOST_COMP_CLANG are false on
> MSVC is a problem, the tests won't run on MSVC.
>
> Yet Outcome works fine for the developer build, as evidenced by the
> regression matrix. So this is a problem affecting this release build ONLY.
>
> Thoughts?

I've not used predef-require, but you can't compare versions in dotted
notation in C++ preprocessor. Boost.Predef defines version numbers with
BOOST_VERSION_NUMBER, so you would compare like this:

   BOOST_COMP_GNUC >= BOOST_VERSION_NUMBER(6, 0, 0)

Also, note that 6.0 is a pre-release version of gcc 6.x. The first
release version is 6.1.

That said, given that the Boost.Build output above is from MSVC, I'm not
sure why both !BOOST_COMP_GNUC and !BOOST_COMP_CLANG are "no".


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