|
@@ -285,14 +285,23 @@ extern void dbg_pause ( void );
|
285
|
285
|
extern void dbg_more ( void );
|
286
|
286
|
|
287
|
287
|
/* Allow for selective disabling of enabled debug levels */
|
|
288
|
+#define __debug_disable( object ) _C2 ( __debug_disable_, object )
|
|
289
|
+char __debug_disable(OBJECT);
|
|
290
|
+#define DBG_DISABLE_OBJECT( object, level ) do { \
|
|
291
|
+ extern char __debug_disable(object); \
|
|
292
|
+ __debug_disable(object) |= (level); \
|
|
293
|
+ } while ( 0 )
|
|
294
|
+#define DBG_ENABLE_OBJECT( object, level ) do { \
|
|
295
|
+ extern char __debug_disable(object); \
|
|
296
|
+ __debug_disable(object) &= ~(level); \
|
|
297
|
+ } while ( 0 )
|
288
|
298
|
#if DBGLVL_MAX
|
289
|
|
-int __debug_disable;
|
290
|
|
-#define DBGLVL ( DBGLVL_MAX & ~__debug_disable )
|
|
299
|
+#define DBGLVL ( DBGLVL_MAX & ~__debug_disable(OBJECT) )
|
291
|
300
|
#define DBG_DISABLE( level ) do { \
|
292
|
|
- __debug_disable |= (level); \
|
|
301
|
+ __debug_disable(OBJECT) |= ( (level) & DBGLVL_MAX ); \
|
293
|
302
|
} while ( 0 )
|
294
|
303
|
#define DBG_ENABLE( level ) do { \
|
295
|
|
- __debug_disable &= ~(level); \
|
|
304
|
+ __debug_disable(OBJECT) &= ~( (level) & DBGLVL_MAX ); \
|
296
|
305
|
} while ( 0 )
|
297
|
306
|
#else
|
298
|
307
|
#define DBGLVL 0
|