aboutsummaryrefslogtreecommitdiff
path: root/tools/libclang/IndexDecl.cpp
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-11-15 06:20:24 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-11-15 06:20:24 +0000
commite7bbab91f5cc899104d0a1dee6059d8413c70eeb (patch)
tree818363d0f8ce5f781ed491fb0a07f301635a1598 /tools/libclang/IndexDecl.cpp
parent40f57ee2dab3ed3475fa584f83f05bd3c9ed4a00 (diff)
[libclang] Indexing API: Pass an implicit ObjCInterfaceDecl (@implementation without @interface)
in a separate indexing callback than its implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144625 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/libclang/IndexDecl.cpp')
-rw-r--r--tools/libclang/IndexDecl.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/libclang/IndexDecl.cpp b/tools/libclang/IndexDecl.cpp
index 67f6703e75..b2a45306dc 100644
--- a/tools/libclang/IndexDecl.cpp
+++ b/tools/libclang/IndexDecl.cpp
@@ -108,6 +108,10 @@ public:
}
bool VisitObjCImplementationDecl(ObjCImplementationDecl *D) {
+ const ObjCInterfaceDecl *Class = D->getClassInterface();
+ if (Class->isImplicitInterfaceDecl())
+ IndexCtx.handleObjCInterface(Class);
+
IndexCtx.handleObjCImplementation(D);
IndexCtx.indexTUDeclsInObjCContainer();