Added panic macro
authorLukas Krickl <lukas@krickl.dev>
Mon, 6 Nov 2023 19:41:22 +0000 (20:41 +0100)
committerLukas Krickl <lukas@krickl.dev>
Mon, 6 Nov 2023 19:41:22 +0000 (20:41 +0100)
include/ulas.h
src/preproc.c

index 1864a80e8e422b6796140b567c37be8e8a1033fe..10d5e0ae0bb80fb240eaabc681063523d51d1242 100644 (file)
 
 #define ULASERR(...) fprintf(ulaserr, __VA_ARGS__);
 #define ULASWARN(...) fprintf(ulaserr, __VA_ARGS__);
+#define ULASPANIC(...)                                                         \
+  {                                                                            \
+    fprintf(ulaserr, __VA_ARGS__);                                             \
+    exit(-1);                                                                  \
+  }
 
 // format macros
 #define ULAS_FMT(f, fmt)                                                       \
@@ -165,7 +170,6 @@ char *ulas_strndup(const char *src, size_t n);
  */
 typedef int (*ulas_tokrule)(int current);
 
-
 // tokenisze according to pre-defined rules
 // returns the amount of bytes of line that were
 // consumed or -1 on error
index b1102f0b3a1db5a4fd4365822d1438d5f9b392ea..6ccc1d819a3a37acb85cc3f27ea682c870dcad68 100644 (file)
@@ -59,7 +59,7 @@ int ulas_preprocline(struct ulas_preproc *pp, FILE *dst, const char *raw_line,
       }
     }
 
-    ULASERR("Unknown preprocessor directive: %s\n", line);
+    ULASPANIC("Unknown preprocessor directive: %s\n", line);
     return -1;
   }
 found: