[Lldb-commits] [lldb] [lldb] Improve error message for script commands when there's no inte… (PR #73321)

via lldb-commits lldb-commits at lists.llvm.org
Fri Nov 24 04:10:44 PST 2023


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-lldb

Author: David Spickett (DavidSpickett)

<details>
<summary>Changes</summary>

…rpreter

It was:
```
error: there is no embedded script interpreter in this mode.
```

1. What does "mode" mean?
2. It implies there might be an embedded script interpreter for some other "mode", whatever that would be.

So I'm simplifying it and noting the most common reason for this which is that lldb wasn't built with a scripting language enabled in the first place.

There are other tips for dealing with this, but I'm not sure this message is the best place for them.

---
Full diff: https://github.com/llvm/llvm-project/pull/73321.diff


1 Files Affected:

- (modified) lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp (+6-4) 


``````````diff
diff --git a/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp b/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp
index 7df8b55fc7f55b1..9cc1d72eebf06cd 100644
--- a/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp
+++ b/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp
@@ -26,17 +26,19 @@ ScriptInterpreterNone::ScriptInterpreterNone(Debugger &debugger)
 
 ScriptInterpreterNone::~ScriptInterpreterNone() = default;
 
+static const char *no_interpreter_err_msg =
+    "There is no embedded script interpreter. Check that LLDB was built with a "
+    "scripting language enabled.\n";
+
 bool ScriptInterpreterNone::ExecuteOneLine(llvm::StringRef command,
                                            CommandReturnObject *,
                                            const ExecuteScriptOptions &) {
-  m_debugger.GetErrorStream().PutCString(
-      "error: there is no embedded script interpreter in this mode.\n");
+  m_debugger.GetErrorStream().PutCString(no_interpreter_err_msg);
   return false;
 }
 
 void ScriptInterpreterNone::ExecuteInterpreterLoop() {
-  m_debugger.GetErrorStream().PutCString(
-      "error: there is no embedded script interpreter in this mode.\n");
+  m_debugger.GetErrorStream().PutCString(no_interpreter_err_msg);
 }
 
 void ScriptInterpreterNone::Initialize() {

``````````

</details>


https://github.com/llvm/llvm-project/pull/73321


More information about the lldb-commits mailing list