diff options
author | Joerg Bornemann <joerg.bornemann@digia.com> | 2013-01-02 13:50:27 +0100 |
---|---|---|
committer | Joerg Bornemann <joerg.bornemann@digia.com> | 2013-01-02 19:25:50 +0100 |
commit | 95150aae29d1660c36e96d22b87b84c1120733db (patch) | |
tree | 4f888d265a76bda8d462137974a39979b2905b33 | |
parent | ccbe175f3ae5aa9fab470437a30cf776e26e3f32 (diff) |
ignore macro assignments in inline files
FOO=BAR in an inline file is not supposed to alter FOO.
Task-number: QTCREATORBUG-8452
Change-Id: I3ce0d6fc89a10b6062903fd9e8d769375e811a18
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
-rw-r--r-- | src/jomlib/preprocessor.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/jomlib/preprocessor.cpp b/src/jomlib/preprocessor.cpp index ad7b12e..b69a05a 100644 --- a/src/jomlib/preprocessor.cpp +++ b/src/jomlib/preprocessor.cpp @@ -121,9 +121,14 @@ bool Preprocessor::internalOpenFile(QString fileName) QString Preprocessor::readLine() { QString line; - do { + for (;;) { basicReadLine(line); - } while (parseMacro(line) || parsePreprocessingDirective(line)); + if (!m_bInlineFileMode && parseMacro(line)) + continue; + if (parsePreprocessingDirective(line)) + continue; + break; + } return line; } |