ASTConsumer::handleTopLevelDecl will end up getting called for

function template instantiations. Fixes <rdar://problem/10398005> / PR11312.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143984 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Douglas Gregor 2011-11-07 18:53:57 +00:00
Родитель a33849b368
Коммит 66e870029f
2 изменённых файлов: 11 добавлений и 1 удалений

Просмотреть файл

@ -2480,7 +2480,10 @@ static inline bool compLocDecl(std::pair<unsigned, Decl *> L,
void ASTUnit::addFileLevelDecl(Decl *D) {
assert(D);
assert(!D->isFromASTFile() && "This is only for local decl");
// We only care about local declarations.
if (D->isFromASTFile())
return;
SourceManager &SM = *SourceMgr;
SourceLocation Loc = D->getLocation();

Просмотреть файл

@ -0,0 +1,7 @@
int main()
{
return 0;
}
// RUN: c-index-test -write-pch %t.pch -fno-delayed-template-parsing -x c++-header %S/Inputs/reparse-instantiate.h
// RUN: env CINDEXTEST_EDITING=1 c-index-test -test-load-source-reparse 5 local -fno-delayed-template-parsing -I %S/Inputs -include %t %s