--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/qt-01-q_atomic_test_and_set_ptr.diff Mon Jan 09 20:53:56 2012 +0000
@@ -0,0 +1,39 @@
+diff --git src/corelib/arch/qatomic_i386.h src/corelib/arch/qatomic_i386.h
+index 73095a9..19660df 100644
+--- src/corelib/arch/qatomic_i386.h
++++ src/corelib/arch/qatomic_i386.h
+@@ -202,7 +202,7 @@ Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddOrdered(qptrdiff valueTo
+
+ extern "C" {
+ Q_CORE_EXPORT int q_atomic_test_and_set_int(volatile int *ptr, int expected, int newval);
+- Q_CORE_EXPORT int q_atomic_test_and_set_ptr(volatile void *ptr, void *expected, void *newval);
++ Q_CORE_EXPORT int q_atomic_test_and_set_ptr(volatile void *ptr, const volatile void *expected, const volatile void *newval);
+ Q_CORE_EXPORT int q_atomic_increment(volatile int *ptr);
+ Q_CORE_EXPORT int q_atomic_decrement(volatile int *ptr);
+ Q_CORE_EXPORT int q_atomic_set_int(volatile int *ptr, int newval);
+diff --git src/corelib/arch/qatomic_sparc.h src/corelib/arch/qatomic_sparc.h
+index a89a5f3..94b7dd1 100644
+--- src/corelib/arch/qatomic_sparc.h
++++ src/corelib/arch/qatomic_sparc.h
+@@ -127,7 +127,7 @@ extern "C" {
+ Q_CORE_EXPORT int q_atomic_fetch_and_add_acquire_int(volatile int *ptr, int value);
+ Q_CORE_EXPORT int q_atomic_fetch_and_add_release_int(volatile int *ptr, int value);
+
+- Q_CORE_EXPORT int q_atomic_test_and_set_ptr(volatile void *ptr, void *expected, void *newval);
++ Q_CORE_EXPORT int q_atomic_test_and_set_ptr(volatile void *ptr, const volatile void *expected, const volatile void *newval);
+ Q_CORE_EXPORT int q_atomic_test_and_set_acquire_ptr(volatile void *ptr,
+ void *expected,
+ void *newval);
+diff --git src/corelib/arch/qatomic_x86_64.h src/corelib/arch/qatomic_x86_64.h
+index 9303f19..3be96fa 100644
+--- src/corelib/arch/qatomic_x86_64.h
++++ src/corelib/arch/qatomic_x86_64.h
+@@ -203,7 +203,7 @@ Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddOrdered(qptrdiff valueTo
+
+ extern "C" {
+ Q_CORE_EXPORT int q_atomic_test_and_set_int(volatile int *ptr, int expected, int newval);
+- Q_CORE_EXPORT int q_atomic_test_and_set_ptr(volatile void *ptr, void *expected, void *newval);
++ Q_CORE_EXPORT int q_atomic_test_and_set_ptr(volatile void *ptr, const volatile void *expected, const volatile void *newval);
+ Q_CORE_EXPORT int q_atomic_increment(volatile int *ptr);
+ Q_CORE_EXPORT int q_atomic_decrement(volatile int *ptr);
+ Q_CORE_EXPORT int q_atomic_set_int(volatile int *ptr, int newval);