clisp/error.c
2024-09-08 16:52:11 +09:00

32 lines
452 B
C

#include "dat.h"
#include "fn.h"
#include <stdlib.h>
#include <stdarg.h>
#include <setjmp.h>
void
panic(char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
vfprintf(stderr, fmt, ap);
va_end(ap);
fprintf(stderr, "\n");
exit(1);
}
void
error(char *fmt, ...)
{
extern jmp_buf *errptr;
va_list ap;
va_start(ap, fmt);
fprintf(stderr, "ERROR => ");
vfprintf(stderr, fmt, ap);
va_end(ap);
fprintf(stderr, "\n");
longjmp(*errptr, 1);
exit(1);
}