#ifndef FUNCS_H /* reinclusion protection */ #include /* for sprintf(), stderr, ... */ /* * Macros */ #define FUNCS_H /* reinclusion protection */ #define TRUE (0 == 0) #define FALSE (0 != 0) #define infomsg(fmt, ...) real_infomsg(__func__, fmt, ##__VA_ARGS__) #define errormsg(fmt, ...) real_errormsg(__func__, fmt, ##__VA_ARGS__) #define finfomsg(fp, fmt, ...) real_finfomsg(__func__, fp, fmt, ##__VA_ARGS__) #define ferrormsg(fp, fmt, ...) real_ferrormsg(__func__, fp, fmt, ##__VA_ARGS__) /* * Forward declarations */ extern void real_errormsg(const char *, char *, ...); extern void real_infomsg(const char *, char *, ...); extern void real_ferrormsg(const char *, FILE *, char *, ...); extern void real_finfomsg(const char *, FILE *, char *, ...); #endif /* reinclusion protection */