aboutsummaryrefslogtreecommitdiff
path: root/tools/libclang/IndexingContext.cpp
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-12-15 00:04:56 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-12-15 00:04:56 +0000
commit90fd67af4aeec7d1661986dd25eabf924e11a76c (patch)
tree59f3560006fe705ad0dd75e7006f63554436820e /tools/libclang/IndexingContext.cpp
parenteaa9511dd2bcb0c7f90f47a236a91c82048f484e (diff)
[libclang] Suppress indexing references for occurrences of the interface
in a superclass and the protocols in a protocol list. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146615 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/libclang/IndexingContext.cpp')
-rw-r--r--tools/libclang/IndexingContext.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/libclang/IndexingContext.cpp b/tools/libclang/IndexingContext.cpp
index a2480ba092..8d27d85a55 100644
--- a/tools/libclang/IndexingContext.cpp
+++ b/tools/libclang/IndexingContext.cpp
@@ -34,6 +34,9 @@ IndexingContext::ObjCProtocolListInfo::ObjCProtocolListInfo(
MakeCursorObjCProtocolRef(PD, Loc, IdxCtx.CXTU),
IdxCtx.getIndexLoc(Loc) };
ProtInfos.push_back(ProtInfo);
+
+ if (IdxCtx.suppressRefs())
+ IdxCtx.markEntityOccurrenceInFile(PD, Loc);
}
for (unsigned i = 0, e = ProtInfos.size(); i != e; ++i)
@@ -328,6 +331,9 @@ bool IndexingContext::handleObjCInterface(const ObjCInterfaceDecl *D) {
BaseClass.base = &BaseEntity;
BaseClass.cursor = MakeCursorObjCSuperClassRef(SuperD, SuperLoc, CXTU);
BaseClass.loc = getIndexLoc(SuperLoc);
+
+ if (suppressRefs())
+ markEntityOccurrenceInFile(SuperD, SuperLoc);
}
ObjCProtocolListInfo ProtInfo(D->getReferencedProtocols(), *this, SA);