I wrote
>No, I mean, for example, the reverse link in the message list, where
>instead of the reverse link being an entry in the message struct, the
>message struct has an entry whose value is (make-symbol "<--"), and
>then the actual reverse link is stored on that symbol.
Actually, I now see the source says:
;; We use an uninterned symbol here as a level of indirection
;; from a purely self-referential structure. This is
;; necessary so that Emacs debugger can be used on this
;; program.
but I don't understand this anyway!
I don't see any obvious problems with debugging looped data structures
in XEmacs.