Win64 compilation fixes: use wxUIntPtr instead of long

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2004-02-10 12:58:23 +00:00
parent a369f7c88a
commit af5b273c11

View File

@ -35,7 +35,7 @@
// we cast the value to long from which we cast it to void * in IndexForInsert: // we cast the value to long from which we cast it to void * in IndexForInsert:
// this can't work if the pointers are not big enough // this can't work if the pointers are not big enough
wxCOMPILE_TIME_ASSERT( sizeof(long) <= sizeof(void *), wxCOMPILE_TIME_ASSERT( sizeof(wxUIntPtr) <= sizeof(void *),
wxArraySizeOfPtrLessSizeOfLong ); // < 32 symbols wxArraySizeOfPtrLessSizeOfLong ); // < 32 symbols
// ============================================================================ // ============================================================================
@ -326,8 +326,8 @@ size_t name::IndexForInsert(T lItem, CMPFUNC fnCompare) const \
while ( lo < hi ) { \ while ( lo < hi ) { \
i = (lo + hi)/2; \ i = (lo + hi)/2; \
\ \
res = (*fnCompare)((const void *)(long)lItem, \ res = (*fnCompare)((const void *)(wxUIntPtr)lItem, \
(const void *)(long)(m_pItems[i])); \ (const void *)(wxUIntPtr)(m_pItems[i])); \
if ( res < 0 ) \ if ( res < 0 ) \
hi = i; \ hi = i; \
else if ( res > 0 ) \ else if ( res > 0 ) \
@ -347,9 +347,10 @@ int name::Index(T lItem, CMPFUNC fnCompare) const \
size_t n = IndexForInsert(lItem, fnCompare); \ size_t n = IndexForInsert(lItem, fnCompare); \
\ \
return (n >= m_nCount || \ return (n >= m_nCount || \
(*fnCompare)((const void *)(long)lItem, \ (*fnCompare)((const void *)(wxUIntPtr)lItem, \
((const void *)(long)m_pItems[n]))) ? wxNOT_FOUND \ ((const void *)(wxUIntPtr)m_pItems[n]))) \
: (int)n; \ ? wxNOT_FOUND \
: (int)n; \
} \ } \
\ \
/* removes item from array (by index) */ \ /* removes item from array (by index) */ \