aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/os/freebsd/spl/sys/debug.h16
-rw-r--r--include/os/linux/spl/sys/debug.h16
-rw-r--r--lib/libspl/include/assert.h18
3 files changed, 25 insertions, 25 deletions
diff --git a/include/os/freebsd/spl/sys/debug.h b/include/os/freebsd/spl/sys/debug.h
index 6a0c2fe07..6df76db7e 100644
--- a/include/os/freebsd/spl/sys/debug.h
+++ b/include/os/freebsd/spl/sys/debug.h
@@ -133,14 +133,14 @@ void spl_dumpstack(void);
*/
#ifdef NDEBUG
-#define ASSERT(x) ((void)sizeof(x))
-#define ASSERT3B(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT3S(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT3U(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT3P(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT0(x) ((void)sizeof(x))
-#define IMPLY(A, B) ((void)sizeof(A), (void)sizeof(B))
-#define EQUIV(A, B) ((void)sizeof(A), (void)sizeof(B))
+#define ASSERT(x) ((void) sizeof (!!(x)))
+#define ASSERT3B(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3S(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3U(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3P(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT0(x) ((void) sizeof (!!(x)))
+#define IMPLY(A, B) ((void) sizeof (!!(A)), (void) sizeof (!!(B)))
+#define EQUIV(A, B) ((void) sizeof (!!(A)), (void) sizeof (!!(B)))
/*
* Debugging enabled (--enable-debug)
diff --git a/include/os/linux/spl/sys/debug.h b/include/os/linux/spl/sys/debug.h
index e3cbf62d1..102fc640b 100644
--- a/include/os/linux/spl/sys/debug.h
+++ b/include/os/linux/spl/sys/debug.h
@@ -133,14 +133,14 @@ void spl_dumpstack(void);
*/
#ifdef NDEBUG
-#define ASSERT(x) ((void)sizeof(x))
-#define ASSERT3B(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT3S(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT3U(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT3P(x,y,z) ((void)sizeof(x), (void)sizeof(z))
-#define ASSERT0(x) ((void)sizeof(x))
-#define IMPLY(A, B) ((void)sizeof(A), (void)sizeof(B))
-#define EQUIV(A, B) ((void)sizeof(A), (void)sizeof(B))
+#define ASSERT(x) ((void) sizeof (!!(x)))
+#define ASSERT3B(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3S(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3U(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3P(x,y,z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT0(x) ((void) sizeof (!!(x)))
+#define IMPLY(A, B) ((void) sizeof (!!(A)), (void) sizeof (!!(B)))
+#define EQUIV(A, B) ((void) sizeof (!!(A)), (void) sizeof (!!(B)))
/*
* Debugging enabled (--enable-debug)
diff --git a/lib/libspl/include/assert.h b/lib/libspl/include/assert.h
index 2a6e8a1e4..fadff14cc 100644
--- a/lib/libspl/include/assert.h
+++ b/lib/libspl/include/assert.h
@@ -120,15 +120,15 @@ do { \
__compile_time_assertion__ ## y[(x) ? 1 : -1]
#ifdef NDEBUG
-#define ASSERT3B(x, y, z) ((void) sizeof (x), (void) sizeof (z))
-#define ASSERT3S(x, y, z) ((void) sizeof (x), (void) sizeof (z))
-#define ASSERT3U(x, y, z) ((void) sizeof (x), (void) sizeof (z))
-#define ASSERT3P(x, y, z) ((void) sizeof (x), (void) sizeof (z))
-#define ASSERT0(x) ((void) sizeof (x))
-#define ASSERT(x) ((void) sizeof (x))
-#define assert(x) ((void) sizeof (x))
-#define IMPLY(A, B) ((void) sizeof (A), (void) sizeof (B))
-#define EQUIV(A, B) ((void) sizeof (A), (void) sizeof (B))
+#define ASSERT3B(x, y, z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3S(x, y, z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3U(x, y, z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT3P(x, y, z) ((void) sizeof (!!(x)), (void) sizeof (!!(z)))
+#define ASSERT0(x) ((void) sizeof (!!(x)))
+#define ASSERT(x) ((void) sizeof (!!(x)))
+#define assert(x) ((void) sizeof (!!(x)))
+#define IMPLY(A, B) ((void) sizeof (!!(A)), (void) sizeof (!!(B)))
+#define EQUIV(A, B) ((void) sizeof (!!(A)), (void) sizeof (!!(B)))
#else
#define ASSERT3B VERIFY3B
#define ASSERT3S VERIFY3S