Gunnar,
Thanks for this patch. It has been applied to the 21.1 branch of
XEmacs, and will appear in XEmacs 21.1.12.
- vin
>>>> On 29 Jul 2000, Gunnar Evermann
<ge204(a)eng.cam.ac.uk> said:
Gunnar> This has been annoying me for ages:
Gunnar> The pobj in gdbinit cannot cope with marked lrecords unless xemacs was
Gunnar> built with the indexed lrecord implementation (which is mandatory in
Gunnar> 21.2).
Gunnar> I'll have a look at 21.1's dbxrc and both 21.2's debugger init
files
Gunnar> next.
Gunnar> Vin, I'll leave applying this to 21.1 to you.
Gunnar> 2000-07-29 Gunnar Evermann <ge204(a)eng.cam.ac.uk>
Gunnar> * gdbinit(decode_object): Handle GC marked lrecords if not using
Gunnar> indexed lrecords.
Gunnar> (pobj): Type is called hashtable and not Lisp_Hash_Table.
Gunnar> (test_obj): Add Vall_weak_hashtables as testcase.
Gunnar> Index: src/gdbinit
Gunnar> ===================================================================
Gunnar> RCS file: /usr/CVSroot/XEmacs/xemacs/src/gdbinit,v
Gunnar> retrieving revision 1.5
Gunnar> diff -u -r1.5 gdbinit
Gunnar> --- gdbinit 1999/03/06 17:54:04 1.5
Gunnar> +++ gdbinit 2000/07/29 11:47:17
Gunnar> @@ -75,6 +75,10 @@
Gunnar> set $imp = lrecord_implementations_table[$lheader->type]
Gunnar> else
Gunnar> set $imp = $lheader->implementation
Gunnar> + if $imp->finalizer == this_marks_a_marked_record
Gunnar> + set $imp = $imp -1
Gunnar> + printf "marked lrecord:\n"
Gunnar> + end
Gunnar> end
Gunnar> else
Gunnar> set $imp = -1
Gunnar> @@ -320,7 +324,7 @@
Gunnar> pstruct Lisp_Glyph
Gunnar> else
Gunnar> if $imp == lrecord_hashtable
Gunnar> - pstruct Lisp_Hash_Table
Gunnar> + pstruct hashtable
Gunnar> else
Gunnar> if $imp == lrecord_image_instance
Gunnar> pstruct Lisp_Image_Instance
Gunnar> @@ -484,6 +488,8 @@
Gunnar> pobj Vobarray
Gunnar> printf "Vall_weak_lists: "
Gunnar> pobj Vall_weak_lists
Gunnar> + printf "Vall_weak_hashtables: "
Gunnar> + pobj Vall_weak_hashtables
Gunnar> printf "Vxemacs_codename: "
Gunnar> pobj Vxemacs_codename
Gunnar> end