aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tools/CIndex/CIndexUSRs.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/CIndex/CIndexUSRs.cpp b/tools/CIndex/CIndexUSRs.cpp
index 549c65058d..f9e1c23f7a 100644
--- a/tools/CIndex/CIndexUSRs.cpp
+++ b/tools/CIndex/CIndexUSRs.cpp
@@ -74,6 +74,7 @@ public:
void VisitBlockDecl(BlockDecl *D);
void VisitDeclContext(DeclContext *D);
+ void VisitEnumDecl(EnumDecl *D);
void VisitFunctionDecl(FunctionDecl *D);
void VisitNamedDecl(NamedDecl *D);
void VisitNamespaceDecl(NamespaceDecl *D);
@@ -96,6 +97,16 @@ void USRGenerator::VisitDeclContext(DeclContext *DC) {
Visit(D);
}
+void USRGenerator::VisitEnumDecl(EnumDecl *D) {
+ VisitDeclContext(D->getDeclContext());
+ Out << "@E^";
+ const std::string &s = D->getNameAsString();
+ if (s.empty())
+ Out << "anon";
+ else
+ Out << s;
+}
+
void USRGenerator::VisitFunctionDecl(FunctionDecl *D) {
VisitDeclContext(D->getDeclContext());
Out << "@F^" << D->getNameAsString();