aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--doc/ScintillaHistory.html4
-rw-r--r--lexers/LexCPP.cxx5
2 files changed, 6 insertions, 3 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html
index f59fe69fd..f8c5349f6 100644
--- a/doc/ScintillaHistory.html
+++ b/doc/ScintillaHistory.html
@@ -498,6 +498,10 @@
<a href="http://sourceforge.net/p/scintilla/bugs/1711/">Bug #1711</a>.
</li>
<li>
+ C++ lexer fixes #undef directive.
+ <a href="http://sourceforge.net/p/scintilla/bugs/1719/">Bug #1719</a>.
+ </li>
+ <li>
Verilog folder folds interface definitions.
</li>
<li>
diff --git a/lexers/LexCPP.cxx b/lexers/LexCPP.cxx
index 33e7a5608..1d9e40d17 100644
--- a/lexers/LexCPP.cxx
+++ b/lexers/LexCPP.cxx
@@ -1245,11 +1245,10 @@ void SCI_METHOD LexerCPP::Lex(unsigned int startPos, int length, int initStyle,
}
} else if (sc.Match("undef")) {
if (options.updatePreprocessor && !preproc.IsInactive()) {
- std::string restOfLine = GetRestOfLine(styler, sc.currentPos + 5, true);
+ const std::string restOfLine = GetRestOfLine(styler, sc.currentPos + 5, false);
std::vector<std::string> tokens = Tokenize(restOfLine);
- std::string key;
if (tokens.size() >= 1) {
- key = tokens[0];
+ const std::string key = tokens[0];
preprocessorDefinitions.erase(key);
ppDefineHistory.push_back(PPDefinition(lineCurrent, key, "", true));
definitionsChanged = true;