added wxPtrToUInt() to cast pointer to an integer type without warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -740,6 +740,24 @@ typedef wxUint32 wxDword;
|
|||||||
#error "Pointers can't be stored inside integer types."
|
#error "Pointers can't be stored inside integer types."
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* And also define a simple function to cast pointer to it. */
|
||||||
|
inline wxUIntPtr wxPtrToUInt(void *p)
|
||||||
|
{
|
||||||
|
// VC++ 7.1 gives warnings about casts such as below even when they're
|
||||||
|
// explicit with /Wp64 option, suppress them as we really know what we're
|
||||||
|
// doing here
|
||||||
|
#ifdef __VISUALC__
|
||||||
|
#pragma warning(disable: 4311) /* pointer truncation from '' to '' */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return wx_reinterpret_cast(wxUIntPtr, p);
|
||||||
|
|
||||||
|
#ifdef __VISUALC__
|
||||||
|
#pragma warning(default: 4311)
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* 64 bit */
|
/* 64 bit */
|
||||||
|
|
||||||
/* NB: we #define and not typedef wxLongLong_t because we want to be able to */
|
/* NB: we #define and not typedef wxLongLong_t because we want to be able to */
|
||||||
|
Reference in New Issue
Block a user