Commit 34c0b2c2 authored by Orgad Shaneh's avatar Orgad Shaneh Committed by Orgad Shaneh

CompileOutput: Flush other parsers on make error detection

Fixes wrong linked lines when make terminates. The lines marked with ** are
linked instead of the lines marked with &&.

int main()
{
    boo;
}

main.cpp: In function 'int main()':
main.cpp:3:5: error: 'boo' was not declared in this scope
     boo;
     ^~~
&& main.cpp:3:5: note: suggested alternative: 'bool'
&&     boo;
&&     ^~~
&&**   bool
** mingw32-make[1]: *** [Makefile.Debug:98: debug/main.o] Error 1
** mingw32-make: *** [Makefile:34: debug] Error 2
** mingw32-make[1]: Leaving directory 'D:/Projects/test'

Change-Id: I33b87d5b20e1e5ee21319986086c832a4aa77e07
Reviewed-by: Tobias Hunger's avatarTobias Hunger <tobias.hunger@qt.io>
parent e1d09e51
......@@ -115,6 +115,7 @@ void GnuMakeParser::stdError(const QString &line)
QRegularExpressionMatch match = m_errorInMakefile.match(lne);
if (match.hasMatch()) {
flush();
Result res = parseDescription(match.captured(5));
if (res.isFatal)
++m_fatalErrorCount;
......@@ -128,6 +129,7 @@ void GnuMakeParser::stdError(const QString &line)
}
match = m_makeLine.match(lne);
if (match.hasMatch()) {
flush();
Result res = parseDescription(match.captured(6));
if (res.isFatal)
++m_fatalErrorCount;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment