Author: akhaldi
Date: Sun Sep 14 15:19:20 2014
New Revision: 64148
URL:
http://svn.reactos.org/svn/reactos?rev=64148&view=rev
Log:
[XDK][DDK]
* Work around what looks like a bug in GCC's handling of #pragma redefine_extname. Its
behavior regarding additional underscore prefixes depends on the order of pragma and
symbol declaration with GCC, while it's consistent with Clang. Brought to you by
Thomas Faber, reviewed by Timo Kreuzer.
CORE-8516
Modified:
trunk/reactos/include/ddk/wdm.h
trunk/reactos/include/xdk/rtltypes.h
trunk/reactos/include/xdk/wdm.template.h
Modified: trunk/reactos/include/ddk/wdm.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/wdm.h?rev=6414…
==============================================================================
--- trunk/reactos/include/ddk/wdm.h [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/wdm.h [iso-8859-1] Sun Sep 14 15:19:20 2014
@@ -139,7 +139,7 @@
#ifdef _M_IX86
#define __SYMBOL(_Name) "_"#_Name
#define __IMPORTSYMBOL(_Name) "__imp__"#_Name
-#define __IMPORTNAME(_Name) _imp__##_Name
+#define __IMPORTNAME(_Name) __imp__##_Name
#else
#define __SYMBOL(_Name) #_Name
#define __IMPORTSYMBOL(_Name) "__imp_"#_Name
@@ -586,11 +586,11 @@
extern BOOLEAN NlsMbOemCodePageTag;
#define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
#else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbCodePageTag)
extern BOOLEAN *NlsMbCodePageTag;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbCodePageTag)
#define NLS_MB_CODE_PAGE_TAG (*NlsMbCodePageTag)
+__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbOemCodePageTag)
extern BOOLEAN *NlsMbOemCodePageTag;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbOemCodePageTag)
#define NLS_MB_OEM_CODE_PAGE_TAG (*NlsMbOemCodePageTag)
#endif
Modified: trunk/reactos/include/xdk/rtltypes.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/xdk/rtltypes.h?rev…
==============================================================================
--- trunk/reactos/include/xdk/rtltypes.h [iso-8859-1] (original)
+++ trunk/reactos/include/xdk/rtltypes.h [iso-8859-1] Sun Sep 14 15:19:20 2014
@@ -203,11 +203,11 @@
extern BOOLEAN NlsMbOemCodePageTag;
#define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
#else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbCodePageTag)
extern BOOLEAN *NlsMbCodePageTag;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbCodePageTag)
#define NLS_MB_CODE_PAGE_TAG (*NlsMbCodePageTag)
+__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbOemCodePageTag)
extern BOOLEAN *NlsMbOemCodePageTag;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbOemCodePageTag)
#define NLS_MB_OEM_CODE_PAGE_TAG (*NlsMbOemCodePageTag)
#endif
Modified: trunk/reactos/include/xdk/wdm.template.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/xdk/wdm.template.h…
==============================================================================
--- trunk/reactos/include/xdk/wdm.template.h [iso-8859-1] (original)
+++ trunk/reactos/include/xdk/wdm.template.h [iso-8859-1] Sun Sep 14 15:19:20 2014
@@ -139,7 +139,7 @@
#ifdef _M_IX86
#define __SYMBOL(_Name) "_"#_Name
#define __IMPORTSYMBOL(_Name) "__imp__"#_Name
-#define __IMPORTNAME(_Name) _imp__##_Name
+#define __IMPORTNAME(_Name) __imp__##_Name
#else
#define __SYMBOL(_Name) #_Name
#define __IMPORTSYMBOL(_Name) "__imp_"#_Name