summaryrefslogtreecommitdiffstats
path: root/src/message.cpp
diff options
context:
space:
mode:
authoralbert-github <albert.tests@gmail.com>2015-03-04 17:01:28 (GMT)
committeralbert-github <albert.tests@gmail.com>2015-03-04 17:01:28 (GMT)
commita7eef85a89d8772b7ab97a4ba378cc7e78c988cc (patch)
treed9183f0a4dee6e32f2926ea5ef4484b4f38f3985 /src/message.cpp
parent5e5615a9d2da8b923565c1bcadc9db48efbc75d0 (diff)
downloadDoxygen-a7eef85a89d8772b7ab97a4ba378cc7e78c988cc.zip
Doxygen-a7eef85a89d8772b7ab97a4ba378cc7e78c988cc.tar.gz
Doxygen-a7eef85a89d8772b7ab97a4ba378cc7e78c988cc.tar.bz2
Better error message in case of IDL inconsistency
In case of an IDL internal doxygen inconsistency ("error: Internal inconsistency: namespace in IDL not module, library or constant group ", see forum report: http://doxygen.10944.n7.nabble.com/Internal-inconsistency-Which-file-td7057.html) it is hard to find out which file causes the problem. In this case the comment block with @namespace was the "problem"). This patch solves this by adding the file and line number of the source file causing the problem.
Diffstat (limited to 'src/message.cpp')
-rw-r--r--src/message.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/message.cpp b/src/message.cpp
index 4156720..919f3a0 100644
--- a/src/message.cpp
+++ b/src/message.cpp
@@ -151,7 +151,7 @@ static void format_warn(const char *file,int line,const char *text)
static void do_warn(const char *tag, const char *file, int line, const char *prefix, const char *fmt, va_list args)
{
- if (!Config_getBool(tag)) return; // warning type disabled
+ if (tag && !Config_getBool(tag)) return; // warning type disabled
const int bufSize = 40960;
char text[bufSize];
int l=0;
@@ -216,6 +216,14 @@ void err(const char *fmt, ...)
va_end(args);
}
+extern void err_full(const char *file,int line,const char *fmt, ...)
+{
+ va_list args;
+ va_start(args, fmt);
+ do_warn(NULL, file, line, error_str, fmt, args);
+ va_end(args);
+}
+
void printlex(int dbg, bool enter, const char *lexName, const char *fileName)
{
const char *enter_txt = "entering";