https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9556390f8fcc4ae629daa…
commit 9556390f8fcc4ae629daaae45c9fa1b2f859689f
Author: Amine Khaldi <amine.khaldi(a)reactos.org>
AuthorDate: Tue Oct 31 15:19:49 2017 +0100
[XDK][DDK] Take the gcc path for __assert_annotation{A,W} and
__CREATE_NTOS_DATA_IMPORT_ALIAS when compiling with clang-cl. Include kdfuncs.h before
rtlfuncs.h to have DbgPrint() defined before using it. CORE-11799 (#94)
---
sdk/include/xdk/rtlfuncs.h | 2 +-
sdk/include/xdk/wdm.template.h | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/sdk/include/xdk/rtlfuncs.h b/sdk/include/xdk/rtlfuncs.h
index b86be14a3c..ac5214336e 100644
--- a/sdk/include/xdk/rtlfuncs.h
+++ b/sdk/include/xdk/rtlfuncs.h
@@ -3200,7 +3200,7 @@ RtlCheckBit(
#define RtlUlongByteSwap(_x) _byteswap_ulong((_x))
#define RtlUlonglongByteSwap(_x) _byteswap_uint64((_x))
-#if defined(_MSC_VER)
+#if defined(_MSC_VER) && !defined(__clang__)
# define __assert_annotationA(msg) __annotation(L"Debug",
L"AssertFail", L ## msg)
# define __assert_annotationW(msg) __annotation(L"Debug",
L"AssertFail", msg)
#else
diff --git a/sdk/include/xdk/wdm.template.h b/sdk/include/xdk/wdm.template.h
index 1f7b392a1a..9893977c09 100644
--- a/sdk/include/xdk/wdm.template.h
+++ b/sdk/include/xdk/wdm.template.h
@@ -150,7 +150,7 @@ $define(USHORT=USHORT)
#define __IMPORTSYMBOL(_Name) "__imp_"#_Name
#define __IMPORTNAME(_Name) __imp_##_Name
#endif
-#ifdef _MSC_VER
+#if defined(_MSC_VER) && !defined(__clang__)
#define __CREATE_NTOS_DATA_IMPORT_ALIAS(_Name) \
__pragma(comment(linker, "/alternatename:"__SYMBOL(_Name) "="
__IMPORTSYMBOL(_Name)))
#else /* !_MSC_VER */
@@ -251,6 +251,7 @@ $include (obtypes.h)
$include (pstypes.h)
$include (wmitypes.h)
+$include (kdfuncs.h)
$include (kefuncs.h)
$include (rtlfuncs.h)
$include (mmfuncs.h)
@@ -262,7 +263,6 @@ $include (exfuncs.h)
$include (obfuncs.h)
$include (psfuncs.h)
$include (wmifuncs.h)
-$include (kdfuncs.h)
$include (halfuncs.h)
$include (nttmapi.h)
$include (zwfuncs.h)