summaryrefslogtreecommitdiffhomepage
path: root/src/error.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/error.c')
-rw-r--r--src/error.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/error.c b/src/error.c
index 7599bd0a9..ed30173bc 100644
--- a/src/error.c
+++ b/src/error.c
@@ -6,7 +6,6 @@
#include "mruby.h"
#include <stdarg.h>
-#include <stdio.h>
#include <setjmp.h>
#include <string.h>
#include "error.h"
@@ -209,9 +208,7 @@ mrb_exc_raise(mrb_state *mrb, mrb_value exc)
mrb->exc = (struct RObject*)mrb_object(exc);
exc_debug_info(mrb, mrb->exc);
if (!mrb->jmp) {
-#ifdef ENABLE_STDIO
mrb_p(mrb, exc);
-#endif
abort();
}
longjmp(*(jmp_buf*)mrb->jmp, 1);
@@ -280,23 +277,27 @@ mrb_sprintf(mrb_state *mrb, const char *fmt, ...)
void
mrb_warn(const char *fmt, ...)
{
+#ifdef ENABLE_STDIO
va_list args;
va_start(args, fmt);
printf("warning: ");
vprintf(fmt, args);
va_end(args);
+#endif
}
void
mrb_bug(const char *fmt, ...)
{
+#ifdef ENABLE_STDIO
va_list args;
va_start(args, fmt);
printf("bug: ");
vprintf(fmt, args);
va_end(args);
+#endif
exit(EXIT_FAILURE);
}