From patchwork Wed Feb 12 09:16:32 2025
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Sam James
X-Patchwork-Id: 106361
Return-Path:
X-Original-To: patchwork@sourceware.org
Delivered-To: patchwork@sourceware.org
Received: from server2.sourceware.org (localhost [IPv6:::1])
by sourceware.org (Postfix) with ESMTP id 4B49E3857C7B
for ; Wed, 12 Feb 2025 09:17:45 +0000 (GMT)
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4B49E3857C7B
X-Original-To: gcc-patches@gcc.gnu.org
Delivered-To: gcc-patches@gcc.gnu.org
Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183])
by sourceware.org (Postfix) with ESMTP id C2FB03858423
for ; Wed, 12 Feb 2025 09:16:46 +0000 (GMT)
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C2FB03858423
Authentication-Results: sourceware.org;
dmarc=pass (p=none dis=none) header.from=gentoo.org
Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gentoo.org
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C2FB03858423
Authentication-Results: server2.sourceware.org;
arc=none smtp.remote-ip=140.211.166.183
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1739351806; cv=none;
b=Ze4PFkoR5JkTmcdxbLodEVMNWdNnfCrIh/ItuUZVavLb+OoqzlkXLK8Nn75nWkOlI+RFcpgd+rk2RtJQwyilJxsHQL5M8No9WgM/r+nKXo+GPvMXrVPp707/hhbvJA9Zco+Vo9vFEq7a6NtlG0LZvtqiFUjjrUycK8naqXDUopk=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
t=1739351806; c=relaxed/simple;
bh=6evwjbC60Y38mtbNUCdcFjGGpE6Td1xYB6+LaZuaegY=;
h=From:To:Subject:Date:Message-ID:MIME-Version;
b=CbPE33K7bn1474geRf2IZmIUPUIAy3v+9HInvU5Nqd5mUxLVBl4YXX+ea0rx8qjBSCIEjd8HDVsfd4OJpttSE8M6XHwwJ5qaFGw1+dvI+JbibyyqW57910ZR7dWAZflhkrBm1GfbB3vrYQ8Zu5evwhZmBRX63/SbOzgI3Mpt+Ek=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C2FB03858423
Received: from mop.. (unknown [82.8.138.118])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest
SHA256)
(No client certificate requested)
(Authenticated sender: sam@gentoo.org)
by smtp.gentoo.org (Postfix) with ESMTPSA id 4DEA2342FF8;
Wed, 12 Feb 2025 09:16:45 +0000 (UTC)
From: Sam James
To: gcc-patches@gcc.gnu.org
Cc: jwakely@redhat.com,
jason@redhat.com,
Sam James
Subject: [PATCH htdocs 1/2] bugs: improve "ABI changes" subsection
Date: Wed, 12 Feb 2025 09:16:32 +0000
Message-ID:
X-Mailer: git-send-email 2.48.1
MIME-Version: 1.0
X-Spam-Status: No, score=-10.5 required=5.0 tests=BAYES_00, GIT_PATCH_0,
JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, KAM_SHORT, RCVD_IN_DNSWL_NONE,
RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, SPF_PASS,
TXREP autolearn=ham autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on
server2.sourceware.org
X-BeenThere: gcc-patches@gcc.gnu.org
X-Mailman-Version: 2.1.30
Precedence: list
List-Id: Gcc-patches mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org
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 <:: 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 you must recompile all libraries that
-contain C++ code. 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
+experimental,
+stable ABI is not guaranteed: for these, if you change your compiler to a
+different major release you must recompile any such libraries built
+with experimental standard support that contain C++ code. 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
compatibility
section of the GCC manual.
From patchwork Wed Feb 12 09:16:33 2025
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Sam James
X-Patchwork-Id: 106362
Return-Path:
X-Original-To: patchwork@sourceware.org
Delivered-To: patchwork@sourceware.org
Received: from server2.sourceware.org (localhost [IPv6:::1])
by sourceware.org (Postfix) with ESMTP id D207C3857BA5
for ; Wed, 12 Feb 2025 09:17:45 +0000 (GMT)
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D207C3857BA5
X-Original-To: gcc-patches@gcc.gnu.org
Delivered-To: gcc-patches@gcc.gnu.org
Received: from smtp.gentoo.org (woodpecker.gentoo.org
[IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4])
by sourceware.org (Postfix) with ESMTP id 36EE03858415
for ; Wed, 12 Feb 2025 09:16:50 +0000 (GMT)
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 36EE03858415
Authentication-Results: sourceware.org;
dmarc=pass (p=none dis=none) header.from=gentoo.org
Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gentoo.org
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 36EE03858415
Authentication-Results: server2.sourceware.org; arc=none
smtp.remote-ip=2001:470:ea4a:1:5054:ff:fec7:86e4
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1739351810; cv=none;
b=AsfBmhuXuCtFyPvTHq5mFEABSn3F9/S9q5wq5ETHRIBccXMW9xZjEoi+7G4MOW3Szrko4B0UEqEhPrc+h8kC/HAkxu5wNTwphsenJOwL/xFvCoLx2RCdyUHcptYg1g07iYdbdG4KKgxbyEwEWdxV9NIRE5WSJ/SVBv8deeyLv3s=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
t=1739351810; c=relaxed/simple;
bh=q7BWFT12ObU2ZktUAyYg3wTF//P3zfLx6BlkYWtEF7g=;
h=From:To:Subject:Date:Message-ID:MIME-Version;
b=gAybM3pDUEPSeV6SHnLl7hgsio4sYWG+10FXLHR7zradtA7j2uYJfhzAe0kTw7+SMUUlgLHLMeOGOC9dYNiH5xCquZRjzQM/5vLI0iQpd8z1yZL2PJdk8Sb8425ZPsubZjIWv6Y0uUqTXhvqXBqL5yQuneCPFpLSQR9c2kimJjs=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 36EE03858415
Received: from mop.. (unknown [82.8.138.118])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest
SHA256)
(No client certificate requested)
(Authenticated sender: sam@gentoo.org)
by smtp.gentoo.org (Postfix) with ESMTPSA id 9095934300B;
Wed, 12 Feb 2025 09:16:46 +0000 (UTC)
From: Sam James
To: gcc-patches@gcc.gnu.org
Cc: jwakely@redhat.com,
jason@redhat.com,
Sam James
Subject: [PATCH htdocs 2/2] gcc-15/porting_to: link to "Standards conformance"
section for C++
Date: Wed, 12 Feb 2025 09:16:33 +0000
Message-ID:
<8e3e4cb13eb1f322796ee8bcced44b03662a523b.1739351793.git.sam@gentoo.org>
X-Mailer: git-send-email 2.48.1
In-Reply-To:
References:
MIME-Version: 1.0
X-Spam-Status: No, score=-10.6 required=5.0 tests=BAYES_00, GIT_PATCH_0,
JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, KAM_SHORT, SPF_HELO_PASS, SPF_PASS,
TXREP autolearn=ham autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on
server2.sourceware.org
X-BeenThere: gcc-patches@gcc.gnu.org
X-Mailman-Version: 2.1.30
Precedence: list
List-Id: Gcc-patches mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org
Suggested by Andrew Pinski.
---
htdocs/gcc-15/porting_to.html | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/htdocs/gcc-15/porting_to.html b/htdocs/gcc-15/porting_to.html
index b9b2efc7..829ae92f 100644
--- a/htdocs/gcc-15/porting_to.html
+++ b/htdocs/gcc-15/porting_to.html
@@ -137,6 +137,12 @@ In file included from <source>:1:
C++ language issues
+
+Note that all GCC releases make
+improvements to conformance
+which may reject non-conforming, legacy codebases.
+
+
Some C++ Standard Library headers have been changed to no longer include
other headers that were being used internally by the library.