diff options
author | Thiago Macieira <thiago.macieira@nokia.com> | 2010-01-16 10:40:09 (GMT) |
---|---|---|
committer | Thiago Macieira <thiago.macieira@nokia.com> | 2010-01-16 10:40:09 (GMT) |
commit | d59eaf1c550d45ff1009ccceaea6298b9e3d8e2b (patch) | |
tree | 6b7f9b4750e2e5cc75fa6542cef85a9473a2980b /src/corelib/arch/qatomic_ia64.h | |
parent | 71d94529a3cf894fa11954463dc8658aed2a04fc (diff) | |
download | Qt-d59eaf1c550d45ff1009ccceaea6298b9e3d8e2b.zip Qt-d59eaf1c550d45ff1009ccceaea6298b9e3d8e2b.tar.gz Qt-d59eaf1c550d45ff1009ccceaea6298b9e3d8e2b.tar.bz2 |
Fix compilation on IA-64 with the Intel compiler: cast properly.
Error was:
../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h(208):
error: argument of type "QMutexPool *volatile *" is incompatible with parameter of type "void *volatile *"
return (T *)_InterlockedExchangePointer(&_q_value, newValue);
^
detected during instantiation of "T *QBasicAtomicPointer<T>::fetchAndStoreAcquire(T *) [with T=QMutexPool]"
Patch by Intel Yolanda Chen (relayed by reporter Richard Fleck).
Task-number: QTBUG-7356
Diffstat (limited to 'src/corelib/arch/qatomic_ia64.h')
-rw-r--r-- | src/corelib/arch/qatomic_ia64.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/corelib/arch/qatomic_ia64.h b/src/corelib/arch/qatomic_ia64.h index e015863..8c824f3 100644 --- a/src/corelib/arch/qatomic_ia64.h +++ b/src/corelib/arch/qatomic_ia64.h @@ -205,7 +205,7 @@ inline bool QBasicAtomicInt::deref() template <typename T> Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndStoreAcquire(T *newValue) { - return (T *)_InterlockedExchangePointer(&_q_value, newValue); + return (T *)_InterlockedExchangePointer(reinterpret_cast<void * volatile*>(&_q_value), newValue); } template <typename T> |