From 0f7ab4dee758e4db4924d32bc7d80050e1fcca3e Mon Sep 17 00:00:00 2001 From: Ionen Wolkens Date: Sun, 3 May 2026 21:59:28 -0400 Subject: [PATCH] dev-qt/qtwebengine: workaround gcc17 ICE in 6.11+ Not adding to patchset yet given sounds like issue may not be long lived (already partially fixed), guess there's even chances it'll be fixed before 6.11.1 releases due to delays. Leaving stable 6.10.3 alone. Bug: https://bugs.gentoo.org/973445 Signed-off-by: Ionen Wolkens --- .../files/qtwebengine-6.11.0-gcc17.patch | 29 +++++++++++++++++++ dev-qt/qtwebengine/qtwebengine-6.11.0.ebuild | 1 + .../qtwebengine/qtwebengine-6.11.9999.ebuild | 1 + dev-qt/qtwebengine/qtwebengine-6.9999.ebuild | 1 + 4 files changed, 32 insertions(+) create mode 100644 dev-qt/qtwebengine/files/qtwebengine-6.11.0-gcc17.patch diff --git a/dev-qt/qtwebengine/files/qtwebengine-6.11.0-gcc17.patch b/dev-qt/qtwebengine/files/qtwebengine-6.11.0-gcc17.patch new file mode 100644 index 0000000000000..416074ed18607 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-6.11.0-gcc17.patch @@ -0,0 +1,29 @@ +https://bugs.gentoo.org/973445 +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125064 +--- a/src/3rdparty/chromium/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/compiler_specific.h ++++ b/src/3rdparty/chromium/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/compiler_specific.h +@@ -352,5 +352,5 @@ + // struct PA_TRIVIAL_ABI S { ~S(); } + // ``` +-#if PA_HAS_CPP_ATTRIBUTE(clang::trivial_abi) ++#if PA_HAS_CPP_ATTRIBUTE(clang::trivial_abi) && defined(__clang__) + #define PA_TRIVIAL_ABI [[clang::trivial_abi]] + #else +--- a/src/3rdparty/chromium/base/compiler_specific.h ++++ b/src/3rdparty/chromium/base/compiler_specific.h +@@ -575,5 +575,5 @@ + // struct TRIVIAL_ABI S { ~S(); } + // ``` +-#if __has_cpp_attribute(clang::trivial_abi) ++#if __has_cpp_attribute(clang::trivial_abi) && defined(__clang__) + #define TRIVIAL_ABI [[clang::trivial_abi]] + #else +--- a/src/3rdparty/chromium/skia/config/SkUserConfig.h ++++ b/src/3rdparty/chromium/skia/config/SkUserConfig.h +@@ -104,5 +104,5 @@ + + #if defined(__has_attribute) +-#if __has_attribute(trivial_abi) ++#if __has_attribute(trivial_abi) && defined(__clang__) + #define SK_TRIVIAL_ABI [[clang::trivial_abi]] + #else diff --git a/dev-qt/qtwebengine/qtwebengine-6.11.0.ebuild b/dev-qt/qtwebengine/qtwebengine-6.11.0.ebuild index 642b9f79c6af1..8c0ea04b64ad6 100644 --- a/dev-qt/qtwebengine/qtwebengine-6.11.0.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-6.11.0.ebuild @@ -110,6 +110,7 @@ PATCHES+=( # add extras as needed here, may merge in set if carries across versions "${FILESDIR}"/${PN}-6.10.2-clang-22.patch "${FILESDIR}"/${PN}-6.10.3-climits.patch + "${FILESDIR}"/${PN}-6.11.0-gcc17.patch ) python_check_deps() { diff --git a/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild index 858a1abbba045..ed02fd09690b5 100644 --- a/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild @@ -111,6 +111,7 @@ PATCHES+=( # add extras as needed here, may merge in set if carries across versions "${FILESDIR}"/${PN}-6.10.2-clang-22.patch "${FILESDIR}"/${PN}-6.10.3-climits.patch + "${FILESDIR}"/${PN}-6.11.0-gcc17.patch ) python_check_deps() { diff --git a/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild index d6296bdde2d7f..3951fd03f5eab 100644 --- a/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild @@ -110,6 +110,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} ) PATCHES+=( # add extras as needed here, may merge in set if carries across versions "${FILESDIR}"/${PN}-6.10.3-climits.patch + "${FILESDIR}"/${PN}-6.11.0-gcc17.patch ) python_check_deps() {