summaryrefslogtreecommitdiff
path: root/src/common/util.h
diff options
context:
space:
mode:
authorSebastian Hahn <sebastian@torproject.org>2015-03-20 13:12:09 +0100
committerSebastian Hahn <sebastian@torproject.org>2015-03-21 02:34:44 +0100
commit1228dd293b60a8eaab03472fa29428c5e2752c44 (patch)
tree4fd6ddc086e7baf44dbbde8f79d8e7b6a182ffc2 /src/common/util.h
parent348f2744cf0d026b1bd06a11d599f0ecf675038d (diff)
downloadtor-1228dd293b60a8eaab03472fa29428c5e2752c44.tar.gz
tor-1228dd293b60a8eaab03472fa29428c5e2752c44.zip
Disable assertions during coverage builds
This removes roughly 5000 branches in my testing. We never want to trigger assertions even during tests, so this is sane. Implements #15400.
Diffstat (limited to 'src/common/util.h')
-rw-r--r--src/common/util.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/common/util.h b/src/common/util.h
index 783c2a13db..3584a879bb 100644
--- a/src/common/util.h
+++ b/src/common/util.h
@@ -45,6 +45,13 @@
#error "Sorry; we don't support building with NDEBUG."
#endif
+/* Don't use assertions during coverage. It leads to tons of unreached
+ * branches which in reality are only assertions we didn't hit. */
+#ifdef TOR_COVERAGE
+#define tor_assert(a) STMT_BEGIN \
+ (void)(a); \
+ STMT_END
+#else
/** Like assert(3), but send assertion failures to the log as well as to
* stderr. */
#define tor_assert(expr) STMT_BEGIN \
@@ -52,6 +59,7 @@
tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
abort(); \
} STMT_END
+#endif
void tor_assertion_failed_(const char *fname, unsigned int line,
const char *func, const char *expr);