diff options
Diffstat (limited to 'src/util.hpp')
-rw-r--r-- | src/util.hpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/util.hpp b/src/util.hpp index ff173c8..5d602ed 100644 --- a/src/util.hpp +++ b/src/util.hpp @@ -27,6 +27,9 @@ extern "C" { #include <afb/afb-binding.h> }; +#define CONCAT_(X, Y) X##Y +#define CONCAT(X, Y) CONCAT_(X, Y) + #ifdef __GNUC__ #define ATTR_FORMAT(stringindex, firsttocheck) \ __attribute__((format(printf, stringindex, firsttocheck))) @@ -50,13 +53,10 @@ extern "C" { #define logdebug(...) #endif -#ifdef NDEBUG +#ifndef SCOPE_TRACING #define ST() #define STN(N) #else -#define CONCAT_(X, Y) X##Y -#define CONCAT(X, Y) CONCAT_(X, Y) - #define ST() \ ScopeTrace __attribute__((unused)) CONCAT(trace_scope_, __LINE__)(__func__) #define STN(N) \ @@ -65,10 +65,8 @@ extern "C" { struct ScopeTrace { thread_local static int indent; char const *f{}; - explicit ScopeTrace(char const *func) : f(func) { - fprintf(stderr, "%lu %*s%s -->\n", pthread_self(), 2 * indent++, "", this->f); - } - ~ScopeTrace() { fprintf(stderr, "%lu %*s%s <--\n", pthread_self(), 2 * --indent, "", this->f); } + explicit ScopeTrace(char const *func); + ~ScopeTrace(); }; #endif |