summaryrefslogtreecommitdiffstats
path: root/opensuse/core/qt3/qt3-arm-gcc4.patch
diff options
context:
space:
mode:
Diffstat (limited to 'opensuse/core/qt3/qt3-arm-gcc4.patch')
-rw-r--r--opensuse/core/qt3/qt3-arm-gcc4.patch22
1 files changed, 22 insertions, 0 deletions
diff --git a/opensuse/core/qt3/qt3-arm-gcc4.patch b/opensuse/core/qt3/qt3-arm-gcc4.patch
new file mode 100644
index 000000000..d9f38f547
--- /dev/null
+++ b/opensuse/core/qt3/qt3-arm-gcc4.patch
@@ -0,0 +1,22 @@
+--- src/tools/qglobal.h
++++ src/tools/qglobal.h
+@@ -317,7 +317,7 @@
+ supposedly know what you are doing.) */
+ # if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP)
+ # define Q_PACKED __attribute__ ((packed))
+-# if __GNUC__ == 3 && __GNUC_MINOR__ >= 4
++# if (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) || __GNUC__ > 3
+ # define Q_NO_PACKED_REFERENCE
+ # endif
+ # endif
+--- src/tools/qstring.h
++++ src/tools/qstring.h
+@@ -194,7 +194,7 @@
+ char latin1() const { return ucs > 0xff ? 0 : (char) ucs; }
+ ushort unicode() const { return ucs; }
+ #ifdef Q_NO_PACKED_REFERENCE
+- ushort &unicode() { return *(&ucs); }
++ ushort &unicode() { return *((ushort*)&ucs); }
+ #else
+ ushort &unicode() { return ucs; }
+ #endif