|
Boost : |
From: Peter Dimov (pdimov_at_[hidden])
Date: 2023-02-06 14:33:01
Andrey Semashev wrote:
> On 2/6/23 16:40, Peter Dimov via Boost wrote:
> > Boris Kolpackov wrote:
> >> IME, this is an unreliable criterion. For example, based on this MSVC
> >> 14.3
> >> (VS2015) would be a fair game but in practice its constexpr support
> >> is so buggy/incomplete that it's pretty much unusable.
> >
> > On the contrary, it's a highly reliable criterion. It allows you to
> > write "constexpr" instead of "BOOST_CONSTEXPR" without the compiler
> > issuing an immediate error.
>
> I think, the point is that while you can write "constexpr", the compiler will
> likely fail to compile that code in most/all real world contexts.
> The question is what do we, Boost maintainers, do when users come
> complaining. I think, listing the minimum compiler versions we support would
> be useful.
If a compiler issues an error on the mere appearance of the keyword
"constexpr", or "noexcept", or "=default", it's not a C++11 compiler. This is not
rocket science.
Yes, a compiler may support the constexpr keyword, but have problems with
complex uses. This is not a good criterion for banning it Boost-wide, because
"complex uses" vary. One library may not be able to support it, another might.
If you insist on not considering msvc-14.0 a C++11 compiler for your libraries,
that's your right (and problem.) It has nothing to do with whether it's
considered a supported C++11 compiler for the purposes of the announcement.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk