emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

scratch/igc a2ad05a8922 1/3: LLDB: Workaround for GetValueForExpressionP


From: Gerd Moellmann
Subject: scratch/igc a2ad05a8922 1/3: LLDB: Workaround for GetValueForExpressionPath
Date: Wed, 4 Sep 2024 02:28:42 -0400 (EDT)

branch: scratch/igc
commit a2ad05a8922c5ec4f6cf4fd32170504e4b24d2ba
Author: Gerd Möllmann <gerd@gnu.org>
Commit: Gerd Möllmann <gerd@gnu.org>

    LLDB: Workaround for GetValueForExpressionPath
    
    The function stopped working in LLDB 18.x.
    
    * etc/emacs_lldb.py (Lisp_Object.init_lisp_types): Use
    GetChildMemberWithName.
---
 etc/emacs_lldb.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/etc/emacs_lldb.py b/etc/emacs_lldb.py
index 486a6bc9cb2..5c32517b189 100644
--- a/etc/emacs_lldb.py
+++ b/etc/emacs_lldb.py
@@ -111,8 +111,9 @@ class Lisp_Object:
         self.lisp_type = enumerator_name(t)
         if self.lisp_type == "Lisp_Vectorlike":
             self.pvec_type = "PVEC_NORMAL_VECTOR"
-            vector = self.get_lisp_pointer("struct Lisp_Vector")
-            size = vector.GetValueForExpressionPath("->header.size")
+            vector = self.get_lisp_pointer("struct Lisp_Vector", False)
+            header = vector.GetChildMemberWithName("header");
+            size = header.GetChildMemberWithName("size");
             size = size.GetValueAsUnsigned()
             pseudo = self.eval(f"{size} & PSEUDOVECTOR_FLAG")
             if pseudo.GetValueAsUnsigned() != 0:



reply via email to

[Prev in Thread] Current Thread [Next in Thread]