Defining wxIntPtr as ssize_t or long in 32 bit builds doesn't really change
anything but using long means that we can replace longs in the existing API
with wxIntPtr without breaking compatibility, like in wxListCtrl::SortItems().
It is also more compatible with 64 bit builds where wxIntPtr is long already.
So it has some minor advantages and no apparent drawbacks.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67732
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
Define signed and unsigned integral types big enough to contain all of long,
size_t and void *.
*/
Define signed and unsigned integral types big enough to contain all of long,
size_t and void *.
*/
-#if SIZEOF_SIZE_T >= SIZEOF_VOID_P
+#if SIZEOF_LONG >= SIZEOF_VOID_P
+ /*
+ Normal case when long is the largest integral type.
+ */
+ typedef long wxIntPtr;
+ typedef unsigned long wxUIntPtr;
+#elif SIZEOF_SIZE_T >= SIZEOF_VOID_P
/*
Win64 case: size_t is the only integral type big enough for "void *".
/*
Win64 case: size_t is the only integral type big enough for "void *".
*/
typedef wxW64 ssize_t wxIntPtr;
typedef size_t wxUIntPtr;
*/
typedef wxW64 ssize_t wxIntPtr;
typedef size_t wxUIntPtr;
-#elif SIZEOF_LONG >= SIZEOF_VOID_P
- /*
- Normal case when long is the largest integral type.
- */
- typedef long wxIntPtr;
- typedef unsigned long wxUIntPtr;
#else
/*
This should never happen for the current architectures but if you're
#else
/*
This should never happen for the current architectures but if you're