]> granicus.if.org Git - clang/commitdiff
Add USR generation for enums.
authorTed Kremenek <kremenek@apple.com>
Fri, 15 Jan 2010 20:04:31 +0000 (20:04 +0000)
committerTed Kremenek <kremenek@apple.com>
Fri, 15 Jan 2010 20:04:31 +0000 (20:04 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93543 91177308-0d34-0410-b5e6-96231b3b80d8

tools/CIndex/CIndexUSRs.cpp

index 549c65058d8606f9d5f0e7686773057ad1431cfb..f9e1c23f7ae1e3a374b69399cb266f262b25c407 100644 (file)
@@ -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();