aboutsummaryrefslogtreecommitdiffhomepage
path: root/lexers/LexCPP.cxx
diff options
context:
space:
mode:
authornyamatongwe <devnull@localhost>2010-09-04 11:42:59 +1000
committernyamatongwe <devnull@localhost>2010-09-04 11:42:59 +1000
commitfb48043b783cb07177491c78b3962cda9fc97b0a (patch)
tree9996d76f1d4dac7117ec44756cfa4f5bb6f0a737 /lexers/LexCPP.cxx
parent7aa6ed27b21a9abe808965d287465ce0592a3d14 (diff)
downloadscintilla-mirror-fb48043b783cb07177491c78b3962cda9fc97b0a.tar.gz
Fix for bug #3058924 wrong highlighting for float literals containing +/-.
Tests added for example numeric literals.
Diffstat (limited to 'lexers/LexCPP.cxx')
-rw-r--r--lexers/LexCPP.cxx2
1 files changed, 1 insertions, 1 deletions
diff --git a/lexers/LexCPP.cxx b/lexers/LexCPP.cxx
index 6d01fb44b..0698ed920 100644
--- a/lexers/LexCPP.cxx
+++ b/lexers/LexCPP.cxx
@@ -513,7 +513,7 @@ void SCI_METHOD LexerCPP::Lex(unsigned int startPos, int length, int initStyle,
break;
case SCE_C_NUMBER:
// We accept almost anything because of hex. and number suffixes
- if (!setWord.Contains(sc.ch)) {
+ if (!(setWord.Contains(sc.ch) || ((sc.ch == '+' || sc.ch == '-') && (sc.chPrev == 'e' || sc.chPrev == 'E')))) {
sc.SetState(SCE_C_DEFAULT|activitySet);
}
break;