__cdecl should be used for MS compilers even if MS extensions are turned off.
diff --git a/expat/lib/expat_external.h b/expat/lib/expat_external.h
index df9e893..2c03284 100644
--- a/expat/lib/expat_external.h
+++ b/expat/lib/expat_external.h
@@ -34,7 +34,7 @@
    system headers may assume the cdecl convention.
 */
 #ifndef XMLCALL
-#if defined(XML_USE_MSC_EXTENSIONS)
+#if defined(_MSC_VER)
 #define XMLCALL __cdecl
 #elif defined(__GNUC__) && defined(__i386) && !defined(__INTEL_COMPILER)
 #define XMLCALL __attribute__((cdecl))