#define _LEAVE_STR "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"
-#define _DBG_ENTER(A) DBG_PRINT("%s:%.*s:%s\n", DBG_NAME(A), ++DBG_LEVEL(A), _ENTER_STR, __FUNC__)
-#define _DBG_LEAVE(A) DBG_PRINT("%s:%.*s:%s\n", DBG_NAME(A), DBG_LEVEL(A)--, _LEAVE_STR, __FUNC__)
+#define _DBG_ENTER(A) \
+ DBG_PRINT("%s:%.*s:%s\n", DBG_NAME(A), ++DBG_LEVEL(A), \
+ _ENTER_STR, __func__)
+#define _DBG_LEAVE(A) \
+ DBG_PRINT("%s:%.*s:%s\n", DBG_NAME(A), DBG_LEVEL(A)--, \
+ _LEAVE_STR, __func__)
-#define DBG_FUNC(F) static const char *__FUNC__ = F;
+#define DBG_FUNC(F)
#define DBG_ENTER(A) {if (DBG_FLAGS(A) & DBG_TRACE_ON) \
_DBG_ENTER(A); }
DBG_PRINT(" %s -- "F"\n", N, S); }
-#define DBG_ERROR(A, S...) {if (DBG_FLAGS(A) & DBG_ERROR_ON) {\
- DBG_PRINT("%s:ERROR:%s ", DBG_NAME(A), __FUNC__);\
- DBG_PRINTC(S); \
- DBG_TRAP; \
- } \
- }
+#define DBG_ERROR(A, S...) do { \
+ if (DBG_FLAGS(A) & DBG_ERROR_ON) { \
+ DBG_PRINT("%s:ERROR:%s ", DBG_NAME(A), __func__); \
+ DBG_PRINTC(S); \
+ DBG_TRAP; \
+ } } while (0)
-#define DBG_WARNING(A, S...) {if (DBG_FLAGS(A) & DBG_WARNING_ON) {\
- DBG_PRINT("%s:WARNING:%s ", DBG_NAME(A), __FUNC__);\
- DBG_PRINTC(S); } }
+#define DBG_WARNING(A, S...) do { \
+ if (DBG_FLAGS(A) & DBG_WARNING_ON) { \
+ DBG_PRINT("%s:WARNING:%s ", DBG_NAME(A), __func__); \
+ DBG_PRINTC(S); \
+ } } while (0)
-#define DBG_NOTICE(A, S...) {if (DBG_FLAGS(A) & DBG_NOTICE_ON) {\
- DBG_PRINT("%s:NOTICE:%s ", DBG_NAME(A), __FUNC__);\
- DBG_PRINTC(S); \
- } \
- }
+#define DBG_NOTICE(A, S...) do { \
+ if (DBG_FLAGS(A) & DBG_NOTICE_ON) { \
+ DBG_PRINT("%s:NOTICE:%s ", DBG_NAME(A), __func__); \
+ DBG_PRINTC(S); \
+ } } while (0)
-#define DBG_TRACE(A, S...) do {if (DBG_FLAGS(A) & DBG_TRACE_ON) {\
- DBG_PRINT("%s:%s ", DBG_NAME(A), __FUNC__);\
- DBG_PRINTC(S); } } while (0)
+#define DBG_TRACE(A, S...) do { \
+ if (DBG_FLAGS(A) & DBG_TRACE_ON) { \
+ DBG_PRINT("%s:%s ", DBG_NAME(A), __func__); \
+ DBG_PRINTC(S); \
+ } } while (0)
#define DBG_RX(A, S...) {if (DBG_FLAGS(A) & DBG_RX_ON) {\
DBG_PRINT(S); } }
-#define DBG_ASSERT(C) { \
- if (!(C)) {\
- DBG_PRINT("ASSERT(%s) -- %s#%d (%s)\n", \
- #C, __FILE__, __LINE__, __FUNC__); \
- DBG_TRAP; \
- } \
- }
+#define DBG_ASSERT(C) do { \
+ if (!(C)) { \
+ DBG_PRINT("ASSERT(%s) -- %s#%d (%s)\n", \
+ #C, __FILE__, __LINE__, __func__); \
+ DBG_TRAP; \
+ } } while (0)
typedef struct {
char *dbgName;