/////////////////////////////////////////////////////////////////////////////
// This class closely follows the implementation of the boost
-// library scoped_ptr and is an adaption for c++ macro's in
-// the wxWindows project. The original authors of the boost
+// library scoped_ptr and is an adaption for c++ macro's in
+// the wxWidgets project. The original authors of the boost
// scoped_ptr are given below with their respective copyrights.
// (C) Copyright Greg Colvin and Beman Dawes 1998, 1999.
still force a semicolon after the macro
*/
+#ifdef __WATCOMC__
+ #define wxPRE_NO_WARNING_SCOPE for(int i=0;i<1;i++)
+ #define wxPOST_NO_WARNING_SCOPE
+#else
+ #define wxPRE_NO_WARNING_SCOPE do
+ #define wxPOST_NO_WARNING_SCOPE while ( 0 )
+#endif
+
#define wxCHECKED_DELETE(ptr) \
- do \
+ wxPRE_NO_WARNING_SCOPE \
{ \
typedef char complete[sizeof(*ptr)]; \
delete ptr; \
- } while ( 0 )
+ } wxPOST_NO_WARNING_SCOPE
#define wxCHECKED_DELETE_ARRAY(ptr) \
- do \
+ wxPRE_NO_WARNING_SCOPE \
{ \
typedef char complete[sizeof(*ptr)]; \
delete [] ptr; \
- } while ( 0 )
+ } wxPOST_NO_WARNING_SCOPE
/* These scoped pointers are *not* assignable and cannot be used
within a container. Look for wxDECLARE_SHARED_PTR for this