Boost logo

Boost :

From: Alexander Grund (alexander.grund_at_[hidden])
Date: 2020-09-15 07:05:37

> Why not make Boost.Preprocessor2 or extend Boost.VMD?
I'd not add yet another library doing pretty much the same as an
existing one. Deleting complicated code to reduce maintenance burden is
> Boost.Preprocessor is used quite a lot throughout Boost, not in the
> least part specifically to support C++03. If it stops being C++03
> compatible, this will mean most of Boost will stop as well. At that
> point the dependent libraries may need to reevaluate if they still
> want to use Boost.Preprocessor and possibly either fork it or replace
> it with C++11 constructs. In some instances, like Boost.MPL,
> Boost.Variant, this may make the library pointless because there
> already are C++11 and newer replacements.

 From a "legal" perspective: It was made clear that by now any library
is free to "drop support for C++03" and there is not obligation to do or
don't (see all the many discussions about Boost C++11)

I'd actually welcome the change. As Edward mentioned dropping variadic
macros is not yet dropping C++03, as many compilers did support those
well before C++11, although e.g. GCC issues warnings (which I'd suggest
to suppress in Boost.PP)
If that move makes libraries obsolete, I'd see that as a bonus, but I
don't think so, yet. However maybe reconsidering the relevance of such
libs would be a good thing. E.g. MPL without non-variadic macros is
still useful/working and used by many others. The interfaces will be
kept as-is, so no need to remove although it makes sense to switch from
it if possible due to its compile time hit.

Boost list run by bdawes at, gregod at, cpdaniel at, john at