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.
---
Changed the <em>...</em> text to a suggestion from Jason on IRC.

Pushed.

 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 c4907c38..c7c040e8 100644
--- a/htdocs/bugs/index.html
+++ b/htdocs/bugs/index.html
@@ -647,14 +647,14 @@ GCC maintains a 'Porting to' resource for new versions:
 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 libraries that were built
+using a C++ -std= flag that was still experimental</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>
 

base-commit: 745430b2e92b32951dcd7e8572d5e54e189c74b7
-- 
2.49.0

Reply via email to