From: Laurent Mazet Date: Fri, 11 Apr 2025 03:59:57 +0000 (+0200) Subject: count errors (and warnings) inside verbose macro X-Git-Url: https://secure.softndesign.org/git/?a=commitdiff_plain;h=be135313f493e1da9b68c1d1e8acc38c95e830ea;p=morep.git count errors (and warnings) inside verbose macro --- diff --git a/verbose.h b/verbose.h index 3382daa..3eddc94 100644 --- a/verbose.h +++ b/verbose.h @@ -46,7 +46,8 @@ __BEGIN_DECLS @param init initial value */ #define DECLARE_VERBOSE_LEVEL(module, init) \ - int verbose_##module = init; + int verbose_##module = init; \ + int verbose_errors_##module = 0; /** Change a verbose level. @@ -59,7 +60,7 @@ __BEGIN_DECLS extern int verbose_##module; \ verbose_##module = level; \ } while(0) - + /** Execute a statement (mostly a message display) depending of a level. Level is defined by global variable verbose_`module`. @@ -72,6 +73,9 @@ __BEGIN_DECLS do { \ char __attribute__ ((unused)) *_level = #level; \ extern int verbose_##module; \ + extern int verbose_errors_##module; \ + if (level < INFO) \ + verbose_errors_##module++; \ if (level > verbose_##module) \ break; \ if (VERBOSE_COLOR) { \ @@ -119,6 +123,14 @@ __BEGIN_DECLS __END_DECLS +/** + Get error and waring call number. + + @param module module name + @param level verbose level +*/ +#define GET_VERBOSE_ERRORS(module) verbose_errors_##module + #endif /* __VERBOSE_H__ */ /* vim: set ts=4 sw=4 si et: */