]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/wxcrtbase.h
Richtext interface fixes and additions for Phoenix
[wxWidgets.git] / include / wx / wxcrtbase.h
index 406190292c6204df475e6890520f1df0117861ae..c1269805337d8eed0c12d10d9d91543eef63b5ee 100644 (file)
@@ -164,14 +164,15 @@ WXDLLIMPEXP_BASE void *calloc( size_t num, size_t size );
     #define wxCRT_StrxfrmW   wcsxfrm
 #endif /* __WXWINCE__ */
 
-/* Almost all compiler have strdup(), but VC++ for CE doesn't provide it.
-   Another special case is gcc in strict ANSI mode: normally it doesn't provide
-   strdup() but MinGW does provide it under MSVC-compatible name so test for it
-   before checking __WX_STRICT_ANSI_GCC__. */
-#if (defined(__VISUALC__) && __VISUALC__ >= 1400) || \
-    defined(__MINGW32__)
+/* Almost all compilers have strdup(), but VC++ and MinGW call it _strdup().
+   And it's not available in MinGW strict ANSI mode nor under Windows CE. */
+#if (defined(__VISUALC__) && __VISUALC__ >= 1400)
     #define wxCRT_StrdupA _strdup
-#elif !(defined(__WXWINCE__) || defined(__WX_STRICT_ANSI_GCC__))
+#elif defined(__MINGW32__)
+    #ifndef __WX_STRICT_ANSI_GCC__
+        #define wxCRT_StrdupA _strdup
+    #endif
+#elif !defined(__WXWINCE__)
     #define wxCRT_StrdupA strdup
 #endif