diff options
| author | hjk <[email protected]> | 2012-04-19 17:30:03 +0200 |
|---|---|---|
| committer | hjk <[email protected]> | 2012-04-19 19:29:56 +0200 |
| commit | 493cde8335849bd90381d99967edcead3cfd2541 (patch) | |
| tree | 53faafe379d87efd5821af5be3b597d6a2b04f55 /src/libs/cplusplus/pp-engine.cpp | |
| parent | 0362016f02c80c5e55a7d8e6bd482a4aeaaf7ac3 (diff) | |
preprocessor: do not expand macros when checking defined(...)
Change-Id: I39cfbd7f7adf13ec52527c79c9481d56283087df
Reviewed-by: hjk <[email protected]>
Diffstat (limited to 'src/libs/cplusplus/pp-engine.cpp')
| -rw-r--r-- | src/libs/cplusplus/pp-engine.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libs/cplusplus/pp-engine.cpp b/src/libs/cplusplus/pp-engine.cpp index 7dca9a3497a..9661852b2a8 100644 --- a/src/libs/cplusplus/pp-engine.cpp +++ b/src/libs/cplusplus/pp-engine.cpp @@ -636,6 +636,7 @@ void Preprocessor::genLine(unsigned lineno, const QByteArray &fileName) const void Preprocessor::handleDefined(PPToken *tk) { + ScopedBoolSwap s(m_state.m_inPreprocessorDirective, true); unsigned lineno = tk->lineno; lex(tk); // consume "defined" token bool lparenSeen = tk->is(T_LPAREN); @@ -698,8 +699,7 @@ _Lclassify: } while (isValidToken(*tk)); goto _Lclassify; } else if (tk->is(T_IDENTIFIER) && !isQtReservedWord(tk->asByteArrayRef())) { - static const QByteArray ppDefined("defined"); - if (m_state.m_inCondition && tk->asByteArrayRef() == ppDefined) + if (m_state.m_inCondition && tk->asByteArrayRef() == "defined") handleDefined(tk); else if (handleIdentifier(tk)) goto _Lagain; |
