int lprintf(int level, char *format, ...) { va_list args; va_start(args, format); int rv = vlprintf(level, format, args); va_end(args); return rv; }
void lprintf(char *cp, ...) { va_list ap; va_start(ap, cp); vlprintf(cp, ap); va_end(ap); }
static void lprintf(const char *format, ...) { va_list va; va_start(va, format); vlprintf(format, va); va_end(va); }
extern "C" volatile void lprint_fatal(const char* file, int line, lprint_format_t msg, ...) { bool saved = PrintVMMessages; PrintVMMessages = true; lprintf("Self VM fatal error (%s, line %ld): ", file, (void*)line ); va_list ap; va_start(ap, msg); vlprintf(msg, ap); va_end(ap); lprintf("\n"); PrintVMMessages = saved; fatal_handler(); }
extern "C" void lprint_error(lprint_format_t msg, ...) { bool saved = PrintVMMessages; PrintVMMessages = true; lprintf("Self VM error: " ); va_list ap; va_start(ap, msg); vlprintf(msg, ap); va_end(ap); lprintf("\n" ); error_breakpoint(); PrintVMMessages = saved; }
extern "C" void lprint_warning(lprint_format_t msg, ...) { bool saved = PrintVMMessages; PrintVMMessages = true; lprintf("Self VM warning: ", 0); va_list ap; va_start(ap, msg); vlprintf(msg, ap); va_end(ap); lprintf("\n" ); breakpoint(); PrintVMMessages = saved; }
void Output (const char *fmt, ...) { va_list args; va_start(args, fmt); vfprintf(stdout_, fmt, args); va_end(args); va_start(args, fmt); vlprintf(fmt, args); va_end(args); }
extern "C" volatile void lprint_fatalNoMenu(const char* file, int line, lprint_format_t msg, ...) { Unused(file); Unused(line); bool saved = PrintVMMessages; PrintVMMessages = true; lprintf("\n\nSelf: fatal error: "); va_list ap; va_start(ap, msg); vlprintf(msg, ap); va_end(ap); lprintf("\n"); PrintVMMessages = saved; breakpoint(); OS::terminate(1); }
void Warning (const char *code, const char *fmt, ...) { va_list args; fflush(stdout_); fprintf(stdwarn_, "%c %s ", MSGCLASS_WARN, code); lprintf("%c %s ", MSGCLASS_WARN, code); va_start(args, fmt); vfprintf(stdwarn_, fmt, args); va_end(args); va_start(args, fmt); vlprintf(fmt, args); va_end(args); fputc('\n', stdwarn_); lputc('\n'); }
/* * nf_err - non fatal error message */ void nf_err (const char *code, const char *fmt, ...) { va_list args; fflush(stdout_); fprintf(stderr_, "%c %s ", MSGCLASS_ERR, code); lprintf("%c %s ", MSGCLASS_ERR, code); va_start(args, fmt); vfprintf(stderr_, fmt, args); va_end(args); va_start(args, fmt); vlprintf(fmt, args); va_end(args); fputc('\n', stderr_); lputc('\n'); fflush(stderr_); }
void Detail (const char *code, const char *fmt, ...) { if (Verbosity >= 3) { va_list args; fprintf (stdinfo_, "%c %s ", MSGCLASS_INFO, code); lprintf ("%c %s ", MSGCLASS_INFO, code); va_start(args, fmt); vfprintf(stdinfo_, fmt, args); va_end(args); va_start(args, fmt); vlprintf(fmt, args); va_end(args); fputc ('\n', stdinfo_); lputc ('\n'); } }
void ProgError (const char *code, const char *fmt, ...) { va_list args; fflush (stdout_); fprintf(stderr_, "E %s ", code); lprintf("E %s ", code); va_start(args, fmt); vfprintf(stderr_, fmt, args); va_end(args); va_start(args, fmt); vlprintf(fmt, args); va_end(args); fputc('\n', stderr_); lputc('\n'); (*Action)(); /* execute error handler*/ PrintExit(); exit(2); }
void Bug (const char *code, const char *fmt, ...) { va_list args; fflush(stdout_); fprintf(stdwarn_, "%c %s ", MSGCLASS_BUG, code); lprintf("%c %s ", MSGCLASS_BUG, code); va_start(args, fmt); vfprintf(stderr_, fmt, args); va_end(args); va_start(args, fmt); vlprintf(fmt, args); va_end(args); fputc('\n', stderr_); lputc('\n'); fputs("Please report that bug\n", stderr_); lputs("Please report that bug\n"); /* CloseWadFiles();*/ PrintExit(); exit(3); }
void LimitedEpilog (int *left, const char *code, const char *fmt, ...) { if (left != NULL && *left < 0) { fflush (stdout_); if (fmt != NULL) { va_list args; fprintf(stdwarn_, "%c %s ", MSGCLASS_WARN, code); lprintf("%c %s ", MSGCLASS_WARN, code); va_start (args, fmt); vfprintf (stdwarn_, fmt, args); va_end (args); va_start (args, fmt); vlprintf (fmt, args); va_end (args); } fprintf (stdwarn_, "%d warnings omitted\n", - *left); lprintf ("%d warnings omitted\n", - *left); } }
void LimitedWarn (int *left, const char *code, const char *fmt, ...) { if (left == NULL || (left != NULL && *left > 0)) { va_list args; fflush(stdout_); fprintf(stdwarn_, "%c %s ", MSGCLASS_WARN, code); lprintf("%c %s ", MSGCLASS_WARN, code); va_start(args, fmt); vfprintf(stdwarn_, fmt, args); va_end(args); va_start(args, fmt); vlprintf(fmt, args); va_end(args); fputc('\n', stdwarn_); lputc('\n'); } if (left != NULL) (*left)--; }
int veprintf(char *format, va_list args) { lprintf(DEBUG_LEVEL_ERROR, "%s", strerror(errno)); return vlprintf(DEBUG_LEVEL_ERROR, format, args); }
extern "C" void lprintf(lprint_format_t msg, ...) { va_list ap; va_start(ap, msg); vlprintf(msg, ap); va_end(ap); }
extern "C" void lprintf(const char* msg, ...) { va_list ap; va_start(ap, msg); vlprintf(msg, ap); va_end(ap); }