From 69f4902ba685a49e80a8d39998477ee72ca9d53b Mon Sep 17 00:00:00 2001 From: Lang Hames Date: Thu, 14 Jul 2016 20:44:27 +0000 Subject: [Object] Change Archive::findSym to return an Expected>. As suggested by Rafael in review of D22079 - this was accidentally left out of the final commit (r275316). llvm-svn: 275469 --- llvm/lib/Object/Archive.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'llvm/lib/Object/Archive.cpp') diff --git a/llvm/lib/Object/Archive.cpp b/llvm/lib/Object/Archive.cpp index 4827e58f5d3..daf301e2e7e 100644 --- a/llvm/lib/Object/Archive.cpp +++ b/llvm/lib/Object/Archive.cpp @@ -667,23 +667,20 @@ uint32_t Archive::getNumberOfSymbols() const { return read32le(buf); } -Archive::child_iterator Archive::findSym(Error &Err, StringRef name) const { +Expected> Archive::findSym(StringRef name) const { Archive::symbol_iterator bs = symbol_begin(); Archive::symbol_iterator es = symbol_end(); for (; bs != es; ++bs) { StringRef SymName = bs->getName(); if (SymName == name) { - if (auto MemberOrErr = bs->getMember()) { - return child_iterator(*MemberOrErr, &Err); - } else { - ErrorAsOutParameter ErrAsOutParam(Err); - Err = errorCodeToError(MemberOrErr.getError()); - return child_end(); - } + if (auto MemberOrErr = bs->getMember()) + return Child(*MemberOrErr); + else + return errorCodeToError(MemberOrErr.getError()); } } - return child_end(); + return Optional(); } bool Archive::hasSymbolTable() const { return !SymbolTable.empty(); } -- cgit v1.2.3