On 04/10/2015 12:09, Bjorn Reese wrote:
On 10/04/2015 12:18 PM, Gennadiy Rozental wrote:
Sooner rather than later we should have this discussion and setup timeline. IMO it had very little sense to continue to maintain c++03 workarounds. Boost code should be an example how modern c++ libraries should look like. And c++03 compatibility is directly in a way of this goal.
You appear to have missed the many discussions on this topic.
While Boost started out to design cutting-edge libraries, it has been caught by its own success. Today there is a large user-base that still uses C++03, and that are unlikely to upgrade in the foreseeable future.
Therefore, the current consensus is that existing libraries should not increase their standards requirements. New libraries are free to decide their standards requirements (although it will probably be questioned during a formal review.)
That means that you have two options:
1. Add a new C++11-only test library (like Boost.Coroutine2.) 2. Maintain both a C++03 and C++11 API within the same library.
+1. As many others have said, Boost.Test is "special" in that the majority of Boost's tests depend on it. Even breakages in develop are extremely painful in that they effectively halt progress for any Boost library which uses Test for testing. As for testing in C++03 mode - that's easy, just use GCC's default compiler mode ;-) John.