GNU bug report logs -
#55645
src/print.c; print_object changes make it impossible to compare elisp code across versions
Previous Next
Reported by: Tom Gillespie <tgbugs <at> gmail.com>
Date: Wed, 25 May 2022 23:13:01 UTC
Severity: normal
Tags: moreinfo, wontfix
Done: Tom Gillespie <tgbugs <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
Message #25 received at 55645 <at> debbugs.gnu.org (full text, mbox):
> If you're using prin1 as a way to compare stably differences between
> objects, this only works by accident: You have to be very lucky in which
> objects you have included in the output so far if you've managed to make
> this code work over time.
Ah I think I know what is missing here. I'm not trying to compare arbitrary
elisp objects. I'm explicitly only trying to compare literal emacs lisp source
code and that has been extremely easy since at least emacs 24 (iirc it is
also the same in 23). The only issue I have encountered was a change in
iirc 27 of the default value for print-escape-newlines or something like that.
> We can indeed add something that lets you control how symbols in
> specific are output by prin1, but I don't really see the utility in
> general -- because we have changed, and will change, how other objects
> are output by prin1, and if the objects you're outputting happens to
> contain these, your algo will break again.
These aren't arbitrary elisp objects, they are only objects that appear in
quoted elisp source code. There has been exactly one change in that
since emacs 24 (and possibly before), and it was a change where there
was already a variable to control the behavior.
This bug report was last modified 2 years and 311 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.