diff options
Diffstat (limited to 'src/pies.h')
-rw-r--r-- | src/pies.h | 16 |
1 files changed, 12 insertions, 4 deletions
@@ -419,20 +419,28 @@ extern int diag_output; | |||
419 | 419 | ||
420 | void diag_setup (int flags); | 420 | void diag_setup (int flags); |
421 | 421 | ||
422 | void logmsg (int prio, const char *fmt, ...); | 422 | #if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) |
423 | void logmsg_printf (int prio, const char *fmt, ...); | 423 | # define __attribute__(x) |
424 | #endif | ||
425 | |||
426 | #ifndef PIES_PRINTFLIKE | ||
427 | # define PIES_PRINTFLIKE(fmt,narg) __attribute__ ((__format__ (__printf__, fmt, narg))) | ||
428 | #endif | ||
429 | |||
430 | void logmsg (int prio, const char *fmt, ...) PIES_PRINTFLIKE(2,3); | ||
431 | void logmsg_printf (int prio, const char *fmt, ...) PIES_PRINTFLIKE(2,3); | ||
424 | void logmsg_vprintf (int prio, const char *fmt, va_list ap); | 432 | void logmsg_vprintf (int prio, const char *fmt, va_list ap); |
425 | 433 | ||
426 | extern unsigned debug_level; | 434 | extern unsigned debug_level; |
427 | extern int source_info_option; | 435 | extern int source_info_option; |
428 | void debug_msg (const char *fmt, ...); | 436 | void debug_msg (const char *fmt, ...) PIES_PRINTFLIKE(1,2); |
429 | 437 | ||
430 | #define debug(lev, args) \ | 438 | #define debug(lev, args) \ |
431 | do \ | 439 | do \ |
432 | if (debug_level >= lev) \ | 440 | if (debug_level >= lev) \ |
433 | { \ | 441 | { \ |
434 | if (source_info_option) \ | 442 | if (source_info_option) \ |
435 | logmsg_printf (LOG_DEBUG, "%s:%lu:%s: ", \ | 443 | logmsg_printf (LOG_DEBUG, "%s:%d:%s: ", \ |
436 | __FILE__, __LINE__, __FUNCTION__); \ | 444 | __FILE__, __LINE__, __FUNCTION__); \ |
437 | debug_msg args; \ | 445 | debug_msg args; \ |
438 | } \ | 446 | } \ |