From 2bd1d7f045ded45c69dfe8d6b50e231655ca5977 Mon Sep 17 00:00:00 2001
From: Matthew Blue <matthew.blue.neuro@gmail.com>
Date: Sat, 2 Jun 2018 18:13:23 -0400
Subject: [PATCH] core/assert: provide static_assert for c99

---
 core/include/assert.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/core/include/assert.h b/core/include/assert.h
index f872e0cdc1..20675d5edf 100644
--- a/core/include/assert.h
+++ b/core/include/assert.h
@@ -114,9 +114,12 @@ NORETURN void _assert_failure(const char *file, unsigned line);
 #define static_assert(...) _Static_assert(__VA_ARGS__)
 #else
 /**
- * @brief static_assert dummy for c-version < c11
+ * @brief static_assert for c-version < c11
+ *
+ * Generates a division by zero compile error when cond is false
  */
-#define static_assert(...) struct static_assert_dummy
+#define static_assert(cond, ...) \
+    enum { static_assert_failed_on_div_by_0 = 1 / (!!(cond)) }
 #endif
 #endif
 
-- 
GitLab