/* include stdlib.h for wchar_t */
#include <stdlib.h>
#endif /* HAVE_WCHAR_H */
+
+ #ifdef HAVE_WIDEC_H
+ #include <widec.h>
+ #endif
#endif /* wxUSE_WCHAR_T */
/* ---------------------------------------------------------------------------- */
#define wxStrtol _tcstol
#define wxStrtoul _tcstoul
#ifdef __VISUALC__
- #if __VISUALC__ >= 1300
+ #if __VISUALC__ >= 1300 && !defined(__WXWINCE__)
#define wxStrtoll _tcstoi64
#define wxStrtoull _tcstoui64
#endif /* VC++ 7+ */
#else
extern
#endif
- int snprintf(char *str, size_t size, const char *format, ...);
+ WXDLLIMPEXP_BASE int snprintf(char *str, size_t size, const char *format, ...);
#endif /* !HAVE_SNPRINTF_DECL */
/* Wrapper for vsnprintf if it's 3rd parameter is non-const. Note: the
/*
MinGW MSVCRT has non-standard vswprintf() (for MSVC compatibility
presumably) and normally _vsnwprintf() is used instead
-
- vswprintf() under (early versions of) OS X is buggy
*/
-#if defined(HAVE_VSWPRINTF) && (defined(__MINGW32__) || defined(__DARWIN__))
+#if defined(HAVE_VSWPRINTF) && defined(__MINGW32__)
#undef HAVE_VSWPRINTF
#endif
#else /* !HAVE_UNIX98_PRINTF */
/*
The only compiler with positional parameters support under Windows
- is VC++ 8.0 which provides a new xxprintf_p() functions family
+ is VC++ 8.0 which provides a new xxprintf_p() functions family.
+ The 2003 PSDK includes a slightly earlier version of VC8 than the
+ main release and does not have the printf_p functions.
*/
- #if defined(__VISUALC__) && __VISUALC__ >= 1400
+ #if defined _MSC_FULL_VER && _MSC_FULL_VER >= 140050727 && !defined __WXWINCE__
#if wxUSE_UNICODE
#define wxVsnprintf_ _vswprintf_p
#else