summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2017-07-26 12:58:22 -0400
committerNick Mathewson <nickm@torproject.org>2017-07-26 12:58:22 -0400
commit431c8d09ee062621d8b826799a667f746a783103 (patch)
treef801bb641c7d1d92d80556e5be45dbf9970d85d8 /src
parent30a98c765f850c76333fe2890706ea1fa2ad1f79 (diff)
parent18734d3b25f3a26fea3fd78e64136da9bcd3836d (diff)
downloadtor-431c8d09ee062621d8b826799a667f746a783103.tar.gz
tor-431c8d09ee062621d8b826799a667f746a783103.zip
Merge branch 'maint-0.3.0' into maint-0.3.1
Diffstat (limited to 'src')
-rw-r--r--src/common/util_bug.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 7879f880ec..ae7e7a37fd 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -58,6 +58,19 @@
* return -1;
*/
+#ifdef __COVERITY__
+#undef BUG
+// Coverity defines this in global headers; let's override it. This is a
+// magic coverity-only preprocessor thing.
+#nodef BUG(x) ((x)?(__coverity_panic__(),1):0)
+#endif
+
+#if defined(__COVERITY__) || defined(__clang_analyzer__)
+// We're running with a static analysis tool: let's treat even nonfatal
+// assertion failures as something that we need to avoid.
+#define ALL_BUGS_ARE_FATAL
+#endif
+
#ifdef ALL_BUGS_ARE_FATAL
#define tor_assert_nonfatal_unreached() tor_assert(0)
#define tor_assert_nonfatal(cond) tor_assert((cond))