From b4cb7c06f94e2e91b22b7d82efd7943a82331d86 Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Sun, 5 Dec 2021 16:53:55 -0800 Subject: =?UTF-8?q?Chore:=20updated=20fs=C2=B7walk=20to=20use=20new=20data?= =?UTF-8?q?=20structures?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Completes the port to our standard library (up to malloc). --- include/base.h | 31 +++++++++++-------------------- 1 file changed, 11 insertions(+), 20 deletions(-) (limited to 'include/base.h') diff --git a/include/base.h b/include/base.h index 99cd40b..7c8afbb 100644 --- a/include/base.h +++ b/include/base.h @@ -6,30 +6,14 @@ #include #include -// TODO: remove dependency system headers -#include -/* remaining libc functions we depend upon */ +// TODO: remove dependency on malloc + +/* all libc functions we depend upon */ void *malloc(uintptr size); void *calloc(uintptr n, uintptr size); void *realloc(void *ptr, uintptr size); void free(void *ptr); -void abort(void); -#if 0 -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -typedef wchar_t wchar; -#endif -#include +noreturn void abort(void); /* must be included first */ #include @@ -52,6 +36,13 @@ typedef wchar_t wchar; // ----------------------------------------------------------------------------- // variable arguments +noreturn void ·failassert(const char *, const char *, int, const char *); +#ifdef NDEBUG +# define assert(x) (void)0; +#else +# define assert(x) ((void)((x) || (·failassert(#x, __FILE__, __LINE__, __func__),0))) +#endif + /* from plan9 libc */ #define ERRMAX 128 /* max length of error string */ -- cgit v1.2.1