summaryrefslogtreecommitdiff
path: root/kern
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2006-11-13 22:07:32 +0000
committerThomas Schwinge <tschwinge@gnu.org>2009-06-18 00:26:55 +0200
commit628f717ec2fbc9c0b59fd747df5b0e2d4e75a5ac (patch)
tree836be4490302a3cba43a3a32e3bc7a9919e110d3 /kern
parenta42c7a969bfbc6d556179bd19d1fda7cf80f25a8 (diff)
2006-11-13 Samuel Thibault <samuel.thibault@ens-lyon.org>
* i386/i386at/iopl.c (ioplmmap): Add `int' return type. * i386/i386at/model_dep.c (halt_all_cpus): Fix typo in declaration. * kern/assert.h (Assert): Add __attribute__ ((noreturn)) to declaration. * kern/debug.c (Debugger): Add __attribute__ ((noreturn)) to declaration. (Debugger): Add call to panic(). * kern/debug.h (panic): Add __attribute__ ((noreturn)) to declaration.
Diffstat (limited to 'kern')
-rw-r--r--kern/assert.h2
-rw-r--r--kern/debug.c4
-rw-r--r--kern/debug.h2
3 files changed, 5 insertions, 3 deletions
diff --git a/kern/assert.h b/kern/assert.h
index 228f91c..2829728 100644
--- a/kern/assert.h
+++ b/kern/assert.h
@@ -36,7 +36,7 @@
#endif
#if MACH_ASSERT
-extern void Assert(char *exp, char *filename, int line);
+extern void Assert(char *exp, char *filename, int line) __attribute__ ((noreturn));
#define assert(ex) \
MACRO_BEGIN \
diff --git a/kern/debug.c b/kern/debug.c
index f8774fc..c6e0257 100644
--- a/kern/debug.c
+++ b/kern/debug.c
@@ -34,7 +34,7 @@
#include <kern/debug.h>
extern void cnputc();
-void Debugger();
+void Debugger() __attribute__ ((noreturn));
#if MACH_KDB
extern int db_breakpoints_inserted;
@@ -100,6 +100,8 @@ void Debugger(message)
#ifdef i386
asm("int3");
#endif
+
+ panic("Debugger returned!");
}
/* Be prepared to panic anytime,
diff --git a/kern/debug.h b/kern/debug.h
index 28e7b73..62be7fc 100644
--- a/kern/debug.h
+++ b/kern/debug.h
@@ -58,6 +58,6 @@
#endif /* NDEBUG */
extern void panic_init();
-extern void panic (const char *s, ...);
+extern void panic (const char *s, ...) __attribute__ ((noreturn));
#endif /* _mach_debug__debug_ */