Martin Storsjo : include: Fix the signature of _InterlockedCompareExchange128.

Alexandre Julliard julliard at winehq.org
Mon Dec 21 15:49:52 CST 2020


Module: wine
Branch: master
Commit: 8c7014eb239edb09ecb861a25d97147701d43c8a
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=8c7014eb239edb09ecb861a25d97147701d43c8a

Author: Martin Storsjo <martin at martin.st>
Date:   Sat Dec 19 23:56:15 2020 +0200

include: Fix the signature of _InterlockedCompareExchange128.

Clang 12 doesn't consider a function with an inconsistent signature
as matching the intrinsic.

This fixes InterlockedCompareExchange128 with clang 12 in MSVC mode.

Signed-off-by: Martin Storsjo <martin at martin.st>
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/winnt.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/winnt.h b/include/winnt.h
index 04353d9405d..83fcc67c85d 100644
--- a/include/winnt.h
+++ b/include/winnt.h
@@ -6897,7 +6897,7 @@ static inline BOOLEAN BitScanReverse(DWORD *index, DWORD mask)
 #if defined(_MSC_VER)
 
 #define InterlockedCompareExchange128 _InterlockedCompareExchange128
-static inline unsigned char _InterlockedCompareExchange128(__int64 *dest, __int64 xchg_high, __int64 xchg_low, __int64 *compare);
+unsigned char _InterlockedCompareExchange128(volatile __int64 *dest, __int64 xchg_high, __int64 xchg_low, __int64 *compare);
 #pragma intrinsic(_InterlockedCompareExchange128)
 
 #elif defined(__x86_64__)




More information about the wine-cvs mailing list