/** Display a parser error. */ void ParseError(const TokenNode *tp, const char *str, ...) { va_list ap; static const char *FILE_MESSAGE = "%s[%u]"; char *msg; va_start(ap, str); if(tp) { msg = Allocate(strlen(FILE_MESSAGE) + strlen(tp->fileName) + 1); sprintf(msg, FILE_MESSAGE, tp->fileName, tp->line); } else { msg = CopyString(_("configuration error")); } WarningVA(msg, str, ap); Release(msg); va_end(ap); }
/** Log a warning. */ void Warning(const char *str, ...) { va_list ap; va_start(ap, str); Assert(str); WarningVA(NULL, str, ap); va_end(ap); }
// Note: Message is not a fprintf string! It should be preformatted, but can contain @@ to indicate object references, which are the varargs void FCompilerResultsLog::Warning(const TCHAR* Message, ...) { va_list ArgPtr; va_start(ArgPtr, Message); WarningVA(Message, ArgPtr); }