Raw File
clang-cl.diff
diff --git a/intl/icu/source/common/umutex.cpp b/intl/icu/source/common/umutex.cpp
index 8f55208..281c370 100644
--- a/intl/icu/source/common/umutex.cpp
+++ b/intl/icu/source/common/umutex.cpp
@@ -64,17 +64,17 @@ static UMutex   globalMutex = U_MUTEX_INITIALIZER;
 //   the caller needs to call the Init function.
 //
 
 U_NAMESPACE_BEGIN
 
 U_COMMON_API UBool U_EXPORT2 umtx_initImplPreInit(UInitOnce &uio) {
     for (;;) {
         int32_t previousState = InterlockedCompareExchange(
-#if (U_PLATFORM == U_PF_MINGW) || (U_PLATFORM == U_PF_CYGWIN)
+#if (U_PLATFORM == U_PF_MINGW) || (U_PLATFORM == U_PF_CYGWIN) || defined(__clang__)
            (LONG volatile *) // this is the type given in the API doc for this function.
 #endif
             &uio.fState,  //  Destination
             1,            //  Exchange Value
             0);           //  Compare value
 
         if (previousState == 0) {
             return true;   // Caller will next call the init function.
back to top