X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..42d0df0030abbac4ca11a78b2f529133e3c9d986:/include/wx/debug.h diff --git a/include/wx/debug.h b/include/wx/debug.h index e08835bf74..c2fc985ec2 100644 --- a/include/wx/debug.h +++ b/include/wx/debug.h @@ -1,12 +1,12 @@ /** -* Name: wx/debug.h -* Purpose: Misc debug functions and macros -* Author: Vadim Zeitlin +* Name: wx/debug.h +* Purpose: Misc debug functions and macros +* Author: Vadim Zeitlin * Modified by: Ryan Norton (Converted to C) -* Created: 29/01/98 -* RCS-ID: $Id$ -* Copyright: (c) 1998 Vadim Zeitlin -* Licence: wxWidgets licence +* Created: 29/01/98 +* RCS-ID: $Id$ +* Copyright: (c) 1998 Vadim Zeitlin +* Licence: wxWindows licence */ /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ @@ -52,7 +52,7 @@ /* */ /* All debugging macros rely on ASSERT() which in turn calls user-defined */ /* OnAssert() function. To keep things simple, it's called even when the */ -/* expression is TRUE (i.e. everything is ok) and by default does nothing: just */ +/* expression is true (i.e. everything is ok) and by default does nothing: just */ /* returns the same value back. But if you redefine it to do something more sexy */ /* (popping up a message box in your favourite GUI, sending you e-mail or */ /* whatever) it will affect all ASSERTs, FAILs and CHECKs in your code. */ @@ -125,9 +125,9 @@ #endif /* __WXDEBUG__ */ #ifdef __cplusplus - /* Use of wxFalse instead of FALSE suppresses compiler warnings about testing */ + /* Use of wxFalse instead of false suppresses compiler warnings about testing */ /* constant expression */ - WXDLLIMPEXP_DATA_BASE(extern const bool) wxFalse; + extern WXDLLIMPEXP_DATA_BASE(const bool) wxFalse; #endif #define wxAssertFailure wxFalse @@ -198,8 +198,17 @@ It may be used both within a function and in the global scope. */ -#define wxCOMPILE_TIME_ASSERT(expr, msg) \ - struct wxMAKE_UNIQUE_ASSERT_NAME { unsigned int msg: expr; } +#if defined(__WATCOMC__) && defined(__cplusplus) + /* avoid "unused symbol" warning */ + #define wxCOMPILE_TIME_ASSERT(expr, msg) \ + class wxMAKE_UNIQUE_ASSERT_NAME { \ + unsigned int msg: expr; \ + wxMAKE_UNIQUE_ASSERT_NAME() { wxUnusedVar(msg); } \ + } +#else + #define wxCOMPILE_TIME_ASSERT(expr, msg) \ + struct wxMAKE_UNIQUE_ASSERT_NAME { unsigned int msg: expr; } +#endif /* When using VC++ 6 with "Edit and Continue" on, the compiler completely @@ -224,12 +233,15 @@ /* other miscellaneous debugger-related functions */ /* ---------------------------------------------------------------------------- */ -/* return true if we're running under debugger */ -/* */ -/* currently this only really works under Mac in CodeWarrior builds, it always */ -/* returns false otherwise */ +/* + Return true if we're running under debugger. + + Currently this only really works under Win32 and Mac in CodeWarrior builds, + it always returns false in other cases. + */ #ifdef __cplusplus - #ifdef __WXMAC__ + /* ABX: check __WIN32__ instead of __WXMSW__ for the same MSWBase in any Win32 port */ + #if defined(__WXMAC__) || defined(__WIN32__) extern bool WXDLLIMPEXP_BASE wxIsDebuggerRunning(); #else /* !Mac */ inline bool wxIsDebuggerRunning() { return false; } @@ -237,4 +249,3 @@ #endif /* __cplusplus */ #endif /* _WX_DEBUG_H_ */ -