Author: zturner Date: Wed Oct 10 11:52:37 2018 New Revision: 344173 URL: http://llvm.org/viewvc/llvm-project?rev=344173&view=rev Log: [SymbolFileNativePDB] Fix compilation errors with gcc.
Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.h lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp?rev=344173&r1=344172&r2=344173&view=diff ============================================================================== --- lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp (original) +++ lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp Wed Oct 10 11:52:37 2018 @@ -134,14 +134,15 @@ void PdbIndex::BuildAddrToSymbolMap(Comp // If the debug info is incorrect, we could have multiple symbols with the // same address. So use try_emplace instead of insert, and the first one // will win. - auto emplace_result = cci.m_symbols_by_va.try_emplace(va, cu_sym_uid); - (void)emplace_result; + auto insert_result = + cci.m_symbols_by_va.insert(std::make_pair(va, cu_sym_uid)); + (void)insert_result; // The odds of an error in some function such as GetSegmentAndOffset or // MakeVirtualAddress are much higher than the odds of encountering bad // debug info, so assert that this item was inserted in the map as opposed // to having already been there. - lldbassert(emplace_result.second); + lldbassert(insert_result.second); } } Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp?rev=344173&r1=344172&r2=344173&view=diff ============================================================================== --- lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp (original) +++ lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp Wed Oct 10 11:52:37 2018 @@ -219,14 +219,14 @@ GetSegmentOffsetAndLength<TrampolineSym> template <> SegmentOffsetLength GetSegmentOffsetAndLength<Thunk32Sym>(const CVSymbol &sym) { Thunk32Sym record = createRecord<Thunk32Sym>(sym); - return {record.Segment, record.Offset, record.Length}; + return SegmentOffsetLength{record.Segment, record.Offset, record.Length}; } template <> SegmentOffsetLength GetSegmentOffsetAndLength<CoffGroupSym>(const CVSymbol &sym) { CoffGroupSym record = createRecord<CoffGroupSym>(sym); - return {record.Segment, record.Offset, record.Size}; + return SegmentOffsetLength{record.Segment, record.Offset, record.Size}; } SegmentOffsetLength lldb_private::npdb::GetSegmentOffsetAndLength( Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.h?rev=344173&r1=344172&r2=344173&view=diff ============================================================================== --- lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.h (original) +++ lldb/trunk/source/Plugins/SymbolFile/NativePDB/PdbUtil.h Wed Oct 10 11:52:37 2018 @@ -20,11 +20,16 @@ namespace lldb_private { namespace npdb { struct SegmentOffset { + SegmentOffset() = default; + SegmentOffset(uint16_t s, uint32_t o) : segment(s), offset(o) {} uint16_t segment = 0; uint32_t offset = 0; }; struct SegmentOffsetLength { + SegmentOffsetLength() = default; + SegmentOffsetLength(uint16_t s, uint32_t o, uint32_t l) + : so(s, o), length(l) {} SegmentOffset so; uint32_t length = 0; }; Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp?rev=344173&r1=344172&r2=344173&view=diff ============================================================================== --- lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp (original) +++ lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp Wed Oct 10 11:52:37 2018 @@ -487,7 +487,6 @@ bool SymbolFileNativePDB::ParseCompileUn } // LLDB wants the index of the file in the list of support files. - llvm::StringRef file_name = *efn; auto fn_iter = llvm::find(cci->m_file_list, *efn); lldbassert(fn_iter != cci->m_file_list.end()); uint32_t file_index = std::distance(cci->m_file_list.begin(), fn_iter); _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits