X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7d9550df507d5522ac76887e5876b314b729ed50..3a71210569f5cefca56cc2244d4a244e2649a8df:/include/wx/debug.h diff --git a/include/wx/debug.h b/include/wx/debug.h index 80099fa474..70e164d6e9 100644 --- a/include/wx/debug.h +++ b/include/wx/debug.h @@ -19,6 +19,7 @@ #include "wx/chartype.h" // for __TFILE__ and wxChar #include "wx/cpp.h" // for __WXFUNCTION__ +#include "wx/dlimpexp.h" // for WXDLLIMPEXP_FWD_BASE class WXDLLIMPEXP_FWD_BASE wxString; class WXDLLIMPEXP_FWD_BASE wxCStrData; @@ -379,6 +380,24 @@ extern void WXDLLIMPEXP_BASE wxOnAssert(const char *file, unsigned int msg: expr; \ wxMAKE_UNIQUE_ASSERT_NAME() { wxUnusedVar(msg); } \ } +#elif defined( __VMS ) +namespace wxdebug{ + +// HP aCC cannot deal with missing names for template value parameters +template struct STATIC_ASSERTION_FAILURE; + +template <> struct STATIC_ASSERTION_FAILURE { enum { value = 1 }; }; + +// HP aCC cannot deal with missing names for template value parameters +template struct static_assert_test{}; + +} + #define WX_JOIN( X, Y ) X##Y + #define WX_STATIC_ASSERT_BOOL_CAST(x) (bool)(x) + #define wxCOMPILE_TIME_ASSERT(expr, msg) \ + typedef ::wxdebug::static_assert_test<\ + sizeof(::wxdebug::STATIC_ASSERTION_FAILURE< WX_STATIC_ASSERT_BOOL_CAST( expr ) >)>\ + WX_JOIN(wx_static_assert_typedef_, __LINE__) #else #define wxCOMPILE_TIME_ASSERT(expr, msg) \ struct wxMAKE_UNIQUE_ASSERT_NAME { unsigned int msg: expr; }