commit:     d1e461bc09229f30d7f8cf447314230e4a9126c3
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 12 08:19:00 2025 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Aug 12 08:22:44 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1e461bc

dev-qt/qt-creator: backport build fix for upcoming Qt 6.9.2

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../qt-creator/files/qt-creator-17.0.0-qt692.patch  | 21 +++++++++++++++++++++
 dev-qt/qt-creator/qt-creator-17.0.0.ebuild          |  1 +
 2 files changed, 22 insertions(+)

diff --git a/dev-qt/qt-creator/files/qt-creator-17.0.0-qt692.patch 
b/dev-qt/qt-creator/files/qt-creator-17.0.0-qt692.patch
new file mode 100644
index 000000000000..cf26143a70db
--- /dev/null
+++ b/dev-qt/qt-creator/files/qt-creator-17.0.0-qt692.patch
@@ -0,0 +1,21 @@
+https://github.com/qt-creator/qt-creator/commit/04e6e631b26
+--- a/src/libs/utils/stringtable.cpp
++++ b/src/libs/utils/stringtable.cpp
+@@ -91,9 +91,16 @@
+ }
+ 
++// qtbase/3f61f736266ece40d627dcf6214618a22a009fd1 changed QArrayData::{ref_ 
→ m_ref};
++// adapt:
++template <typename S>
++auto getQArrayDataRef(const S *s) -> decltype(s->ref_) { return 
s->ref_.loadRelaxed(); }
++template <typename S>
++auto getQArrayDataRef(const S *s) -> decltype(s->m_ref) { return 
s->m_ref.loadRelaxed(); }
++
+ static inline bool isDetached(const QString &string, int &bytesSaved)
+ {
+     if (DebugStringTable) {
+         QStringPrivate &data_ptr = const_cast<QString&>(string).data_ptr();
+-        const int ref = data_ptr->d_ptr()->ref_;
++        const int ref = getQArrayDataRef(data_ptr->d_ptr());
+         bytesSaved += (ref - 1) * string.size();
+         if (ref > 10)

diff --git a/dev-qt/qt-creator/qt-creator-17.0.0.ebuild 
b/dev-qt/qt-creator/qt-creator-17.0.0.ebuild
index a6bc0560b441..4be4daaba288 100644
--- a/dev-qt/qt-creator/qt-creator-17.0.0.ebuild
+++ b/dev-qt/qt-creator/qt-creator-17.0.0.ebuild
@@ -103,6 +103,7 @@ BDEPEND="
 PATCHES=(
        "${FILESDIR}"/${PN}-16.0.0-musl-no-execinfo.patch
        "${FILESDIR}"/${PN}-12.0.0-musl-no-malloc-trim.patch
+       "${FILESDIR}"/${P}-qt692.patch
 )
 
 # written in Go, use PREBUILT rather than FLAGS_IGNORED given the

Reply via email to