Репозитории ALT
S: | 3.3.8d-alt16.1 |
5.1: | 3.3.8b-alt7 |
4.1: | 3.3.8b-alt2.qa1 |
4.0: | 3.3.8b-alt0.M40.1 |
3.0: | 3.3.4-alt6 |
+updates: | 3.3.4-alt6.3.M30 |
Группа :: Система/Библиотеки
Пакет: qt3
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: qt-3.3.8-alt-arm-no-packed-pointers.patch
Скачать
Скачать
--- qt-x11-free-3.3.8/src/tools/qglobal.h~ 2007-06-08 20:49:13 +0400
+++ qt-x11-free-3.3.8/src/tools/qglobal.h 2007-07-02 19:53:34 +0400
@@ -314,12 +314,16 @@
char, or short. We tell gcc to pack QChars to 16 bits, to avoid
QString bloat. However, gcc 3.4 doesn't allow us to create references to
members of a packed struct. (Pointers are OK, because then you
- supposedly know what you are doing.) */
+ supposedly know what you are doing.)
+ For gcc 4.0.2 pointers dont seem to be ok, */
# if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP)
# define Q_PACKED __attribute__ ((packed))
# if __GNUC__ == 3 && __GNUC_MINOR__ >= 4
# define Q_NO_PACKED_REFERENCE
# endif
+# if __GNUC__ == 4 && __GNUC_MINOR__ >= 0
+# define Q_NO_PACKED_POINTERS
+# endif
# endif
# if !defined(__EXCEPTIONS)
# define Q_NO_EXCEPTIONS
--- qt-x11-free-3.3.8/src/tools/qstring.h~ 2007-02-02 17:01:05 +0300
+++ qt-x11-free-3.3.8/src/tools/qstring.h 2007-07-02 19:55:56 +0400
@@ -195,6 +195,8 @@ public:
ushort unicode() const { return ucs; }
#ifdef Q_NO_PACKED_REFERENCE
ushort &unicode() { return *(&ucs); }
+#elif defined Q_NO_PACKED_POINTERS
+ ushort &unicode() { ushort& tmp = ucs; return tmp; }
#else
ushort &unicode() { return ucs; }
#endif