diff options
author | Neil <nyamatongwe@gmail.com> | 2019-01-05 08:52:28 +1100 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2019-01-05 08:52:28 +1100 |
commit | 9dceeabe43a5997a2b84438fed499a3a8f5c6995 (patch) | |
tree | 63fb40bf44f850e1bad3d2b1703aaed6e087f3af | |
parent | 06c22cfa87130bc7fc57e547a3aa47cda948b085 (diff) | |
download | scintilla-mirror-9dceeabe43a5997a2b84438fed499a3a8f5c6995.tar.gz |
Backport: Recognize negative line numbers in GCC-format messages.
Cppcheck shows some whole-file errors as line -1.
Backport of changeset 7191:c9ef21df2e3c.
-rw-r--r-- | doc/ScintillaHistory.html | 5 | ||||
-rw-r--r-- | lexers/LexErrorList.cxx | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html index 540a4e4d1..118693c57 100644 --- a/doc/ScintillaHistory.html +++ b/doc/ScintillaHistory.html @@ -548,6 +548,11 @@ <li> Released 31 October 2018. </li> + <li> + Errorlist lexer recognizes negative line numbers as some programs show whole-file + errors occurring on line -1. + SciTE's parsing of diagnostics also updated to handle this case. + </li> <li> Added "nim" lexer (SCLEX_NIM) for the Nim language which was previously called Nimrod. For compatibility, the old "nimrod" lexer is still present but is deprecated and will be removed at the diff --git a/lexers/LexErrorList.cxx b/lexers/LexErrorList.cxx index b3dcd2a59..4ca772814 100644 --- a/lexers/LexErrorList.cxx +++ b/lexers/LexErrorList.cxx @@ -175,7 +175,7 @@ static int RecogniseErrorListLine(const char *lineBuffer, Sci_PositionU lengthLi canBeCtags = false; } } else if (state == stGccStart) { // <filename>: - state = Is0To9(ch) ? stGccDigit : stUnrecognized; + state = ((ch == '-') || Is0To9(ch)) ? stGccDigit : stUnrecognized; } else if (state == stGccDigit) { // <filename>:<line> if (ch == ':') { state = stGccColumn; // :9.*: is GCC |