From c2c0e752e0ceffad06d51a472838d18eedc6ed4f Mon Sep 17 00:00:00 2001 From: nyamatongwe Date: Sat, 4 Sep 2010 11:42:59 +1000 Subject: Fix for bug #3058924 wrong highlighting for float literals containing +/-. Tests added for example numeric literals. --- lexers/LexCPP.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lexers') 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; -- cgit v1.2.3