Index: ELF/SymbolTable.h =================================================================== --- ELF/SymbolTable.h +++ ELF/SymbolTable.h @@ -102,6 +102,7 @@ std::map getDemangledSyms(); struct SymIndex { + SymIndex(int Idx, unsigned Traced) : Idx(Idx), Traced(Traced) {} int Idx : 31; unsigned Traced : 1; }; Index: ELF/SymbolTable.cpp =================================================================== --- ELF/SymbolTable.cpp +++ ELF/SymbolTable.cpp @@ -174,13 +174,13 @@ // Find an existing symbol or create and insert a new one. template std::pair SymbolTable::insert(StringRef Name) { - auto P = Symtab.insert({Name, {(int)SymVector.size(), false}}); + auto P = Symtab.insert({Name, SymIndex((int)SymVector.size(), false)}); SymIndex &V = P.first->second; bool IsNew = P.second; if (V.Idx == -1) { IsNew = true; - V = {(int)SymVector.size(), true}; + V = SymIndex((int)SymVector.size(), true); } Symbol *Sym;