[Lldb-commits] [PATCH] D78825: [lldb/Driver] Exit with a non-zero exit code in batch mode when stopping because of an error.
Greg Clayton via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Mon Apr 27 23:57:28 PDT 2020
clayborg added a comment.
In D78825#2002598 <https://reviews.llvm.org/D78825#2002598>, @vsk wrote:
> Can we delete an override of SBDebugger::RunCommandInterpreter, or are they all part of the stable API? If we can, it'd be nice to get rid of the one with 6 args.
We can't remove any existing API because it is stable, yes.
See my inline comment and let me know your thoughts.
================
Comment at: lldb/include/lldb/API/SBDebugger.h:300-303
+ void RunCommandInterpreter(bool auto_handle_events, bool spawn_thread,
+ SBCommandInterpreterRunOptions &options,
+ int &num_errors, bool &quit_requested,
+ bool &stopped_for_crash, bool &stopped_for_error);
----------------
I'd vote to add a new function like:
```
SBCommandInterpreterRunResults RunCommandInterpreter(SBCommandInterpreterRunOptions &options);
```
We would need to add "auto_handle_events" and "spawn_thread" to SBCommandInterpreterRunOptions:
```
class LLDB_API SBCommandInterpreterRunOptions {
friend class SBDebugger;
friend class SBCommandInterpreter;
public:
bool GetAutoHandleEvents() const;
void SetAutoHandleEvents(bool);
bool GetSpawnThread() const;
void SetSpawnThread(bool);
```
and then we have an object: SBCommandInterpreterRunResults that we can query for number of errors, quit requested, stopped_for_crash, and stopped_for_error using accessors. This allows us to add new accessors without changing the API.
Repository:
rLLDB LLDB
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D78825/new/
https://reviews.llvm.org/D78825
More information about the lldb-commits
mailing list