summaryrefslogtreecommitdiff
path: root/kernel/libc/include
diff options
context:
space:
mode:
authorAnton Kling <anton@kling.gg>2023-11-28 20:07:50 +0100
committerAnton Kling <anton@kling.gg>2023-11-28 20:07:50 +0100
commit636858dbbd48ed9f5073793b46740302aa202f43 (patch)
treecf976c2b5a61ba055f0877317afdaf6e871df80e /kernel/libc/include
parent89dc5dd5ba1e9cfe7a8975086c1d5638f8fbbac5 (diff)
Kernel: Add basic IPC and move to microkernel design.
The IPC design is currently a WIP and is nowhere near complete
Diffstat (limited to 'kernel/libc/include')
-rw-r--r--kernel/libc/include/assert.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/libc/include/assert.h b/kernel/libc/include/assert.h
index 90a0be4..d6525f0 100644
--- a/kernel/libc/include/assert.h
+++ b/kernel/libc/include/assert.h
@@ -1,10 +1,16 @@
#include <log.h>
#include <stdio.h>
+// This infinite loop is needed for GCC to understand that
+// aFailed does not return. No clue why the attribute does
+// help solve the issue.
#define assert(expr) \
{ \
- if (!(expr)) \
+ if (!(expr)) { \
aFailed(__FILE__, __LINE__); \
+ for (;;) \
+ ; \
+ } \
}
#define ASSERT_BUT_FIXME_PROPOGATE(expr) \