From: Gerd Möllmann Date: Thu, 19 Oct 2023 12:35:06 +0000 (+0200) Subject: Merge remote-tracking branch 'origin/master' into scratch/pkg X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=971c2dbc280db7031a31f777657c1626d5c29558;p=emacs.git Merge remote-tracking branch 'origin/master' into scratch/pkg --- 971c2dbc280db7031a31f777657c1626d5c29558 diff --cc etc/emacs_lldb.py index c5a472e16cb,fa8d95d7b5b..f2b20e33ed2 --- a/etc/emacs_lldb.py +++ b/etc/emacs_lldb.py @@@ -176,38 -172,10 +173,38 @@@ class Lisp_Object return Lisp_Object(name).get_string_data() return None + def is_nil(self): + return self.lisp_type == None + + # Get the package of a symbol or None if not a symbol. + def get_symbol_package(self): + if self.lisp_type == "Lisp_Symbol": + value = self.value.GetValueForExpressionPath("->u.s.package") + package = Lisp_Object(value) + if package.pvec_type: + name = Lisp_Object(package.value.GetValueForExpressionPath("->name")) + return name.get_string_data() + return None + + def get_package_name(self): + name = Lisp_Object(self.value.GetValueForExpressionPath("->name")) + return name.get_string_data() + # Return a summary string for this object. def summary(self): - return str(self.value) + return str(self.untagged) + def dump(self, result): + if self.lisp_type == "Lisp_Symbol": + result.AppendMessage(f"package: {self.get_symbol_package()}") + result.AppendMessage(f"name: {self.get_symbol_name()}") + elif self.lisp_type == "Lisp_String": + result.AppendMessage(str(self.get_string_data())) + elif self.lisp_type == "Lisp_Vectorlike" and self.pvec_type == "PVEC_PACKAGE": + result.AppendMessage(f"package {self.get_package_name()}") + else: + result.AppendMessage(self.summary()) + ######################################################################## # LLDB Commands diff --cc src/.lldbinit index aae70b30ccc,a5789f49122..fcc7fa6e7d6 --- a/src/.lldbinit +++ b/src/.lldbinit @@@ -30,13 -30,7 +30,15 @@@ script -- sys.path.append('../etc' # Load our Python files command script import emacs_lldb +# b xsignal +b pkg_break +#b pkg_error +#b Fpkg_read +# To find out from where macOS prints stuff to stderr, like +# 023-07-20 13:41:17.073449+0200 emacs[53072:1205906] [default] +# CGSWindowShmemCreateWithPort failed on port 0 +# b libsystem_trace.dylib``_os_log_error_impl + # Print with children provider, depth 2. + command alias xprint frame variable -P 2 # end.