1 /* internal.h 2 3 Internal definitions used by Expat. This is not needed to compile 4 client code. 5 6 The following definitions are made: 7 8 FASTCALL -- Used for most internal functions to specify that the 9 fastest possible calling convention be used. 10 11 inline -- Used for selected internal functions for which inlining 12 may improve performance on some platforms. 13 */ 14 15 #if defined(__GNUC__) 16 /* Last minute instability reported with egcs on a RedHat Linux 7.3 17 box; argh! 18 */ 19 /* #define FASTCALL __attribute__((stdcall, regparm(3))) */ 20 #elif defined(WIN32) 21 /* XXX This seems to have an unexpected negative effect on Windows so 22 we'll disable it for now on that platform. It may be reconsidered 23 for a future release if it can be made more effective. 24 */ 25 /* #define FASTCALL __fastcall */ 26 #endif 27 28 #ifndef FASTCALL 29 #define FASTCALL 30 #endif 31 32 #ifndef XML_MIN_SIZE 33 #if !defined(__cplusplus) && !defined(inline) 34 #ifdef __GNUC__ 35 #define inline __inline 36 #endif /* __GNUC__ */ 37 #endif 38 #endif /* XML_MIN_SIZE */ 39 40 #ifdef __cplusplus 41 #define inline inline 42 #else 43 #ifndef inline 44 #define inline 45 #endif 46 #endif 47