diff options
author | Nikolai Kosjar <nikolai.kosjar@digia.com> | 2013-07-25 11:21:31 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@digia.com> | 2013-08-22 11:57:27 +0200 |
commit | fd9293dd0af0e8f253c0934ede60b72496ee0314 (patch) | |
tree | a06df33a43e1eaeddf12d14e863aa84031428c73 /src/libs/cplusplus/CppDocument.cpp | |
parent | 2fe1fec16b82561f2e4371bebe1b6d2c29e8fb96 (diff) | |
download | qt-creator-fd9293dd0af0e8f253c0934ede60b72496ee0314.tar.gz |
CppTools: CppPreprocessor: Track also unresolved includes
Change-Id: Ia36e7e7142dbc030a428369ed04e76e70e8eef0b
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Diffstat (limited to 'src/libs/cplusplus/CppDocument.cpp')
-rw-r--r-- | src/libs/cplusplus/CppDocument.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/libs/cplusplus/CppDocument.cpp b/src/libs/cplusplus/CppDocument.cpp index 301019e909..fd299f7ca0 100644 --- a/src/libs/cplusplus/CppDocument.cpp +++ b/src/libs/cplusplus/CppDocument.cpp @@ -341,7 +341,7 @@ QString Document::fileName() const QStringList Document::includedFiles() const { QStringList files; - foreach (const Include &i, _includes) + foreach (const Include &i, _resolvedIncludes) files.append(i.resolvedFileName()); files.removeDuplicates(); return files; @@ -350,7 +350,10 @@ QStringList Document::includedFiles() const // This assumes to be called with a QDir::cleanPath cleaned fileName. void Document::addIncludeFile(const Document::Include &include) { - _includes.append(include); + if (include.resolvedFileName().isEmpty()) + _unresolvedIncludes.append(include); + else + _resolvedIncludes.append(include); } void Document::appendMacro(const Macro ¯o) @@ -740,7 +743,8 @@ Document::Ptr Snapshot::preprocessedDocument(const QString &source, const QStrin newDoc->_revision = thisDocument->_revision; newDoc->_editorRevision = thisDocument->_editorRevision; newDoc->_lastModified = thisDocument->_lastModified; - newDoc->_includes = thisDocument->_includes; + newDoc->_resolvedIncludes = thisDocument->_resolvedIncludes; + newDoc->_unresolvedIncludes = thisDocument->_unresolvedIncludes; } FastPreprocessor pp(*this); @@ -758,7 +762,8 @@ Document::Ptr Snapshot::documentFromSource(const QByteArray &preprocessedCode, newDoc->_revision = thisDocument->_revision; newDoc->_editorRevision = thisDocument->_editorRevision; newDoc->_lastModified = thisDocument->_lastModified; - newDoc->_includes = thisDocument->_includes; + newDoc->_resolvedIncludes = thisDocument->_resolvedIncludes; + newDoc->_unresolvedIncludes = thisDocument->_unresolvedIncludes; newDoc->_definedMacros = thisDocument->_definedMacros; newDoc->_macroUses = thisDocument->_macroUses; } |