summaryrefslogtreecommitdiffstats
path: root/tools/libclang/CIndex.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/libclang/CIndex.cpp')
-rw-r--r--tools/libclang/CIndex.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/tools/libclang/CIndex.cpp b/tools/libclang/CIndex.cpp
index 19dd44b8cf..5117f2c164 100644
--- a/tools/libclang/CIndex.cpp
+++ b/tools/libclang/CIndex.cpp
@@ -393,7 +393,9 @@ public:
// FIXME: UnaryTypeTraitExpr has poor source-location information.
bool VisitOverloadExpr(OverloadExpr *E);
bool VisitDependentScopeDeclRefExpr(DependentScopeDeclRefExpr *E);
+ // FIXME: CXXUnresolvedConstructExpr has poor source-location information.
bool VisitCXXDependentScopeMemberExpr(CXXDependentScopeMemberExpr *E);
+ bool VisitUnresolvedMemberExpr(UnresolvedMemberExpr *E);
};
} // end anonymous namespace
@@ -1693,6 +1695,14 @@ bool CursorVisitor::VisitCXXDependentScopeMemberExpr(
return false;
}
+bool CursorVisitor::VisitUnresolvedMemberExpr(UnresolvedMemberExpr *E) {
+ // Visit the base expression, if there is one.
+ if (!E->isImplicitAccess() &&
+ Visit(MakeCXCursor(E->getBase(), StmtParent, TU)))
+ return true;
+
+ return VisitOverloadExpr(E);
+}
bool CursorVisitor::VisitObjCMessageExpr(ObjCMessageExpr *E) {
if (TypeSourceInfo *TSInfo = E->getClassReceiverTypeInfo())