On Thu, Nov 7, 2019, 10:13 PM Robert Ramey via Boost
On Thu, Nov 7, 2019 at 9:09 PM Robert Ramey wrote:
On 11/7/19 2:27 PM, Peter Dimov via Boost wrote:
What is being proposed is a sanctioned mechanism for library
On 11/7/19 6:23 PM, Glen Fernandes via Boost wrote: maintainers
to drop C++03 in an orderly manner. Any library maintainer who wishes to maintain C++03 support is free to do so.
I don't see any difference between this and the current policy. As far as I know no library developer has ever been required to provide support for other than the current standard. Of course if I'm wrong about this, then feel free to make this policy explicit. I don't see it changing anything.
It's different in this way: Some Boost authors and contributors do feel constrained even if the official policy is to support only the latest/current standard from breaking either an existing Boost library that depends on that library that supports C++03, or breaking some software that uses that Boost library which must be compiled in C++03.
Hmmm this is a big surprise to me. My understanding has been that anything that would compile with C++03 would be compilable with all the subsequent versions of C++. That is the guarantee of backward compatibility. There has been talk about breaking this guarantee, but as far as I know it is still guaranteed.
For example, during a Boost beta release, reports might come in from users saying that X library no longer works for them because they need C++03 support. Or after a release, a Linux distribution package set fails to build, because they compile those programs in C++03 mode, and the Boost library stops compiling in C++03 mode.
But while that might have been the case three - maybe even two - years ago, it isn't likely to be the case now. e.g. More compilers default standard mode is C++14 now, not C++03. i.e. Those of us who were worried about that outcome are less worried about it now.
Hmm - for example, the boost serialization library is C++03 compatible, but it compiles with std=C++14 just fine - exactly as guaranteed by the standard.
Soooooo - you can make whatever policy you want, but I don't see how it would the maintainer of the serialization library in any way.
Robert Ramey
Glen
This was already debated before. No need to rehash it. Maintainers are already empowered to drop C++03 support. They can start by updating their readme and docs and stop running their C++03 CI jobs. - Jim