OSDN Git Service

[llvm-pdbdump] Fix builders again.
authorZachary Turner <zturner@google.com>
Mon, 23 Feb 2015 06:13:27 +0000 (06:13 +0000)
committerZachary Turner <zturner@google.com>
Mon, 23 Feb 2015 06:13:27 +0000 (06:13 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230205 91177308-0d34-0410-b5e6-96231b3b80d8

tools/llvm-pdbdump/ClassDefinitionDumper.cpp
tools/llvm-pdbdump/ClassDefinitionDumper.h

index 7e9407d..d02f75a 100644 (file)
@@ -44,10 +44,11 @@ void ClassDefinitionDumper::start(const PDBSymbolTypeUDT &Class,
   // NOTE: Access level of nested types is not recorded in the PDB, so we have
   // a special case for them.
   SymbolGroupByAccess Groups;
-  Groups.insert(std::make_pair((PDB_MemberAccess)0, SymbolGroup()));
-  Groups.insert(std::make_pair(PDB_MemberAccess::Private, SymbolGroup()));
-  Groups.insert(std::make_pair(PDB_MemberAccess::Protected, SymbolGroup()));
-  Groups.insert(std::make_pair(PDB_MemberAccess::Public, SymbolGroup()));
+  Groups.insert(std::make_pair(0, SymbolGroup()));
+  Groups.insert(std::make_pair((int)PDB_MemberAccess::Private, SymbolGroup()));
+  Groups.insert(
+      std::make_pair((int)PDB_MemberAccess::Protected, SymbolGroup()));
+  Groups.insert(std::make_pair((int)PDB_MemberAccess::Public, SymbolGroup()));
 
   while (auto Child = Children->getNext()) {
     PDB_MemberAccess Access = Child->getRawSymbol().getAccess();
@@ -55,7 +56,7 @@ void ClassDefinitionDumper::start(const PDBSymbolTypeUDT &Class,
       continue;
 
     SymbolGroup *InsertGroup = nullptr;
-    auto &AccessGroup = Groups.find(Access)->second;
+    auto &AccessGroup = Groups.find((int)Access)->second;
 
     if (auto Func = dyn_cast<PDBSymbolFunc>(Child.get())) {
       if (Func->isCompilerGenerated())
@@ -73,14 +74,14 @@ void ClassDefinitionDumper::start(const PDBSymbolTypeUDT &Class,
   }
 
   int Count = 0;
-  Count += dumpAccessGroup((PDB_MemberAccess)0, Groups[(PDB_MemberAccess)0], OS,
-                           Indent);
+  Count += dumpAccessGroup((PDB_MemberAccess)0, Groups[0], OS, Indent);
   Count += dumpAccessGroup(PDB_MemberAccess::Public,
-                           Groups[PDB_MemberAccess::Public], OS, Indent);
-  Count += dumpAccessGroup(PDB_MemberAccess::Protected,
-                           Groups[PDB_MemberAccess::Protected], OS, Indent);
+                           Groups[(int)PDB_MemberAccess::Public], OS, Indent);
+  Count +=
+      dumpAccessGroup(PDB_MemberAccess::Protected,
+                      Groups[(int)PDB_MemberAccess::Protected], OS, Indent);
   Count += dumpAccessGroup(PDB_MemberAccess::Private,
-                           Groups[PDB_MemberAccess::Private], OS, Indent);
+                           Groups[(int)PDB_MemberAccess::Private], OS, Indent);
 
   if (Count > 0)
     OS << newline(Indent);
index f82d976..aaf0376 100644 (file)
@@ -54,7 +54,7 @@ private:
     SymbolGroup(const SymbolGroup &other) = delete;
     SymbolGroup &operator=(const SymbolGroup &other) = delete;
   };
-  typedef std::unordered_map<PDB_MemberAccess, SymbolGroup> SymbolGroupByAccess;
+  typedef std::unordered_map<int, SymbolGroup> SymbolGroupByAccess;
 
   int dumpAccessGroup(PDB_MemberAccess Access, const SymbolGroup &Group,
                       raw_ostream &OS, int Indent);