Boost logo

Boost-Build :

Subject: Re: [Boost-build] question regarding "requires cxx11_hdr_array" clause in Jamfile
From: Edward Diener (eldiener_at_[hidden])
Date: 2016-12-06 16:10:35

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

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