diff --git a/mingw-w64-libraries/winstorecompat/src/CreateEventW.c b/mingw-w64-libraries/winstorecompat/src/CreateEventW.c
index a313999..c902d43 100644
--- a/mingw-w64-libraries/winstorecompat/src/CreateEventW.c
+++ b/mingw-w64-libraries/winstorecompat/src/CreateEventW.c
@@ -40,7 +40,7 @@
 }
 
 #ifdef _X86_
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateEventW))(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName) asm("__imp__CreateEventW@16") = CreateEventW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateEventW))(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName) __asm__("__imp__CreateEventW@16") = CreateEventW;
 #else
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateEventW))(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName) asm("__imp_CreateEventW") = CreateEventW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateEventW))(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName) __asm__("__imp_CreateEventW") = CreateEventW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/CreateFileW.c b/mingw-w64-libraries/winstorecompat/src/CreateFileW.c
index 9ff0dcf..b15378b 100644
--- a/mingw-w64-libraries/winstorecompat/src/CreateFileW.c
+++ b/mingw-w64-libraries/winstorecompat/src/CreateFileW.c
@@ -48,7 +48,7 @@
 }
 
 #ifdef _X86_
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateFileW))(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode,  LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) asm("__imp__CreateFileW@28") = CreateFileW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateFileW))(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode,  LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) __asm__("__imp__CreateFileW@28") = CreateFileW;
 #else
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateFileW))(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode,  LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) asm("__imp_CreateFileW") = CreateFileW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateFileW))(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode,  LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) __asm__("__imp_CreateFileW") = CreateFileW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/CreateMutexW.c b/mingw-w64-libraries/winstorecompat/src/CreateMutexW.c
index 0dc1f7b..93410d7 100644
--- a/mingw-w64-libraries/winstorecompat/src/CreateMutexW.c
+++ b/mingw-w64-libraries/winstorecompat/src/CreateMutexW.c
@@ -38,7 +38,7 @@
 }
 
 #ifdef _X86_
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateMutexW))(LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner, LPCWSTR lpName) asm("__imp__CreateMutexW@12") = CreateMutexW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateMutexW))(LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner, LPCWSTR lpName) __asm__("__imp__CreateMutexW@12") = CreateMutexW;
 #else
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateMutexW))(LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner, LPCWSTR lpName) asm("__imp_CreateMutexW") = CreateMutexW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateMutexW))(LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner, LPCWSTR lpName) __asm__("__imp_CreateMutexW") = CreateMutexW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/CreateSemaphoreW.c b/mingw-w64-libraries/winstorecompat/src/CreateSemaphoreW.c
index 9289bd8..0229c2e 100644
--- a/mingw-w64-libraries/winstorecompat/src/CreateSemaphoreW.c
+++ b/mingw-w64-libraries/winstorecompat/src/CreateSemaphoreW.c
@@ -40,9 +40,9 @@
 }
 
 #ifdef _X86_
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreW))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCWSTR lpName) asm("__imp__CreateSemaphoreW@16") = CreateSemaphoreW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreW))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCWSTR lpName) __asm__("__imp__CreateSemaphoreW@16") = CreateSemaphoreW;
 #else
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreW))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCWSTR lpName) asm("__imp_CreateSemaphoreW") = CreateSemaphoreW;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreW))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCWSTR lpName) __asm__("__imp_CreateSemaphoreW") = CreateSemaphoreW;
 #endif
 
 /*
@@ -65,7 +65,7 @@
 }
 
 #ifdef _X86_
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreA))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCSTR lpName) asm("__imp__CreateSemaphoreA@16") = CreateSemaphoreA;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreA))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCSTR lpName) __asm__("__imp__CreateSemaphoreA@16") = CreateSemaphoreA;
 #else
-HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreA))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCSTR lpName) asm("__imp_CreateSemaphoreA") = CreateSemaphoreA;
+HANDLE (WINAPI *__MINGW_IMP_SYMBOL(CreateSemaphoreA))(LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCSTR lpName) __asm__("__imp_CreateSemaphoreA") = CreateSemaphoreA;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/Crypto.c b/mingw-w64-libraries/winstorecompat/src/Crypto.c
index 028a4dc..8de50d4 100644
--- a/mingw-w64-libraries/winstorecompat/src/Crypto.c
+++ b/mingw-w64-libraries/winstorecompat/src/Crypto.c
@@ -101,13 +101,13 @@
 }
 
 #ifdef _X86_
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextW))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) asm("__imp__CryptAcquireContextW@20") = CryptAcquireContextW;
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextA))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) asm("__imp__CryptAcquireContextA@20") = CryptAcquireContextA;
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptReleaseContext))(HCRYPTPROV, DWORD) asm("__imp__CryptReleaseContext@8") = CryptReleaseContext;
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptGenRandom))(HCRYPTPROV, DWORD, BYTE*) asm("__imp__CryptGenRandom@12") = CryptGenRandom;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextW))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) __asm__("__imp__CryptAcquireContextW@20") = CryptAcquireContextW;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextA))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) __asm__("__imp__CryptAcquireContextA@20") = CryptAcquireContextA;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptReleaseContext))(HCRYPTPROV, DWORD) __asm__("__imp__CryptReleaseContext@8") = CryptReleaseContext;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptGenRandom))(HCRYPTPROV, DWORD, BYTE*) __asm__("__imp__CryptGenRandom@12") = CryptGenRandom;
 #else
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextW))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) asm("__imp_CryptAcquireContextW") = CryptAcquireContextW;
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextA))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) asm("__imp_CryptAcquireContextA") = CryptAcquireContextA;
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptReleaseContext))(HCRYPTPROV, DWORD) asm("__imp_CryptReleaseContext") = CryptReleaseContext;
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptGenRandom))(HCRYPTPROV, DWORD, BYTE*) asm("__imp_CryptGenRandom") = CryptGenRandom;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextW))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) __asm__("__imp_CryptAcquireContextW") = CryptAcquireContextW;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptAcquireContextA))(HCRYPTPROV*, LPCTSTR, LPCTSTR, DWORD, DWORD) __asm__("__imp_CryptAcquireContextA") = CryptAcquireContextA;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptReleaseContext))(HCRYPTPROV, DWORD) __asm__("__imp_CryptReleaseContext") = CryptReleaseContext;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(CryptGenRandom))(HCRYPTPROV, DWORD, BYTE*) __asm__("__imp_CryptGenRandom") = CryptGenRandom;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/EnumProcessModules.c b/mingw-w64-libraries/winstorecompat/src/EnumProcessModules.c
index 84df8e7..5b5f679 100644
--- a/mingw-w64-libraries/winstorecompat/src/EnumProcessModules.c
+++ b/mingw-w64-libraries/winstorecompat/src/EnumProcessModules.c
@@ -66,9 +66,9 @@
 }
 
 #ifdef _X86_
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) asm("__imp__EnumProcessModules@16") = EnumProcessModules;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(K32EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) asm("__imp__K32EnumProcessModules@16") = K32EnumProcessModules;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) __asm__("__imp__EnumProcessModules@16") = EnumProcessModules;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(K32EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) __asm__("__imp__K32EnumProcessModules@16") = K32EnumProcessModules;
 #else
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) asm("__imp_EnumProcessModules") = EnumProcessModules;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(K32EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) asm("__imp_K32EnumProcessModules") = K32EnumProcessModules;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) __asm__("__imp_EnumProcessModules") = EnumProcessModules;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(K32EnumProcessModules))(HANDLE hProcess, HMODULE *lphModule, DWORD cb, LPDWORD lpcbNeeded) __asm__("__imp_K32EnumProcessModules") = K32EnumProcessModules;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetACP.c b/mingw-w64-libraries/winstorecompat/src/GetACP.c
index 5f480c6..abfb836 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetACP.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetACP.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-UINT (WINAPI *__MINGW_IMP_SYMBOL(GetACP))(void) asm("__imp__GetACP@0") = GetACP;
+UINT (WINAPI *__MINGW_IMP_SYMBOL(GetACP))(void) __asm__("__imp__GetACP@0") = GetACP;
 #else
-UINT (WINAPI *__MINGW_IMP_SYMBOL(GetACP))(void) asm("__imp_GetACP") = GetACP;
+UINT (WINAPI *__MINGW_IMP_SYMBOL(GetACP))(void) __asm__("__imp_GetACP") = GetACP;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetConsoleOutputCP.c b/mingw-w64-libraries/winstorecompat/src/GetConsoleOutputCP.c
index 308e6c5..d244a1e 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetConsoleOutputCP.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetConsoleOutputCP.c
@@ -32,7 +32,7 @@
 }
 
 #ifdef _X86_
-UINT (*__MINGW_IMP_SYMBOL(GetConsoleOutputCP))(void) asm("__imp__GetConsoleOutputCP") = GetConsoleOutputCP;
+UINT (*__MINGW_IMP_SYMBOL(GetConsoleOutputCP))(void) __asm__("__imp__GetConsoleOutputCP") = GetConsoleOutputCP;
 #else
-UINT (*__MINGW_IMP_SYMBOL(GetConsoleOutputCP))(void) asm("__imp_GetConsoleOutputCP") = GetConsoleOutputCP;
+UINT (*__MINGW_IMP_SYMBOL(GetConsoleOutputCP))(void) __asm__("__imp_GetConsoleOutputCP") = GetConsoleOutputCP;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetFileAttributes.c b/mingw-w64-libraries/winstorecompat/src/GetFileAttributes.c
index c7b21d0..f482715 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetFileAttributes.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetFileAttributes.c
@@ -42,7 +42,7 @@
 }
 
 #ifdef _X86_
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileAttributesW))(LPCWSTR lpFileName) asm("__imp__GetFileAttributesW@4") = GetFileAttributesW;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileAttributesW))(LPCWSTR lpFileName) __asm__("__imp__GetFileAttributesW@4") = GetFileAttributesW;
 #else
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileAttributesW))(LPCWSTR lpFileName) asm("__imp_GetFileAttributesW") = GetFileAttributesW;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileAttributesW))(LPCWSTR lpFileName) __asm__("__imp_GetFileAttributesW") = GetFileAttributesW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetFileSize.c b/mingw-w64-libraries/winstorecompat/src/GetFileSize.c
index a503999..5f798da 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetFileSize.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetFileSize.c
@@ -49,7 +49,7 @@
 }
 
 #ifdef _X86_
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileSize))(HANDLE hFile, LPDWORD lpFileSizeHigh) asm("__imp__GetFileSize@8") = GetFileSize;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileSize))(HANDLE hFile, LPDWORD lpFileSizeHigh) __asm__("__imp__GetFileSize@8") = GetFileSize;
 #else
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileSize))(HANDLE hFile, LPDWORD lpFileSizeHigh) asm("__imp_GetFileSize") = GetFileSize;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetFileSize))(HANDLE hFile, LPDWORD lpFileSizeHigh) __asm__("__imp_GetFileSize") = GetFileSize;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetModuleHandle.c b/mingw-w64-libraries/winstorecompat/src/GetModuleHandle.c
index 412ed04..0567da8 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetModuleHandle.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetModuleHandle.c
@@ -57,9 +57,9 @@
 }
 
 #ifdef _X86_
-HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleA))(LPCSTR) asm("__imp__GetModuleHandleA@4") = GetModuleHandleA;
-HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleW))(LPCWSTR) asm("__imp__GetModuleHandleW@4") = GetModuleHandleW;
+HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleA))(LPCSTR) __asm__("__imp__GetModuleHandleA@4") = GetModuleHandleA;
+HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleW))(LPCWSTR) __asm__("__imp__GetModuleHandleW@4") = GetModuleHandleW;
 #else
-HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleA))(LPCSTR) asm("__imp_GetModuleHandleA") = GetModuleHandleA;
-HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleW))(LPCWSTR) asm("__imp_GetModuleHandleW") = GetModuleHandleW;
+HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleA))(LPCSTR) __asm__("__imp_GetModuleHandleA") = GetModuleHandleA;
+HMODULE (WINAPI *__MINGW_IMP_SYMBOL(GetModuleHandleW))(LPCWSTR) __asm__("__imp_GetModuleHandleW") = GetModuleHandleW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetStartupInfo.c b/mingw-w64-libraries/winstorecompat/src/GetStartupInfo.c
index 45e3758..9f1c0db 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetStartupInfo.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetStartupInfo.c
@@ -35,9 +35,9 @@
 }
 
 #ifdef _X86_
-VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoA))(LPSTARTUPINFO) asm("__imp__GetStartupInfoA@4") = GetStartupInfo;
-VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoW))(LPSTARTUPINFO) asm("__imp__GetStartupInfoW@4") = GetStartupInfo;
+VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoA))(LPSTARTUPINFO) __asm__("__imp__GetStartupInfoA@4") = GetStartupInfo;
+VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoW))(LPSTARTUPINFO) __asm__("__imp__GetStartupInfoW@4") = GetStartupInfo;
 #else
-VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoA))(LPSTARTUPINFO) asm("__imp_GetStartupInfoA") = GetStartupInfo;
-VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoW))(LPSTARTUPINFO) asm("__imp_GetStartupInfoW") = GetStartupInfo;
+VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoA))(LPSTARTUPINFO) __asm__("__imp_GetStartupInfoA") = GetStartupInfo;
+VOID (WINAPI *__MINGW_IMP_SYMBOL(GetStartupInfoW))(LPSTARTUPINFO) __asm__("__imp_GetStartupInfoW") = GetStartupInfo;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetTickCount.c b/mingw-w64-libraries/winstorecompat/src/GetTickCount.c
index 83dd18f..93d7d29 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetTickCount.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetTickCount.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetTickCount))(void) asm("__imp__GetTickCount@0") = GetTickCount;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetTickCount))(void) __asm__("__imp__GetTickCount@0") = GetTickCount;
 #else
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetTickCount))(void) asm("__imp_GetTickCount") = GetTickCount;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(GetTickCount))(void) __asm__("__imp_GetTickCount") = GetTickCount;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/GetUserName.c b/mingw-w64-libraries/winstorecompat/src/GetUserName.c
index 52ae9db..0ecdc0a 100644
--- a/mingw-w64-libraries/winstorecompat/src/GetUserName.c
+++ b/mingw-w64-libraries/winstorecompat/src/GetUserName.c
@@ -55,9 +55,9 @@
 }
 
 #ifdef _X86_
-WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameA))(LPSTR lpBuffer, LPDWORD pcbBuffer) asm("__imp__GetUserNameA@8") = GetUserNameA;
-WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameW))(LPWSTR lpBuffer, LPDWORD pcbBuffer) asm("__imp__GetUserNameW@8") = GetUserNameW;
+WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameA))(LPSTR lpBuffer, LPDWORD pcbBuffer) __asm__("__imp__GetUserNameA@8") = GetUserNameA;
+WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameW))(LPWSTR lpBuffer, LPDWORD pcbBuffer) __asm__("__imp__GetUserNameW@8") = GetUserNameW;
 #else
-WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameA))(LPSTR lpBuffer, LPDWORD pcbBuffer) asm("__imp_GetUserNameA") = GetUserNameA;
-WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameW))(LPWSTR lpBuffer, LPDWORD pcbBuffer) asm("__imp_GetUserNameW") = GetUserNameW;
+WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameA))(LPSTR lpBuffer, LPDWORD pcbBuffer) __asm__("__imp_GetUserNameA") = GetUserNameA;
+WINBOOL(*__MINGW_IMP_SYMBOL(GetUserNameW))(LPWSTR lpBuffer, LPDWORD pcbBuffer) __asm__("__imp_GetUserNameW") = GetUserNameW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/InitializeCriticalSection.c b/mingw-w64-libraries/winstorecompat/src/InitializeCriticalSection.c
index 998d0e5..9b602f0 100644
--- a/mingw-w64-libraries/winstorecompat/src/InitializeCriticalSection.c
+++ b/mingw-w64-libraries/winstorecompat/src/InitializeCriticalSection.c
@@ -37,7 +37,7 @@
 }
 
 #ifdef _X86_
-void (WINAPI *__MINGW_IMP_SYMBOL(InitializeCriticalSection))(LPCRITICAL_SECTION lpCriticalSection) asm("__imp__InitializeCriticalSection@4") = InitializeCriticalSection;
+void (WINAPI *__MINGW_IMP_SYMBOL(InitializeCriticalSection))(LPCRITICAL_SECTION lpCriticalSection) __asm__("__imp__InitializeCriticalSection@4") = InitializeCriticalSection;
 #else
-void (WINAPI *__MINGW_IMP_SYMBOL(InitializeCriticalSection))(LPCRITICAL_SECTION lpCriticalSection) asm("__imp_InitializeCriticalSection") = InitializeCriticalSection;
+void (WINAPI *__MINGW_IMP_SYMBOL(InitializeCriticalSection))(LPCRITICAL_SECTION lpCriticalSection) __asm__("__imp_InitializeCriticalSection") = InitializeCriticalSection;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/IsDBCSLeadByteEx.c b/mingw-w64-libraries/winstorecompat/src/IsDBCSLeadByteEx.c
index b56ce24..b26dd2e 100644
--- a/mingw-w64-libraries/winstorecompat/src/IsDBCSLeadByteEx.c
+++ b/mingw-w64-libraries/winstorecompat/src/IsDBCSLeadByteEx.c
@@ -47,7 +47,7 @@
 }
 
 #ifdef _X86_
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(IsDBCSLeadByteEx))(UINT CodePage, BYTE TestChar) asm("__imp__IsDBCSLeadByteEx@8") = IsDBCSLeadByteEx;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(IsDBCSLeadByteEx))(UINT CodePage, BYTE TestChar) __asm__("__imp__IsDBCSLeadByteEx@8") = IsDBCSLeadByteEx;
 #else
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(IsDBCSLeadByteEx))(UINT CodePage, BYTE TestChar) asm("__imp_IsDBCSLeadByteEx") = IsDBCSLeadByteEx;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(IsDBCSLeadByteEx))(UINT CodePage, BYTE TestChar) __asm__("__imp_IsDBCSLeadByteEx") = IsDBCSLeadByteEx;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/LoadLibraryW.c b/mingw-w64-libraries/winstorecompat/src/LoadLibraryW.c
index 633cbd2..428a6e0 100644
--- a/mingw-w64-libraries/winstorecompat/src/LoadLibraryW.c
+++ b/mingw-w64-libraries/winstorecompat/src/LoadLibraryW.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-HMODULE (WINAPI *__MINGW_IMP_SYMBOL(LoadLibraryW))(LPCWSTR lpFileName) asm("__imp__LoadLibraryW@4") = LoadLibraryW;
+HMODULE (WINAPI *__MINGW_IMP_SYMBOL(LoadLibraryW))(LPCWSTR lpFileName) __asm__("__imp__LoadLibraryW@4") = LoadLibraryW;
 #else
-HMODULE (WINAPI *__MINGW_IMP_SYMBOL(LoadLibraryW))(LPCWSTR lpFileName) asm("__imp_LoadLibraryW") = LoadLibraryW;
+HMODULE (WINAPI *__MINGW_IMP_SYMBOL(LoadLibraryW))(LPCWSTR lpFileName) __asm__("__imp_LoadLibraryW") = LoadLibraryW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/LocalAlloc.c b/mingw-w64-libraries/winstorecompat/src/LocalAlloc.c
index d07c77a..8824660 100644
--- a/mingw-w64-libraries/winstorecompat/src/LocalAlloc.c
+++ b/mingw-w64-libraries/winstorecompat/src/LocalAlloc.c
@@ -39,7 +39,7 @@
 }
 
 #ifdef _X86_
-HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalAlloc))(UINT uFlags, SIZE_T uByte) asm("__imp__LocalAlloc@8") = LocalAlloc;
+HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalAlloc))(UINT uFlags, SIZE_T uByte) __asm__("__imp__LocalAlloc@8") = LocalAlloc;
 #else
-HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalAlloc))(UINT uFlags, SIZE_T uByte) asm("__imp_LocalAlloc") = LocalAlloc;
+HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalAlloc))(UINT uFlags, SIZE_T uByte) __asm__("__imp_LocalAlloc") = LocalAlloc;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/LocalFree.c b/mingw-w64-libraries/winstorecompat/src/LocalFree.c
index 6852849..0ae29fd 100644
--- a/mingw-w64-libraries/winstorecompat/src/LocalFree.c
+++ b/mingw-w64-libraries/winstorecompat/src/LocalFree.c
@@ -38,7 +38,7 @@
 }
 
 #ifdef _X86_
-HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalFree))(HLOCAL hMem) asm("__imp__LocalFree@4") = LocalFree;
+HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalFree))(HLOCAL hMem) __asm__("__imp__LocalFree@4") = LocalFree;
 #else
-HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalFree))(HLOCAL hMem) asm("__imp_LocalFree") = LocalFree;
+HLOCAL (WINAPI *__MINGW_IMP_SYMBOL(LocalFree))(HLOCAL hMem) __asm__("__imp_LocalFree") = LocalFree;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/QueueTimer.c b/mingw-w64-libraries/winstorecompat/src/QueueTimer.c
index 8f0481d..8b0a397 100644
--- a/mingw-w64-libraries/winstorecompat/src/QueueTimer.c
+++ b/mingw-w64-libraries/winstorecompat/src/QueueTimer.c
@@ -46,9 +46,9 @@
 }
 
 #ifdef _X86_
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(CreateTimerQueueTimer)) (PHANDLE phNewTimer, HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, ULONG Flags) asm("__imp__CreateTimerQueueTimer@28") = CreateTimerQueueTimer;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(DeleteTimerQueueTimer)) (HANDLE TimerQueue, HANDLE Timer, HANDLE CompletionEvent) asm("__imp__DeleteTimerQueueTimer@12") = DeleteTimerQueueTimer;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(CreateTimerQueueTimer)) (PHANDLE phNewTimer, HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, ULONG Flags) __asm__("__imp__CreateTimerQueueTimer@28") = CreateTimerQueueTimer;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(DeleteTimerQueueTimer)) (HANDLE TimerQueue, HANDLE Timer, HANDLE CompletionEvent) __asm__("__imp__DeleteTimerQueueTimer@12") = DeleteTimerQueueTimer;
 #else
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(CreateTimerQueueTimer)) (PHANDLE phNewTimer, HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, ULONG Flags) asm("__imp_CreateTimerQueueTimer") = CreateTimerQueueTimer;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(DeleteTimerQueueTimer)) (HANDLE TimerQueue, HANDLE Timer, HANDLE CompletionEvent) asm("__imp_DeleteTimerQueueTimer") = DeleteTimerQueueTimer;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(CreateTimerQueueTimer)) (PHANDLE phNewTimer, HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, ULONG Flags) __asm__("__imp_CreateTimerQueueTimer") = CreateTimerQueueTimer;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(DeleteTimerQueueTimer)) (HANDLE TimerQueue, HANDLE Timer, HANDLE CompletionEvent) __asm__("__imp_DeleteTimerQueueTimer") = DeleteTimerQueueTimer;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/RtlAddFunctionTable.c b/mingw-w64-libraries/winstorecompat/src/RtlAddFunctionTable.c
index e733ee7..fc1c91f 100644
--- a/mingw-w64-libraries/winstorecompat/src/RtlAddFunctionTable.c
+++ b/mingw-w64-libraries/winstorecompat/src/RtlAddFunctionTable.c
@@ -33,5 +33,5 @@
     return FALSE;
 }
 
-BOOLEAN (NTAPI *__MINGW_IMP_SYMBOL(RtlAddFunctionTable))(PRUNTIME_FUNCTION FunctionTable, DWORD EntryCount, DWORD64 BaseAddress) asm("__imp_RtlAddFunctionTable") = RtlAddFunctionTable;
+BOOLEAN (NTAPI *__MINGW_IMP_SYMBOL(RtlAddFunctionTable))(PRUNTIME_FUNCTION FunctionTable, DWORD EntryCount, DWORD64 BaseAddress) __asm__("__imp_RtlAddFunctionTable") = RtlAddFunctionTable;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/RtlCaptureContext.c b/mingw-w64-libraries/winstorecompat/src/RtlCaptureContext.c
index 3270904..fd6f95a 100644
--- a/mingw-w64-libraries/winstorecompat/src/RtlCaptureContext.c
+++ b/mingw-w64-libraries/winstorecompat/src/RtlCaptureContext.c
@@ -33,7 +33,7 @@
 }
 
 #ifdef _X86_
-VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlCaptureContext))(PCONTEXT ContextRecord) asm("__imp__RtlCaptureContext@4") = RtlCaptureContext;
+VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlCaptureContext))(PCONTEXT ContextRecord) __asm__("__imp__RtlCaptureContext@4") = RtlCaptureContext;
 #else
-VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlCaptureContext))(PCONTEXT ContextRecord) asm("__imp_RtlCaptureContext") = RtlCaptureContext;
+VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlCaptureContext))(PCONTEXT ContextRecord) __asm__("__imp_RtlCaptureContext") = RtlCaptureContext;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/RtlRestoreContext.c b/mingw-w64-libraries/winstorecompat/src/RtlRestoreContext.c
index 0242979..8fcccff 100644
--- a/mingw-w64-libraries/winstorecompat/src/RtlRestoreContext.c
+++ b/mingw-w64-libraries/winstorecompat/src/RtlRestoreContext.c
@@ -35,8 +35,8 @@
 }
 
 #ifdef _X86_
-VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlRestoreContext))(PCONTEXT ContextRecord, struct _EXCEPTION_RECORD *ExceptionRecord) asm("__imp__RtlRestoreContext@8") = RtlRestoreContext;
+VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlRestoreContext))(PCONTEXT ContextRecord, struct _EXCEPTION_RECORD *ExceptionRecord) __asm__("__imp__RtlRestoreContext@8") = RtlRestoreContext;
 #else
-VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlRestoreContext))(PCONTEXT ContextRecord, struct _EXCEPTION_RECORD *ExceptionRecord) asm("__imp_RtlRestoreContext") = RtlRestoreContext;
+VOID (NTAPI *__MINGW_IMP_SYMBOL(RtlRestoreContext))(PCONTEXT ContextRecord, struct _EXCEPTION_RECORD *ExceptionRecord) __asm__("__imp_RtlRestoreContext") = RtlRestoreContext;
 #endif
 
diff --git a/mingw-w64-libraries/winstorecompat/src/RtlVirtualUnwind.c b/mingw-w64-libraries/winstorecompat/src/RtlVirtualUnwind.c
index 4bc52ec..463a61c 100644
--- a/mingw-w64-libraries/winstorecompat/src/RtlVirtualUnwind.c
+++ b/mingw-w64-libraries/winstorecompat/src/RtlVirtualUnwind.c
@@ -38,5 +38,5 @@
     return NULL;
 }
 
-PEXCEPTION_ROUTINE (NTAPI *__MINGW_IMP_SYMBOL(RtlVirtualUnwind))(DWORD HandlerType, DWORD64 ImageBase, DWORD64 ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD64 EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers) asm("__imp_RtlVirtualUnwind") = RtlVirtualUnwind;
+PEXCEPTION_ROUTINE (NTAPI *__MINGW_IMP_SYMBOL(RtlVirtualUnwind))(DWORD HandlerType, DWORD64 ImageBase, DWORD64 ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD64 EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers) __asm__("__imp_RtlVirtualUnwind") = RtlVirtualUnwind;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/SHGetFolderPathW.c b/mingw-w64-libraries/winstorecompat/src/SHGetFolderPathW.c
index 6982982..53db9fe 100644
--- a/mingw-w64-libraries/winstorecompat/src/SHGetFolderPathW.c
+++ b/mingw-w64-libraries/winstorecompat/src/SHGetFolderPathW.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-HRESULT (WINAPI *__MINGW_IMP_SYMBOL(SHGetFolderPathW))(HWND hwnd,int csidl,HANDLE hToken,DWORD dwFlags,LPWSTR pszPath) asm("__imp__SHGetFolderPathW@20") = SHGetFolderPathW;
+HRESULT (WINAPI *__MINGW_IMP_SYMBOL(SHGetFolderPathW))(HWND hwnd,int csidl,HANDLE hToken,DWORD dwFlags,LPWSTR pszPath) __asm__("__imp__SHGetFolderPathW@20") = SHGetFolderPathW;
 #else
-HRESULT (WINAPI *__MINGW_IMP_SYMBOL(SHGetFolderPathW))(HWND hwnd,int csidl,HANDLE hToken,DWORD dwFlags,LPWSTR pszPath) asm("__imp_SHGetFolderPathW") = SHGetFolderPathW;
+HRESULT (WINAPI *__MINGW_IMP_SYMBOL(SHGetFolderPathW))(HWND hwnd,int csidl,HANDLE hToken,DWORD dwFlags,LPWSTR pszPath) __asm__("__imp_SHGetFolderPathW") = SHGetFolderPathW;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/SetErrorMode.c b/mingw-w64-libraries/winstorecompat/src/SetErrorMode.c
index 3f9da86..1b18810 100644
--- a/mingw-w64-libraries/winstorecompat/src/SetErrorMode.c
+++ b/mingw-w64-libraries/winstorecompat/src/SetErrorMode.c
@@ -36,7 +36,7 @@
 }
 
 #ifdef _X86_
-UINT (WINAPI *__MINGW_IMP_SYMBOL(SetErrorMode))(UINT uMode) asm("__imp__SetErrorMode@4") = SetErrorMode;
+UINT (WINAPI *__MINGW_IMP_SYMBOL(SetErrorMode))(UINT uMode) __asm__("__imp__SetErrorMode@4") = SetErrorMode;
 #else
-UINT (WINAPI *__MINGW_IMP_SYMBOL(SetErrorMode))(UINT uMode) asm("__imp_SetErrorMode") = SetErrorMode;
+UINT (WINAPI *__MINGW_IMP_SYMBOL(SetErrorMode))(UINT uMode) __asm__("__imp_SetErrorMode") = SetErrorMode;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/SetFilePointer.c b/mingw-w64-libraries/winstorecompat/src/SetFilePointer.c
index 17b474f..af30333 100644
--- a/mingw-w64-libraries/winstorecompat/src/SetFilePointer.c
+++ b/mingw-w64-libraries/winstorecompat/src/SetFilePointer.c
@@ -57,7 +57,7 @@
 }
 
 #ifdef _X86_
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(SetFilePointer))(HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod) asm("__imp__SetFilePointer@16") = SetFilePointer;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(SetFilePointer))(HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod) __asm__("__imp__SetFilePointer@16") = SetFilePointer;
 #else
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(SetFilePointer))(HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod) asm("__imp_SetFilePointer") = SetFilePointer;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(SetFilePointer))(HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod) __asm__("__imp_SetFilePointer") = SetFilePointer;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/SetUnhandledExceptionFilter.c b/mingw-w64-libraries/winstorecompat/src/SetUnhandledExceptionFilter.c
index 17b8c59..b80b785 100644
--- a/mingw-w64-libraries/winstorecompat/src/SetUnhandledExceptionFilter.c
+++ b/mingw-w64-libraries/winstorecompat/src/SetUnhandledExceptionFilter.c
@@ -40,7 +40,7 @@
 }
 
 #ifdef _X86_
-LPTOP_LEVEL_EXCEPTION_FILTER (WINAPI *__MINGW_IMP_SYMBOL(SetUnhandledExceptionFilter))(LPTOP_LEVEL_EXCEPTION_FILTER) asm("__imp__SetUnhandledExceptionFilter@4") = SetUnhandledExceptionFilter;
+LPTOP_LEVEL_EXCEPTION_FILTER (WINAPI *__MINGW_IMP_SYMBOL(SetUnhandledExceptionFilter))(LPTOP_LEVEL_EXCEPTION_FILTER) __asm__("__imp__SetUnhandledExceptionFilter@4") = SetUnhandledExceptionFilter;
 #else
-LPTOP_LEVEL_EXCEPTION_FILTER (WINAPI *__MINGW_IMP_SYMBOL(SetUnhandledExceptionFilter))(LPTOP_LEVEL_EXCEPTION_FILTER) asm("__imp_SetUnhandledExceptionFilter") = SetUnhandledExceptionFilter;
+LPTOP_LEVEL_EXCEPTION_FILTER (WINAPI *__MINGW_IMP_SYMBOL(SetUnhandledExceptionFilter))(LPTOP_LEVEL_EXCEPTION_FILTER) __asm__("__imp_SetUnhandledExceptionFilter") = SetUnhandledExceptionFilter;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/Sleep.c b/mingw-w64-libraries/winstorecompat/src/Sleep.c
index cc714be..bc1ebbd 100644
--- a/mingw-w64-libraries/winstorecompat/src/Sleep.c
+++ b/mingw-w64-libraries/winstorecompat/src/Sleep.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-VOID (WINAPI *__MINGW_IMP_SYMBOL(Sleep))(DWORD dwMilliseconds) asm("__imp__Sleep@4") = Sleep;
+VOID (WINAPI *__MINGW_IMP_SYMBOL(Sleep))(DWORD dwMilliseconds) __asm__("__imp__Sleep@4") = Sleep;
 #else
-VOID (WINAPI *__MINGW_IMP_SYMBOL(Sleep))(DWORD dwMilliseconds) asm("__imp_Sleep") = Sleep;
+VOID (WINAPI *__MINGW_IMP_SYMBOL(Sleep))(DWORD dwMilliseconds) __asm__("__imp_Sleep") = Sleep;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/SleepEx.c b/mingw-w64-libraries/winstorecompat/src/SleepEx.c
index d65ca56..bde9907 100644
--- a/mingw-w64-libraries/winstorecompat/src/SleepEx.c
+++ b/mingw-w64-libraries/winstorecompat/src/SleepEx.c
@@ -39,7 +39,7 @@
 }
 
 #ifdef _X86_
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(SleepEx))(DWORD dwMilliseconds, BOOL bAlertable) asm("__imp__SleepEx@8") = SleepEx;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(SleepEx))(DWORD dwMilliseconds, BOOL bAlertable) __asm__("__imp__SleepEx@8") = SleepEx;
 #else
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(SleepEx))(DWORD dwMilliseconds, BOOL bAlertable) asm("__imp_SleepEx") = SleepEx;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(SleepEx))(DWORD dwMilliseconds, BOOL bAlertable) __asm__("__imp_SleepEx") = SleepEx;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/TerminateProcess.c b/mingw-w64-libraries/winstorecompat/src/TerminateProcess.c
index 026014f..bd42b8d 100644
--- a/mingw-w64-libraries/winstorecompat/src/TerminateProcess.c
+++ b/mingw-w64-libraries/winstorecompat/src/TerminateProcess.c
@@ -42,7 +42,7 @@
 }
 
 #ifdef _X86_
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(TerminateProcess))(HANDLE, UINT) asm("__imp__TerminateProcess@8") = TerminateProcess;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(TerminateProcess))(HANDLE, UINT) __asm__("__imp__TerminateProcess@8") = TerminateProcess;
 #else
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(TerminateProcess))(HANDLE, UINT) asm("__imp_TerminateProcess") = TerminateProcess;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(TerminateProcess))(HANDLE, UINT) __asm__("__imp_TerminateProcess") = TerminateProcess;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/Tls.c b/mingw-w64-libraries/winstorecompat/src/Tls.c
index 1c28938..5c7434e 100644
--- a/mingw-w64-libraries/winstorecompat/src/Tls.c
+++ b/mingw-w64-libraries/winstorecompat/src/Tls.c
@@ -66,13 +66,13 @@
 }
 
 #ifdef _X86_
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(TlsAlloc))(void) asm("__imp__TlsAlloc@0") = TlsAlloc;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsFree))(DWORD) asm("__imp__TlsFree@4") = TlsFree;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsSetValue))(DWORD, LPVOID) asm("__imp__TlsSetValue@8") = TlsSetValue;
-LPVOID (WINAPI *__MINGW_IMP_SYMBOL(TlsGetValue))(DWORD) asm("__imp__TlsGetValue@4") = TlsGetValue;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(TlsAlloc))(void) __asm__("__imp__TlsAlloc@0") = TlsAlloc;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsFree))(DWORD) __asm__("__imp__TlsFree@4") = TlsFree;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsSetValue))(DWORD, LPVOID) __asm__("__imp__TlsSetValue@8") = TlsSetValue;
+LPVOID (WINAPI *__MINGW_IMP_SYMBOL(TlsGetValue))(DWORD) __asm__("__imp__TlsGetValue@4") = TlsGetValue;
 #else
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(TlsAlloc))(void) asm("__imp_TlsAlloc") = TlsAlloc;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsFree))(DWORD) asm("__imp_TlsFree") = TlsFree;
-WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsSetValue))(DWORD, LPVOID) asm("__imp_TlsSetValue") = TlsSetValue;
-LPVOID (WINAPI *__MINGW_IMP_SYMBOL(TlsGetValue))(DWORD) asm("__imp_TlsGetValue") = TlsGetValue;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(TlsAlloc))(void) __asm__("__imp_TlsAlloc") = TlsAlloc;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsFree))(DWORD) __asm__("__imp_TlsFree") = TlsFree;
+WINBOOL (WINAPI *__MINGW_IMP_SYMBOL(TlsSetValue))(DWORD, LPVOID) __asm__("__imp_TlsSetValue") = TlsSetValue;
+LPVOID (WINAPI *__MINGW_IMP_SYMBOL(TlsGetValue))(DWORD) __asm__("__imp_TlsGetValue") = TlsGetValue;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/UnhandledExceptionFilter.c b/mingw-w64-libraries/winstorecompat/src/UnhandledExceptionFilter.c
index 54adc30..5a35183 100644
--- a/mingw-w64-libraries/winstorecompat/src/UnhandledExceptionFilter.c
+++ b/mingw-w64-libraries/winstorecompat/src/UnhandledExceptionFilter.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-LONG (WINAPI *__MINGW_IMP_SYMBOL(UnhandledExceptionFilter))(struct _EXCEPTION_POINTERS *) asm("__imp__UnhandledExceptionFilter@4") = UnhandledExceptionFilter;
+LONG (WINAPI *__MINGW_IMP_SYMBOL(UnhandledExceptionFilter))(struct _EXCEPTION_POINTERS *) __asm__("__imp__UnhandledExceptionFilter@4") = UnhandledExceptionFilter;
 #else
-LONG (WINAPI *__MINGW_IMP_SYMBOL(UnhandledExceptionFilter))(struct _EXCEPTION_POINTERS *) asm("__imp_UnhandledExceptionFilter") = UnhandledExceptionFilter;
+LONG (WINAPI *__MINGW_IMP_SYMBOL(UnhandledExceptionFilter))(struct _EXCEPTION_POINTERS *) __asm__("__imp_UnhandledExceptionFilter") = UnhandledExceptionFilter;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/VirtualProtect.c b/mingw-w64-libraries/winstorecompat/src/VirtualProtect.c
index 88fd06b..acccf65 100644
--- a/mingw-w64-libraries/winstorecompat/src/VirtualProtect.c
+++ b/mingw-w64-libraries/winstorecompat/src/VirtualProtect.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(VirtualProtect))(LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect) asm("__imp__VirtualProtect@16") = VirtualProtect;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(VirtualProtect))(LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect) __asm__("__imp__VirtualProtect@16") = VirtualProtect;
 #else
-BOOL (WINAPI *__MINGW_IMP_SYMBOL(VirtualProtect))(LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect) asm("__imp_VirtualProtect") = VirtualProtect;
+BOOL (WINAPI *__MINGW_IMP_SYMBOL(VirtualProtect))(LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect) __asm__("__imp_VirtualProtect") = VirtualProtect;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/WaitForSingleObject.c b/mingw-w64-libraries/winstorecompat/src/WaitForSingleObject.c
index b5f7b3d..0bba688 100644
--- a/mingw-w64-libraries/winstorecompat/src/WaitForSingleObject.c
+++ b/mingw-w64-libraries/winstorecompat/src/WaitForSingleObject.c
@@ -35,7 +35,7 @@
 }
 
 #ifdef _X86_
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(WaitForSingleObject))(HANDLE hHandle, DWORD dwMilliseconds) asm("__imp__WaitForSingleObject@8") = WaitForSingleObject;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(WaitForSingleObject))(HANDLE hHandle, DWORD dwMilliseconds) __asm__("__imp__WaitForSingleObject@8") = WaitForSingleObject;
 #else
-DWORD (WINAPI *__MINGW_IMP_SYMBOL(WaitForSingleObject))(HANDLE hHandle, DWORD dwMilliseconds) asm("__imp_WaitForSingleObject") = WaitForSingleObject;
+DWORD (WINAPI *__MINGW_IMP_SYMBOL(WaitForSingleObject))(HANDLE hHandle, DWORD dwMilliseconds) __asm__("__imp_WaitForSingleObject") = WaitForSingleObject;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/beginthread.c b/mingw-w64-libraries/winstorecompat/src/beginthread.c
index d9c9d577..e0e286b 100644
--- a/mingw-w64-libraries/winstorecompat/src/beginthread.c
+++ b/mingw-w64-libraries/winstorecompat/src/beginthread.c
@@ -46,9 +46,9 @@
 }
 
 #ifdef _X86_
-uintptr_t (__cdecl *__MINGW_IMP_SYMBOL(_beginthreadex))(void*, unsigned, unsigned (__stdcall *)(void *), void *,unsigned, unsigned*) asm("__imp___beginthreadex") = _beginthreadex;
-void (__cdecl *__MINGW_IMP_SYMBOL(_endthreadex))(unsigned) asm("__imp___endthreadex") = _endthreadex;
+uintptr_t (__cdecl *__MINGW_IMP_SYMBOL(_beginthreadex))(void*, unsigned, unsigned (__stdcall *)(void *), void *,unsigned, unsigned*) __asm__("__imp___beginthreadex") = _beginthreadex;
+void (__cdecl *__MINGW_IMP_SYMBOL(_endthreadex))(unsigned) __asm__("__imp___endthreadex") = _endthreadex;
 #else
-void (__cdecl *__MINGW_IMP_SYMBOL(_beginthreadex))(void*, unsigned, unsigned (__stdcall *)(void *), void *,unsigned, unsigned*) asm("__imp__beginthreadex") = _beginthreadex;
-void (__cdecl *__MINGW_IMP_SYMBOL(_endthreadex))(unsigned) asm("__imp__endthreadex") = _endthreadex;
+void (__cdecl *__MINGW_IMP_SYMBOL(_beginthreadex))(void*, unsigned, unsigned (__stdcall *)(void *), void *,unsigned, unsigned*) __asm__("__imp__beginthreadex") = _beginthreadex;
+void (__cdecl *__MINGW_IMP_SYMBOL(_endthreadex))(unsigned) __asm__("__imp__endthreadex") = _endthreadex;
 #endif
diff --git a/mingw-w64-libraries/winstorecompat/src/getenv.c b/mingw-w64-libraries/winstorecompat/src/getenv.c
index 16d423e..ad23db8 100644
--- a/mingw-w64-libraries/winstorecompat/src/getenv.c
+++ b/mingw-w64-libraries/winstorecompat/src/getenv.c
@@ -33,7 +33,7 @@
 }
 
 #ifdef _X86_
-char *(*__MINGW_IMP_SYMBOL(getenv))(const char *) asm("__imp__getenv") = getenv;
+char *(*__MINGW_IMP_SYMBOL(getenv))(const char *) __asm__("__imp__getenv") = getenv;
 #else
-char *(*__MINGW_IMP_SYMBOL(getenv))(const char *) asm("__imp_getenv") = getenv;
+char *(*__MINGW_IMP_SYMBOL(getenv))(const char *) __asm__("__imp_getenv") = getenv;
 #endif
