#pragma prototyped
#ifndef _ERROR_H
#define _ERROR_H
#include <stdarg.h>
#include <errno.h>
typedef struct Error_info_s
{
int errors;
int indent;
int line;
int warnings;
char* file;
char* id;
} Error_info_t;
#ifndef ERROR_catalog
#define ERROR_catalog(t) t
#endif
#define ERROR_INFO 0
#define ERROR_WARNING 1
#define ERROR_ERROR 2
#define ERROR_FATAL 3
#define ERROR_PANIC ERROR_LEVEL
#define ERROR_LEVEL 0x00ff
#define ERROR_SYSTEM 0x0100
#define ERROR_USAGE 0x0800
#define error_info _err_info
#define error _err_msg
#define errorv _err_msgv
extern Error_info_t error_info;
extern void error(int, ...);
extern void errorf(void*, void*, int, ...);
extern void errorv(const char*, int, va_list);
#endif