diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py --- a/lldb/packages/Python/lldbsuite/test/lldbtest.py +++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py @@ -784,6 +784,9 @@ # Inherit the TCC permissions from the inferior's parent. "settings set target.inherit-tcc true", + # Kill rather than detach from the inferior if something goes wrong. + "settings set target.detach-on-error false", + # Disable fix-its by default so that incorrect expressions in tests don't # pass just because Clang thinks it has a fix-it. "settings set target.auto-apply-fixits false", diff --git a/lldb/test/API/types/AbstractBase.py b/lldb/test/API/types/AbstractBase.py --- a/lldb/test/API/types/AbstractBase.py +++ b/lldb/test/API/types/AbstractBase.py @@ -155,6 +155,9 @@ # Inherit TCC permissions. We can leave this set. self.runCmd('settings set target.inherit-tcc true') + # Kill rather than detach from the inferior if something goes wrong. + self.runCmd('settings set target.detach-on-error false') + # And add hooks to restore the settings during tearDown(). self.addTearDownHook(lambda: self.runCmd( "settings set target.inline-breakpoint-strategy headers")) diff --git a/lldb/test/Shell/lit-lldb-init.in b/lldb/test/Shell/lit-lldb-init.in --- a/lldb/test/Shell/lit-lldb-init.in +++ b/lldb/test/Shell/lit-lldb-init.in @@ -5,3 +5,4 @@ settings set symbols.clang-modules-cache-path "@LLDB_TEST_MODULE_CACHE_LLDB@" settings set target.auto-apply-fixits false settings set target.inherit-tcc true +settings set target.detach-on-error false diff --git a/lldb/tools/lldb-test/lldb-test.cpp b/lldb/tools/lldb-test/lldb-test.cpp --- a/lldb/tools/lldb-test/lldb-test.cpp +++ b/lldb/tools/lldb-test/lldb-test.cpp @@ -1105,6 +1105,9 @@ Dbg->GetCommandInterpreter().HandleCommand( "settings set target.inherit-tcc true", /*add_to_history*/ eLazyBoolNo, Result); + Dbg->GetCommandInterpreter().HandleCommand( + "settings set target.detach-on-error false", + /*add_to_history*/ eLazyBoolNo, Result); if (!opts::Log.empty()) Dbg->EnableLog("lldb", {"all"}, opts::Log, 0, errs());