[Lldb-commits] [lldb] [lldb-dap] Support inspecting memory (PR #104317)

Greg Clayton via lldb-commits lldb-commits at lists.llvm.org
Wed Aug 14 23:18:46 PDT 2024


================
@@ -3600,8 +3617,12 @@ void request_setVariable(const llvm::json::Object &request) {
       if (variable.MightHaveChildren())
         newVariablesReference = g_dap.variables.InsertExpandableVariable(
             variable, /*is_permanent=*/false);
-
       body.try_emplace("variablesReference", newVariablesReference);
+
+      if (lldb::addr_t addr = GetMemoryReference(variable);
+          addr != LLDB_INVALID_ADDRESS) {
+        body.try_emplace("memoryReference", "0x" + llvm::utohexstr(addr));
+      }
----------------
clayborg wrote:

And we can now use the std::optional to clean this up:
```
if (std::optional<addr_t> addr = GetMemoryReference(v)) 
  object.try_emplace("memoryReference", "0x" + llvm::utohexstr(*addr));
```

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


More information about the lldb-commits mailing list