* bug#19734: 25.0.50; nested backquotes: recent changes not backward compatible
@ 2015-01-30 17:49 Michael Heerdegen
2015-01-30 21:01 ` Stefan Monnier
0 siblings, 1 reply; 2+ messages in thread
From: Michael Heerdegen @ 2015-01-30 17:49 UTC (permalink / raw)
To: 19734
Hello,
Recent changes in backquote.el, I guess especially in this commit:
86009dd5d886f1101358990e4f8f69a5d1467eb8
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Date: Sat Nov 15 23:59:50 2014 -0500
* lisp/emacs-lisp/backquote.el (backquote-process): Optimize away
the ,' case.
were not backwards compatible. If this was intended (?), it should be
mentioned in the news I think.
Here is an example. In Emacs 24, I had something like this in my config
(massively shortened):
--8<---------------cut here---------------start------------->8---
(defun my-make-feh-cmd ()
"Return a feh command line suitble for dired.
Take the current screen resolution at account."
(if (not window-system)
"feh"
(let* ((display-pixel-width (display-pixel-width))
(width (- display-pixel-width (frame-pixel-width))))
(format "feh -Z -g %sx%s+%s *"
width
(- (x-display-pixel-height) 30)
(min (+ (frame-pixel-width) 2) (- display-pixel-width width))))))
(require 'dired-x)
(let ((programs '("vlc *" "smplayer *")))
(setq-default
dired-guess-shell-alist-user
`((".*" (if (file-directory-p file)
`(,,'(my-make-feh-cmd) ;compute at runtime!
,@',programs)
',programs)))))
--8<---------------cut here---------------end--------------->8---
In trunk, the backquote expression evals to something different now, and
AFAICT
,,'(my-make-feh-cmd)
from above must now be
,(my-make-feh-cmd)
That looks less frightening, but I had to find this out myself because
my code was broken and there was no news entry.
Thanks,
Michael.
In GNU Emacs 25.0.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.14.5)
of 2015-01-29 on drachen
Repository revision: 1dc1959ebf50401c69adeb6d182950b59835f94d
Windowing system distributor `The X.Org Foundation', version 11.0.11602901
System Description: Debian GNU/Linux 8.0 (jessie)
Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GSETTINGS NOTIFY
LIBXML2 FREETYPE XFT ZLIB
^ permalink raw reply [flat|nested] 2+ messages in thread
* bug#19734: 25.0.50; nested backquotes: recent changes not backward compatible
2015-01-30 17:49 bug#19734: 25.0.50; nested backquotes: recent changes not backward compatible Michael Heerdegen
@ 2015-01-30 21:01 ` Stefan Monnier
0 siblings, 0 replies; 2+ messages in thread
From: Stefan Monnier @ 2015-01-30 21:01 UTC (permalink / raw)
To: Michael Heerdegen; +Cc: 19734-done
> * lisp/emacs-lisp/backquote.el (backquote-process): Optimize away
> the ,' case.
> were not backwards compatible. If this was intended (?), it should be
> mentioned in the news I think.
As the commit message indicates, this was supposed to be an
optimization, i.e. no change in observable behavior.
> In trunk, the backquote expression evals to something different now, and
> ,,'(my-make-feh-cmd)
> from above must now be
> ,(my-make-feh-cmd)
Yes, your rewrite is correct and desirable, but indeed we had a bug
which I've just fixed in master. Thanks.
Stefan
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-01-30 21:01 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-30 17:49 bug#19734: 25.0.50; nested backquotes: recent changes not backward compatible Michael Heerdegen
2015-01-30 21:01 ` Stefan Monnier
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.