aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2010-02-26 08:45:00 -0500
committerKevin O'Connor <kevin@koconnor.net>2010-02-28 17:26:25 -0500
commit7fb8ba866e112491feb64b2cf82b762fd9071f89 (patch)
tree85970973bbba58664f3259f6439a9173aafa9b14
parent8f469b9676127ba6bb52609d89ec774e61db0ee1 (diff)
downloadseabios-7fb8ba866e112491feb64b2cf82b762fd9071f89.tar.gz
Add a generic "internal error" warning function.
-rw-r--r--src/output.c8
-rw-r--r--src/util.h3
2 files changed, 11 insertions, 0 deletions
diff --git a/src/output.c b/src/output.c
index ae105fb4..50d54cef 100644
--- a/src/output.c
+++ b/src/output.c
@@ -485,6 +485,14 @@ __warn_unimplemented(struct bregs *regs, int lineno, const char *fname)
}
}
+// Report a detected internal inconsistency.
+void
+__warn_internalerror(int lineno, const char *fname)
+{
+ dprintf(1, "WARNING - internal error detected at %s:%d!\n"
+ , fname, lineno);
+}
+
// Report on an allocation failure.
void
__warn_noalloc(int lineno, const char *fname)
diff --git a/src/util.h b/src/util.h
index 9c78e4c8..9f71d65a 100644
--- a/src/util.h
+++ b/src/util.h
@@ -227,6 +227,7 @@ void __debug_isr(const char *fname);
void __debug_stub(struct bregs *regs, int lineno, const char *fname);
void __warn_invalid(struct bregs *regs, int lineno, const char *fname);
void __warn_unimplemented(struct bregs *regs, int lineno, const char *fname);
+void __warn_internalerror(int lineno, const char *fname);
void __warn_noalloc(int lineno, const char *fname);
void __warn_timeout(int lineno, const char *fname);
void __set_invalid(struct bregs *regs, int lineno, const char *fname);
@@ -254,6 +255,8 @@ void hexdump(const void *d, int len);
__warn_invalid((regs), __LINE__, __func__)
#define warn_unimplemented(regs) \
__warn_unimplemented((regs), __LINE__, __func__)
+#define warn_internalerror() \
+ __warn_internalerror(__LINE__, __func__)
#define warn_noalloc() \
__warn_noalloc(__LINE__, __func__)
#define warn_timeout() \