On Wed, Dec 2, 2020 at 3:12 AM Andrey Semashev via Boost < boost@lists.boost.org> wrote:
On 12/2/20 1:21 AM, Edward Diener via Boost wrote:
I believe the great majority of Boost libraries attempt to maintain ABI compatibility between releases.
My impression is the opposite. Boost has never declared backward ABI or API compatibility. There's a reason why binary distributions of Boost append a version tag that matches Boost version to packages and binaries.
I agree -- it's explicitly not a boost goal.
But just like with compilers it is not
always possible between releases.
You have to give credit to libstdc++ developers at the very least. It maintains backward ABI compatibility across all C++ standard versions and across libstdc++ releases for many years. I think, libc++ also does the same, although I'm not following its development.
Well 'the credit' is that anything that changes the std:: ABI is a fight in the committee -- there's even a special working group - so real tough to get an ABI change into the standard. To me it makes sense that boost should break ABI like mad and the standard should strive for more stability with occasional ABI breaks.