diff options
Diffstat (limited to 'lib/DebugInfo/Symbolize')
-rw-r--r-- | lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp b/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp index e3146245984..59efdeff763 100644 --- a/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp +++ b/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp @@ -119,7 +119,10 @@ std::error_code SymbolizableObjectFile::addSymbol(const SymbolRef &Symbol, uint64_t SymbolSize, DataExtractor *OpdExtractor, uint64_t OpdAddress) { - SymbolRef::Type SymbolType = Symbol.getType(); + ErrorOr<SymbolRef::Type> SymbolTypeOrErr = Symbol.getType(); + if (auto EC = SymbolTypeOrErr.getError()) + return EC; + SymbolRef::Type SymbolType = *SymbolTypeOrErr; if (SymbolType != SymbolRef::ST_Function && SymbolType != SymbolRef::ST_Data) return std::error_code(); ErrorOr<uint64_t> SymbolAddressOrErr = Symbol.getAddress(); |