Subject: bug#19362: 25.0.50; Fix `pp.el' in line with new `elisp-mode.el'

From: Drew Adams <[email-masked]>
Date: Wed, 6 Jul 2016 23:51:47 +0000 (UTC)

> > In the past, `eval-last-sexp' and `pp-eval-last-sexp' did about the
> > same thing, apart from the pretty-printing part (which the latter
> > farms out to another function).
> 
> So you're not talking about the difference between pp-to-string vs
> elisp--eval-last-sexp-print-value.
> 
> > My guess is that _improvements_
> > were made to the former case (only).  Just what those improvements
> > were and why they were made I don't know.
> [...]
> > In any case, I was not really referring to the interactive behavior
> > but to the code/behavior after the sexp has been determined.  In
> > the case of `eval-last-sexp' I guess that means the code other
> > than `elisp--preceding-sexp'.
> 
> And you're not talking about the difference between (pp-last-sexp) vs
> (eval-sexp-add-defvars (elisp--preceding-sexp)).
> 
> What's left? They both call eval in the middle. eval-last-sexp honours
> eval-expression-debug-on-error while pp-eval-last-sexp does not (this
> was the case for the old lisp-mode.el code in 24.3 as well). Other
> than that I don't see anything of significance.

Sorry, but I have no more time to devote to this.  I pointed to a
time where the code was more or less the same between the two, and
to a time where it had been changed to be really quite different.

It seemed (and still seems) clear to me that the non-pp version was
altered considerably - probably improving something, or adapting to
some other change (lexical binding, perhaps?), and the pp version
was not altered similarly.  My guess is that the pp version was
considered less important or was simply overlooked/ignored.

I think it deserves a similar look.  If no one wants to do that,
so be it.

If you feel you've taken a careful look and understand what changed
and why, and that none of the changes can be usefully extended to
pp, fine.  I'm not looking at this anymore, so you'll get no argument
from me.  I think I've said all I want to say about this.  Thanks for
having taken a look.