[Lldb-commits] [lldb] [lldb] Resolve ObjC property backing storage in dwim-print (PR #225204)

Augusto Noronha via lldb-commits lldb-commits at lists.llvm.org
Fri Sep 25 16:11:25 PDT 2026


================
@@ -51,6 +52,52 @@ CommandObjectDWIMPrint::CommandObjectDWIMPrint(CommandInterpreter &interpreter)
 
 Options *CommandObjectDWIMPrint::GetOptions() { return &m_option_group; }
 
+std::string CommandObjectDWIMPrint::RewritePathForBackingStorage(
+    llvm::StringRef expr, StackFrame &frame,
+    lldb::DynamicValueType use_dynamic) {
+  llvm::SmallVector<llvm::StringRef, 4> components;
+  expr.split(components, '.');
+  if (components.empty())
+    return {};
+
+  VariableSP var_sp;
+  Status status;
+  ValueObjectSP valobj_sp = frame.GetValueForVariableExpressionPath(
----------------
augusto2112 wrote:

Do you know why we use `GetValueForVariableExpressionPath`? In Swift, we can omit `self` part when calling a method or referencing an ivar (`self.foo` vs `foo`). Will this work with the latter?

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


More information about the lldb-commits mailing list