X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dcb68102796280b3e54979ae95738089914ce842..96e2aec50abc9d69ecd9b37d0901cb1f021dfe8c:/include/wx/defs.h diff --git a/include/wx/defs.h b/include/wx/defs.h index ea65618572..32142feef6 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -14,10 +14,6 @@ #ifndef _WX_DEFS_H_ #define _WX_DEFS_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "defs.h" -#endif - /* ---------------------------------------------------------------------------- */ /* compiler and OS identification */ /* ---------------------------------------------------------------------------- */ @@ -82,12 +78,6 @@ #endif #endif /* __VISUALC__ */ -/* suppress some Watcom C++ warnings */ -#ifdef __WATCOMC__ -# pragma warning 849 9 /* Disable 'virtual function hidden' */ -# pragma warning 549 9 /* Disable 'operand contains compiler generated information' */ -#endif /* __VISUALC__ */ - /* suppress some Salford C++ warnings */ #ifdef __SALFORDC__ # pragma suppress 353 /* Possible nested comments */ @@ -785,8 +775,8 @@ typedef wxUint32 wxDword; #endif #ifdef __cplusplus -/* And also define a simple function to cast pointer to it. */ -inline wxUIntPtr wxPtrToUInt(void *p) +/* And also define a couple of simple functions to cast pointer to/from it. */ +inline wxUIntPtr wxPtrToUInt(const void *p) { /* VC++ 7.1 gives warnings about casts such as below even when they're @@ -803,6 +793,19 @@ inline wxUIntPtr wxPtrToUInt(void *p) #pragma warning(default: 4311) #endif } + +inline void *wxUIntToPtr(wxUIntPtr p) +{ +#ifdef __VISUALC__ + #pragma warning(disable: 4312) /* conversion to type of greater size */ +#endif + + return wx_reinterpret_cast(void *, p); + +#ifdef __VISUALC__ + #pragma warning(default: 4312) +#endif +} #endif /*__cplusplus*/ @@ -1054,12 +1057,6 @@ typedef float wxFloat32; #define wxUINT64_SWAP_ON_BE(val) (val) #endif -/* Macros to convert from unsigned long to void pointer. */ -/* High order truncation occurs if the respective type is not large enough. */ -#define WXPTRULONGSLICE (((wxBYTE_ORDER==wxBIG_ENDIAN)&&(sizeof(void*)==8)&&(sizeof(unsigned long)<8))?1:0) -#define wxPtrToULong(p) (((unsigned long*)(&(p)))[WXPTRULONGSLICE]) -#define wxULongToPtr(p,n) (p=NULL,wxPtrToULong(p)=(unsigned long)(n),p) - /* ---------------------------------------------------------------------------- */ /* Geometric flags */ /* ---------------------------------------------------------------------------- */