Boost logo

Boost :

From: Robert Ramey (ramey_at_[hidden])
Date: 2021-08-22 18:14:28


A couple of questions regarding the above new boost config macro.

a) I note that this "breaks the pattern" of BOOST_NO_... which I was
expecting. I've got no complaint about this, just like being consistent
when possible.

b) My intended usage is something like:

template<typename T>
constexpr interval<T> get_interval(const & T t){
     return BOOST_IS_CONSTANT_EVALUATED_INT(t)
     ? interval<T>(t, t)
     : interval<T>(
        std::numeric_limits<T>::min(),
        std::numeric_limits<T>::max()
     );
}

is this the intended way to use this? If not, what would be the correct
usage.

c) In my Jamfiles I generally have a few tests which run conditionally
on the config macro values like this:

test-bsl-run_files test_array : A : : requires cxx11_hdr_array ;
#BOOST_NO_CXX11_HDR_ARRAY

What should I use with the above macro? Particularly confusing is the
usage of _NO_ in the macro and the exclusion of _no_ in the requires
variable. Should it be something like this.

test test_is_constant_evaluted : A : : requires
cxx20_no_is_constant_evaluated_int ; #BOOST_IS_CONSTANT_EVALUATED_INT

d) Looks like part of this already checked into config.hpp on the
develop branch. I would like to add something to my current develop to
permit me to start using this now until you get the final code checked
in. Any suggestions about the easiest way to do this? I'm ok with
inserting some code temporarily but would prefer not to have to sprinkle
it all over the place.

Robert Ramey


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