CppTools: CppPreprocessor: Track also unresolved includes

Change-Id: Ia36e7e7142dbc030a428369ed04e76e70e8eef0b
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This commit is contained in:
Nikolai Kosjar
2013-07-25 11:21:31 +02:00
parent 2fe1fec16b
commit fd9293dd0a
17 changed files with 152 additions and 26 deletions

View File

@@ -332,7 +332,7 @@ void CppPreprocessor::mergeEnvironment(Document::Ptr doc)
m_processed.insert(fn);
foreach (const Document::Include &incl, doc->includes()) {
foreach (const Document::Include &incl, doc->resolvedIncludes()) {
const QString includedFile = incl.resolvedFileName();
if (Document::Ptr includedDoc = m_snapshot.document(includedFile))
@@ -363,7 +363,7 @@ void CppPreprocessor::sourceNeeded(unsigned line, const QString &fileName, Inclu
QString absoluteFileName = resolveFile(fileName, type);
absoluteFileName = QDir::cleanPath(absoluteFileName);
if (m_currentDoc && !absoluteFileName.isEmpty())
if (m_currentDoc)
m_currentDoc->addIncludeFile(Document::Include(fileName, absoluteFileName, line, type));
if (m_included.contains(absoluteFileName))
return; // we've already seen this file.