summaryrefslogtreecommitdiffstats
path: root/src/util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/util.h')
-rw-r--r--src/util.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/util.h b/src/util.h
index 5ae8b74..73cfc10 100644
--- a/src/util.h
+++ b/src/util.h
@@ -1,5 +1,6 @@
#pragma once
+#include <stdbool.h>
#include <stdio.h>
#define MAX(a, b) ((a) > (b) ? (a) : (b))
@@ -8,13 +9,23 @@
#define PANIC(...) panic(__FILE__, __LINE__, "" __VA_ARGS__)
#define ASSERT(x) assert((x), __FILE__, __LINE__, #x)
-#define ERROR(...) error("" __VA_ARGS__)
+#define WARNX(...) warn(false, __VA_ARGS__);
+#define WARN(...) warn(true, __VA_ARGS__);
+#define ERRORX(...) error(false, __VA_ARGS__);
+#define ERROR(...) error(true, __VA_ARGS__);
#define UPCAST(iter, type, link) LINK_UPCAST(iter, type, link)
+enum {
+ USER,
+ SYSTEM,
+ INTERNAL
+};
+
void panic(const char *file, int line, const char *msg, ...);
void assert(int cond, const char *file, int line, const char *condstr);
-void error(const char *fmtstr, ...);
+void warn(bool add_error, int type, const char *fmtstr, ...);
+void error(bool add_error, int type, const char *fmtstr, ...);
char *astrdup(const char *str);
char *aprintf(const char *fmtstr, ...);