From b8e086f1857f0d7731c64647f81cdf6ee3b463b2 Mon Sep 17 00:00:00 2001 From: johannst Date: Sun, 21 Mar 2021 17:42:07 +0100 Subject: added efmt to write out error messages + ERROR_ON macro --- lib/include/common.h | 16 ++++++++++++++++ lib/include/io.h | 1 + 2 files changed, 17 insertions(+) create mode 100644 lib/include/common.h (limited to 'lib/include') diff --git a/lib/include/common.h b/lib/include/common.h new file mode 100644 index 0000000..5ea6050 --- /dev/null +++ b/lib/include/common.h @@ -0,0 +1,16 @@ +// Copyright (c) 2020 Johannes Stoelp + +#pragma once + +#include "io.h" +#include "syscall.h" + +#include + +#define ERROR_ON(cond, ...) \ + do { \ + if ((cond)) { \ + efmt(__VA_ARGS__); \ + syscall1(__NR_exit, 1); \ + } \ + } while (0) diff --git a/lib/include/io.h b/lib/include/io.h index 5ca78a3..0f8b900 100644 --- a/lib/include/io.h +++ b/lib/include/io.h @@ -3,3 +3,4 @@ #pragma once int pfmt(const char* fmt, ...); +int efmt(const char* fmt, ...); -- cgit v1.2.3