Use toString instead of raw_svector_ostream for error messages

This commit is contained in:
bjorn3 2024-08-14 19:21:44 +00:00
parent 9de0d147f4
commit 7c972d75dc
1 changed files with 2 additions and 9 deletions

View File

@ -77,11 +77,7 @@ LLVMRustGetSymbols(char *BufPtr, size_t BufLen, void *State,
Expected<std::unique_ptr<object::SymbolicFile>> ObjOrErr = Expected<std::unique_ptr<object::SymbolicFile>> ObjOrErr =
getSymbolicFile(Buf->getMemBufferRef(), Context); getSymbolicFile(Buf->getMemBufferRef(), Context);
if (!ObjOrErr) { if (!ObjOrErr) {
Error E = ObjOrErr.takeError(); return ErrorCallback(toString(ObjOrErr.takeError()).c_str());
SmallString<0> ErrorBuf;
auto Error = raw_svector_ostream(ErrorBuf);
Error << E << '\0';
return ErrorCallback(Error.str().data());
} }
std::unique_ptr<object::SymbolicFile> Obj = std::move(*ObjOrErr); std::unique_ptr<object::SymbolicFile> Obj = std::move(*ObjOrErr);
@ -89,10 +85,7 @@ LLVMRustGetSymbols(char *BufPtr, size_t BufLen, void *State,
if (!isArchiveSymbol(S)) if (!isArchiveSymbol(S))
continue; continue;
if (Error E = S.printName(SymName)) { if (Error E = S.printName(SymName)) {
SmallString<0> ErrorBuf; return ErrorCallback(toString(std::move(E)).c_str());
auto Error = raw_svector_ostream(ErrorBuf);
Error << E << '\0';
return ErrorCallback(Error.str().data());
} }
SymName << '\0'; SymName << '\0';
if (void *E = Callback(State, SymNameBuf.str().data())) { if (void *E = Callback(State, SymNameBuf.str().data())) {