DavidSpickett created this revision. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits.
Replacing existing uses with AppendError. SetError is also part of the SBI API. Instead of removing it outright, deprecate it and have it call AppendError. AppendError is added to the API so users can move to that instead. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D104768 Files: lldb/include/lldb/API/SBCommandReturnObject.h lldb/include/lldb/Interpreter/CommandReturnObject.h lldb/source/API/SBCommandReturnObject.cpp lldb/source/Commands/CommandObjectBreakpoint.cpp lldb/source/Commands/CommandObjectMultiword.cpp lldb/source/Commands/CommandObjectProcess.cpp lldb/source/Commands/CommandObjectReproducer.cpp lldb/source/Commands/CommandObjectThread.cpp lldb/source/Commands/CommandObjectTrace.cpp lldb/source/Commands/CommandObjectType.cpp lldb/source/Interpreter/CommandObject.cpp lldb/source/Interpreter/CommandReturnObject.cpp
Index: lldb/source/Interpreter/CommandReturnObject.cpp =================================================================== --- lldb/source/Interpreter/CommandReturnObject.cpp +++ lldb/source/Interpreter/CommandReturnObject.cpp @@ -106,12 +106,7 @@ void CommandReturnObject::SetError(const Status &error, const char *fallback_error_cstr) { assert(error.Fail() && "Expected a failed Status"); - SetError(error.AsCString(fallback_error_cstr)); -} - -void CommandReturnObject::SetError(llvm::StringRef error_str) { - SetStatus(eReturnStatusFailed); - AppendError(error_str); + AppendError(error.AsCString(fallback_error_cstr)); } // Similar to AppendError, but do not prepend 'Status: ' to message, and don't Index: lldb/source/Interpreter/CommandObject.cpp =================================================================== --- lldb/source/Interpreter/CommandObject.cpp +++ lldb/source/Interpreter/CommandObject.cpp @@ -256,7 +256,7 @@ if (GetFlags().Test(eCommandProcessMustBeTraced)) { Target *target = m_exe_ctx.GetTargetPtr(); if (target && !target->GetTrace()) { - result.SetError("Process is not being traced."); + result.AppendError("Process is not being traced."); return false; } } Index: lldb/source/Commands/CommandObjectType.cpp =================================================================== --- lldb/source/Commands/CommandObjectType.cpp +++ lldb/source/Commands/CommandObjectType.cpp @@ -2744,7 +2744,7 @@ bool DoExecute(llvm::StringRef raw_command_line, CommandReturnObject &result) override { if (raw_command_line.empty()) { - result.SetError( + result.AppendError( "type lookup cannot be invoked without a type name as argument"); return false; } Index: lldb/source/Commands/CommandObjectTrace.cpp =================================================================== --- lldb/source/Commands/CommandObjectTrace.cpp +++ lldb/source/Commands/CommandObjectTrace.cpp @@ -251,7 +251,7 @@ bool DoExecute(Args &command, CommandReturnObject &result) override { Status error; if (command.empty()) { - result.SetError( + result.AppendError( "trace schema cannot be invoked without a plug-in as argument"); return false; } Index: lldb/source/Commands/CommandObjectThread.cpp =================================================================== --- lldb/source/Commands/CommandObjectThread.cpp +++ lldb/source/Commands/CommandObjectThread.cpp @@ -1728,7 +1728,7 @@ true /* condense_trivial */, m_options.m_unreported); // If we didn't find a TID, stop here and return an error. if (!success) { - result.SetError("Error dumping plans:"); + result.AppendError("Error dumping plans:"); result.AppendError(tmp_strm.GetString()); return false; } @@ -1966,7 +1966,7 @@ TraceSP trace_sp = process_sp->GetTarget().GetTrace(); if (llvm::Error err = trace_sp->Stop(tids)) - result.SetError(toString(std::move(err))); + result.AppendError(toString(std::move(err))); else result.SetStatus(eReturnStatusSuccessFinishResult); @@ -2091,7 +2091,7 @@ trace_sp->GetCursorPosition(*thread_sp)) - m_consecutive_repetitions * count; if (position < 0) - result.SetError("error: no more data"); + result.AppendError("error: no more data"); else trace_sp->DumpTraceInstructions(*thread_sp, result.GetOutputStream(), count, position, m_options.m_raw); Index: lldb/source/Commands/CommandObjectReproducer.cpp =================================================================== --- lldb/source/Commands/CommandObjectReproducer.cpp +++ lldb/source/Commands/CommandObjectReproducer.cpp @@ -162,7 +162,8 @@ return loader; // This is a soft error because this is expected to fail during capture. - result.SetError("Not specifying a reproducer is only support during replay."); + result.AppendError( + "Not specifying a reproducer is only support during replay."); result.SetStatus(eReturnStatusSuccessFinishNoResult); return nullptr; } @@ -276,7 +277,7 @@ auto &r = Reproducer::Instance(); if (!r.IsCapturing() && !r.IsReplaying()) { - result.SetError( + result.AppendError( "forcing a crash is only supported when capturing a reproducer."); result.SetStatus(eReturnStatusSuccessFinishNoResult); return false; @@ -583,7 +584,7 @@ return true; } case eReproducerProviderNone: - result.SetError("No valid provider specified."); + result.AppendError("No valid provider specified."); return false; } Index: lldb/source/Commands/CommandObjectProcess.cpp =================================================================== --- lldb/source/Commands/CommandObjectProcess.cpp +++ lldb/source/Commands/CommandObjectProcess.cpp @@ -1649,7 +1649,7 @@ TraceSP trace_sp = process_sp->GetTarget().GetTrace(); if (llvm::Error err = trace_sp->Stop()) - result.SetError(toString(std::move(err))); + result.AppendError(toString(std::move(err))); else result.SetStatus(eReturnStatusSuccessFinishResult); Index: lldb/source/Commands/CommandObjectMultiword.cpp =================================================================== --- lldb/source/Commands/CommandObjectMultiword.cpp +++ lldb/source/Commands/CommandObjectMultiword.cpp @@ -396,6 +396,6 @@ CommandObject *proxy_command = GetProxyCommandObject(); if (proxy_command) return proxy_command->Execute(args_string, result); - result.SetError(GetUnsupportedError()); + result.AppendError(GetUnsupportedError()); return false; } Index: lldb/source/Commands/CommandObjectBreakpoint.cpp =================================================================== --- lldb/source/Commands/CommandObjectBreakpoint.cpp +++ lldb/source/Commands/CommandObjectBreakpoint.cpp @@ -1798,7 +1798,7 @@ protected: bool DoExecute(Args &command, CommandReturnObject &result) override { if (!m_name_options.m_name.OptionWasSet()) { - result.SetError("No name option provided."); + result.AppendError("No name option provided."); return false; } @@ -1812,7 +1812,7 @@ size_t num_breakpoints = breakpoints.GetSize(); if (num_breakpoints == 0) { - result.SetError("No breakpoints, cannot add names."); + result.AppendError("No breakpoints, cannot add names."); return false; } @@ -1824,7 +1824,7 @@ if (result.Succeeded()) { if (valid_bp_ids.GetSize() == 0) { - result.SetError("No breakpoints specified, cannot add names."); + result.AppendError("No breakpoints specified, cannot add names."); return false; } size_t num_valid_ids = valid_bp_ids.GetSize(); @@ -1883,7 +1883,7 @@ protected: bool DoExecute(Args &command, CommandReturnObject &result) override { if (!m_name_options.m_name.OptionWasSet()) { - result.SetError("No name option provided."); + result.AppendError("No name option provided."); return false; } @@ -1897,7 +1897,7 @@ size_t num_breakpoints = breakpoints.GetSize(); if (num_breakpoints == 0) { - result.SetError("No breakpoints, cannot delete names."); + result.AppendError("No breakpoints, cannot delete names."); return false; } @@ -1909,7 +1909,7 @@ if (result.Succeeded()) { if (valid_bp_ids.GetSize() == 0) { - result.SetError("No breakpoints specified, cannot delete names."); + result.AppendError("No breakpoints specified, cannot delete names."); return false; } ConstString bp_name(m_name_options.m_name.GetCurrentValue()); Index: lldb/source/API/SBCommandReturnObject.cpp =================================================================== --- lldb/source/API/SBCommandReturnObject.cpp +++ lldb/source/API/SBCommandReturnObject.cpp @@ -210,6 +210,13 @@ ref().AppendWarning(message); } +void SBCommandReturnObject::AppendError(const char *message) { + LLDB_RECORD_METHOD(void, SBCommandReturnObject, AppendError, (const char *), + message); + + ref().AppendError(message); +} + CommandReturnObject *SBCommandReturnObject::operator->() const { return &**m_opaque_up; } @@ -363,7 +370,7 @@ error_cstr); if (error_cstr) - ref().SetError(error_cstr); + ref().AppendError(error_cstr); } namespace lldb_private { Index: lldb/include/lldb/Interpreter/CommandReturnObject.h =================================================================== --- lldb/include/lldb/Interpreter/CommandReturnObject.h +++ lldb/include/lldb/Interpreter/CommandReturnObject.h @@ -132,8 +132,6 @@ void SetError(const Status &error, const char *fallback_error_cstr = nullptr); - void SetError(llvm::StringRef error_cstr); - lldb::ReturnStatus GetStatus(); void SetStatus(lldb::ReturnStatus status); Index: lldb/include/lldb/API/SBCommandReturnObject.h =================================================================== --- lldb/include/lldb/API/SBCommandReturnObject.h +++ lldb/include/lldb/API/SBCommandReturnObject.h @@ -74,6 +74,8 @@ void AppendWarning(const char *message); + void AppendError(const char *message); + bool GetDescription(lldb::SBStream &description); void SetImmediateOutputFile(FILE *fh); // DEPRECATED @@ -103,7 +105,7 @@ void SetError(lldb::SBError &error, const char *fallback_error_cstr = nullptr); - void SetError(const char *error_cstr); + void SetError(const char *error_cstr); // DEPRECATED: use AppendError protected: friend class SBCommandInterpreter;
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits