On 8/4/21 9:26 PM, John Maddock via Boost wrote:
On 04/08/2021 19:05, Robert Ramey via Boost wrote:
On 8/3/21 4:29 PM, Robert Ramey via Boost wrote:
Any chance of seeing a feature macro for HAS_IS_CONSTANT_EVALUATED appearing in Boost.Config any time soon?
I guess it's not really necessary as std::is_constant_evaluated is slated for C++20. And it includes a corresponding feature macro so it shouldn't be necessary for boost.config to include this functionality. I might have preferred the "unified" model of using boost.config for all these but I guess the easiest is just to role with the times.
Actually there is a roll for Boost.Config here: std::is_constant_evaluated is valid in C++20 mode only, as is it's feature detection macro. However, the underlying compiler intrinsic works just fine all the way back to C++11 mode as long as the compiler has implemented it.
Multiprecision has the logic for this already: https://github.com/boostorg/multiprecision/blob/dd4d566055ff6eee6006f8f954ef... albeit somewhat complexified because it uses __builtin_constant_p to approximate std::is_constant_evaluated on older gcc versions.
I might add that including