Boost logo

Boost-Build :

Subject: Re: [Boost-build] question regarding "requires cxx11_hdr_array" clause in Jamfile
From: Robert Ramey (ramey_at_[hidden])
Date: 2016-12-09 12:22:50

On 12/6/16 1:10 PM, Edward Diener wrote:
> On 12/6/2016 3:31 PM, Robert Ramey wrote:
>> On 12/6/16 11:22 AM, Edward Diener wrote:
>>>> To this end, boost/serialization/array.hpp contains the following:
>>>> #ifndef BOOST_NO_CXX11_HDR_ARRAY
>>>> #include <array>
>>>> #include <boost/serialization/nvp.hpp>
>>> What do you mean by "the code in <array> is not included" ? Are you
>>> referring to your own serialization array header or are you referring to
>>> the C++ standard array header ?
>> I mean that the above #ifndef inhibits the inclusion of <array>
>> This shouldn't be a problem as the test itself shouldn't be run since
>> the jamfile includes:
>> [ test-bsl-run_files test_array : A : : [ requires cxx11_hdr_array
> As John Maddock mentioned it seems as if the config test done when
> 'requires cxx11_hdr_array' is encountered is returning an opposite
> result from whether the macro BOOST_NO_CXX11_HDR_ARRAY
> is defined or not when including config.hpp, for your particular
> compilation environment. This has nothing to do with Boost Build versus
> Boost config but rather has to do with Boost config entirely.
> I think if you can run the Boost config config_info.cpp test it will
> tell you if Boost config is defining BOOST_NO_CXX11_HDR_ARRAY normally
> for the environment you are testing. If this is then different from what
> 'requires cxx11_hdr_array' is generating then it is a Boost config
> problem in testing for BOOST_NO_CXX11_HDR_ARRAY for your compiler
> environment.

Turns out that this problem is showing up in the test matrix of the
current develop branch.

First the test_array tests fail in the serialization library test matrix
for the platforms clang-darwin-4.2.1 and darwin-4.2.1 .

OK no surprise there.

Moving to the tests for config.hpp. for
the same platforms.

config-info shows BOOST_NO_CXX11_HDR_ARRAY as being defined. Again this
is what I'm seeing with test_array. BUT - it seems that the test
config_build_check is not run in this configuration. This doesn't seem
right. Perhaps this is helpful in finding the issue.

I did look though config.hpp tests but couldn't figure out where the
problem might be.

Robert Ramey

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at