C++ ABI for C++ standards with full support by GCC (rather than those marked as experimental per https://gcc.gnu.org/projects/cxx-status.html) should be stable. It's certainly not the case in 2025 that one needs a full world rebuild for C++ libraries using e.g. the default standard or any other supported standard by C++, unless it is marked experimental where we provide no guarantees. --- htdocs/bugs/index.html | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/htdocs/bugs/index.html b/htdocs/bugs/index.html index d6556b26..99d19095 100644 --- a/htdocs/bugs/index.html +++ b/htdocs/bugs/index.html @@ -633,14 +633,14 @@ changed the parser rules so that <code><::</code> works as expected. components: the first defines how the elements of classes are laid out, how functions are called, how function names are mangled, etc; the second part deals with the internals of the objects in libstdc++. -Although we strive for a non-changing ABI, so far we have had to -modify it with each major release. If you change your compiler to a -different major release <em>you must recompile all libraries that -contain C++ code</em>. If you fail to do so you risk getting linker -errors or malfunctioning programs. -It should not be necessary to recompile if you have changed -to a bug-fix release of the same version of the compiler; bug-fix -releases are careful to avoid ABI changes. See also the +For C++ standards marked as +<a href="https://gcc.gnu.org/projects/cxx-status.html">experimental</a>, +stable ABI is not guaranteed: for these, if you change your compiler to a +different major release <em>you must recompile any such libraries built +with experimental standard support that contain C++ code</em>. If you fail +to do so, you risk getting linker errors or malfunctioning programs. +It should not be necessary to recompile for C++ standards supported fully +by GCC, such as the default standard. See also the <a href="https://gcc.gnu.org/onlinedocs/gcc/Compatibility.html">compatibility section</a> of the GCC manual.</p> -- 2.48.1