1
0
forked from pool/libqt5-qtbase
libqt5-qtbase/mitigate-FORTIFY_SOURCE-3.patch

36 lines
1.1 KiB
Diff
Raw Normal View History

From: Martin Liška <mliska@suse.cz>
Subject: Mitigate issue with -D_FORTIFY_SOURCE=3 seen with GCC 12
GCC upstream bug for it:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105078
diff --git a/src/corelib/tools/qarraydata.h b/src/corelib/tools/qarraydata.h
index dcd95924..d01739e7 100644
--- a/src/corelib/tools/qarraydata.h
+++ b/src/corelib/tools/qarraydata.h
@@ -42,6 +42,7 @@
#include <QtCore/qrefcount.h>
#include <string.h>
+#include <cstdint>
QT_BEGIN_NAMESPACE
@@ -58,14 +59,14 @@ struct Q_CORE_EXPORT QArrayData
{
Q_ASSERT(size == 0
|| offset < 0 || size_t(offset) >= sizeof(QArrayData));
- return reinterpret_cast<char *>(this) + offset;
+ return reinterpret_cast<void *> (reinterpret_cast<uintptr_t>(this) + offset);
}
const void *data() const
{
Q_ASSERT(size == 0
|| offset < 0 || size_t(offset) >= sizeof(QArrayData));
- return reinterpret_cast<const char *>(this) + offset;
+ return reinterpret_cast<void *> (reinterpret_cast<uintptr_t>(this) + offset);
}
// This refers to array data mutability, not "header data" represented by