From 2a40638ec362145be2e2873e1d0fde5fe3ad0b6e Mon Sep 17 00:00:00 2001
From: Jeremy Soller <jackpot51@gmail.com>
Date: Wed, 3 Jan 2024 13:02:51 -0700
Subject: [PATCH] Fix assert definition

---
 include/bits/assert.h           | 8 ++++----
 src/header/assert/cbindgen.toml | 3 ++-
 2 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/include/bits/assert.h b/include/bits/assert.h
index ff1cad697..e415cdc80 100644
--- a/include/bits/assert.h
+++ b/include/bits/assert.h
@@ -1,5 +1,7 @@
-#ifndef _BITS_ASSERT_H
-#define _BITS_ASSERT_H
+// Do not use include guard, to ensure assert is always defined
+#ifdef assert
+#undef assert
+#endif
 
 #ifdef NDEBUG
 # define assert(cond) (void) 0
@@ -7,5 +9,3 @@
 # define assert(cond) \
   ((void)((cond) || (__assert_fail(__func__, __FILE__, __LINE__, #cond), 0)))
 #endif
-
-#endif
diff --git a/src/header/assert/cbindgen.toml b/src/header/assert/cbindgen.toml
index d11acbb86..2db3f66e2 100644
--- a/src/header/assert/cbindgen.toml
+++ b/src/header/assert/cbindgen.toml
@@ -1,5 +1,6 @@
-sys_includes = ["bits/assert.h"]
+sys_includes = []
 include_guard = "_RELIBC_ASSERT_H"
+trailer = "#include <bits/assert.h>"
 language = "C"
 style = "Tag"
 no_includes = true
-- 
GitLab