Don't add Decls with an invalid location to DeclsInContainer.
llvm-svn: 118111
diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp
index f4cae89..d825a40 100644
--- a/clang/tools/libclang/CIndex.cpp
+++ b/clang/tools/libclang/CIndex.cpp
@@ -868,7 +868,8 @@
for (DeclContext::decl_iterator I = D->decls_begin(), E = D->decls_end();
I!=E; ++I) {
Decl *subDecl = *I;
- if (!subDecl || subDecl->getLexicalDeclContext() != D)
+ if (!subDecl || subDecl->getLexicalDeclContext() != D ||
+ subDecl->getLocStart().isInvalid())
continue;
DeclsInContainer.push_back(subDecl);
}