Subject: bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced

From: Eli Zaretskii <[email-masked]>
Date: Wed, 04 Jan 2023 16:36:01 +0200

> Date: Wed, 04 Jan 2023 09:24:09 +0000
> From: Gregory Heytings <[email-masked]>
> cc: [email-masked], Alan Mackenzie <[email-masked]>, 
>     Eli Zaretskii <[email-masked]>, [email-masked]
> 
> > For the loop currently in `subr.el` I think the (cdr ptr) is OK because 
> > we use the `setcdr` to truncate the list, so that last cons (whose `cdr` 
> > may be nil) will be in the list included in the (apply ....) entry.
> >
> 
> Indeed, now I see it, and I think (without being 100% sure) that it's OK. 
> It's yet another obscure point of the original code, though.

I hope all these revelations will find their way into comments to this
tricky code.