diff -up qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h.me qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h
--- qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h.me	2008-02-29 16:32:54.000000000 +0100
+++ qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h	2008-02-29 17:05:03.000000000 +0100
@@ -178,8 +178,13 @@ struct QBasicAtomicPointer
 #endif // Q_SPECIALIZED_QATOMIC
 
 template <typename T>
+#if defined(QT_MOC) || defined(QT_BUILD_QMAKE) || defined(QT_UIC)
+inline T qAtomicSetPtr(T *ptr, T newval)
+{ T ret = *ptr; *ptr = newval; return ret; }
+#else
 inline T qAtomicSetPtr(volatile T *ptr, T newval)
 { return static_cast<T>(q_atomic_set_ptr(ptr, newval)); }
+#endif
 
 // High-level atomic integer operations
 class QAtomic : public QBasicAtomic
