52 static const char *msg_tag;
57 static void msg_vstream_print(
int level,
const char *text)
59 static const char *level_text[] = {
60 "info",
"warning",
"error",
"fatal",
"panic",
63 if (level < 0 || level >= (
int) (
sizeof(level_text) /
sizeof(level_text[0])))
64 msg_panic(
"invalid severity level: %d", level);
70 msg_tag, level_text[level], text);
79 static int first_call = 1;
NORETURN msg_panic(const char *fmt,...)
void msg_output(MSG_OUTPUT_FN output_fn)
VSTREAM * vstream_fprintf(VSTREAM *stream, const char *fmt,...)
int vstream_fflush(VSTREAM *stream)
void msg_vstream_init(const char *name, VSTREAM *vp)