diff --git a/src/libs/cplusplus/SimpleLexer.cpp b/src/libs/cplusplus/SimpleLexer.cpp index d5af419e823..c44adfc5452 100644 --- a/src/libs/cplusplus/SimpleLexer.cpp +++ b/src/libs/cplusplus/SimpleLexer.cpp @@ -72,6 +72,16 @@ void SimpleLexer::setObjCEnabled(bool onoff) _objCEnabled = onoff; } +bool SimpleLexer::cxx0xEnabled() const +{ + return _cxx0xEnabled; +} + +void SimpleLexer::setCxx0xEnabled(bool enabled) +{ + _cxx0xEnabled = enabled; +} + bool SimpleLexer::skipComments() const { return _skipComments; @@ -100,6 +110,7 @@ QList SimpleLexer::operator()(const QString &text, int state) lex.setObjCEnabled(_objCEnabled); lex.setStartWithNewline(true); lex.setObjCEnabled(_objCEnabled); + lex.setCxxOxEnabled(_cxx0xEnabled); if (! _skipComments) lex.setScanCommentTokens(true); diff --git a/src/libs/cplusplus/SimpleLexer.h b/src/libs/cplusplus/SimpleLexer.h index 4b1aaf73927..0a63911dde7 100644 --- a/src/libs/cplusplus/SimpleLexer.h +++ b/src/libs/cplusplus/SimpleLexer.h @@ -57,6 +57,9 @@ public: bool objCEnabled() const; void setObjCEnabled(bool onoff); + bool cxx0xEnabled() const; + void setCxx0xEnabled(bool enabled); + bool endedJoined() const; QList operator()(const QString &text, int state = 0); @@ -78,6 +81,7 @@ private: bool _qtMocRunEnabled: 1; bool _objCEnabled: 1; bool _endedJoined: 1; + bool _cxx0xEnabled: 1; }; } // namespace CPlusPlus diff --git a/src/plugins/cppeditor/cpphighlighter.cpp b/src/plugins/cppeditor/cpphighlighter.cpp index a18b7e6e326..49c42784d28 100644 --- a/src/plugins/cppeditor/cpphighlighter.cpp +++ b/src/plugins/cppeditor/cpphighlighter.cpp @@ -63,6 +63,7 @@ void CppHighlighter::highlightBlock(const QString &text) SimpleLexer tokenize; tokenize.setQtMocRunEnabled(false); tokenize.setObjCEnabled(false); + tokenize.setCxx0xEnabled(true); int initialState = state; const QList tokens = tokenize(text, initialState);