#ifndef NDEBUG
#define ASSERT_LIVE_IS_ALLOWED() \
- static bool passed_here_once;\
- if (parsed_objects_should_be_dead && !passed_here_once) { \
- ::programming_error (string ("Parsed object should be dead: ") + __PRETTY_FUNCTION__ ); \
- passed_here_once = true;\
- }
+ do { \
+ static bool passed_here_once;\
+ if (parsed_objects_should_be_dead && !passed_here_once) { \
+ ::programming_error (string ("Parsed object should be dead: ") + __PRETTY_FUNCTION__ ); \
+ passed_here_once = true;\
+ } \
+ } \
+ while (0)
#else
-#define ASSERT_LIVE_IS_ALLOWED() {};
+#define ASSERT_LIVE_IS_ALLOWED() do { } \
+ while (0)
#endif
#endif /* SMOBS_HH */