00001 /* internal.h 00002 00003 Internal definitions used by Expat. This is not needed to compile 00004 client code. 00005 00006 The following definitions are made: 00007 00008 FASTCALL -- Used for most internal functions to specify that the 00009 fastest possible calling convention be used. 00010 00011 inline -- Used for selected internal functions for which inlining 00012 may improve performance on some platforms. 00013 */ 00014 00015 #if defined(__GNUC__) 00016 /* Last minute instability reported with egcs on a RedHat Linux 7.3 00017 box; argh! 00018 */ 00019 /* #define FASTCALL __attribute__((stdcall, regparm(3))) */ 00020 #elif defined(WIN32) 00021 /* XXX This seems to have an unexpected negative effect on Windows so 00022 we'll disable it for now on that platform. It may be reconsidered 00023 for a future release if it can be made more effective. 00024 */ 00025 /* #define FASTCALL __fastcall */ 00026 #endif 00027 00028 #ifndef FASTCALL 00029 #define FASTCALL 00030 #endif 00031 00032 #ifndef XML_MIN_SIZE 00033 #if !defined(__cplusplus) && !defined(inline) 00034 #ifdef __GNUC__ 00035 #define inline __inline 00036 #endif /* __GNUC__ */ 00037 #endif 00038 #endif /* XML_MIN_SIZE */ 00039 00040 #ifdef __cplusplus 00041 #define inline inline 00042 #else 00043 #ifndef inline 00044 #define inline 00045 #endif 00046 #endif