aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorStefan Monnier2015-01-30 16:00:29 -0500
committerStefan Monnier2015-01-30 16:00:29 -0500
commitd5e3922e08587e7eb9e5aec2e9f84cbda405f857 (patch)
tree6ab951b35a3ee24d7b5248e214500ece03ae0044 /lisp
parentadebc14b9c1794e49cfab9b3f2c4866acfbdf175 (diff)
downloademacs-d5e3922e08587e7eb9e5aec2e9f84cbda405f857.tar.gz
emacs-d5e3922e08587e7eb9e5aec2e9f84cbda405f857.zip
* lisp/emacs-lisp/backquote.el: Fix bug with unoptimized exp.
Fixes: debbugs:19734 * lisp/emacs-lisp/backquote.el (backquote-delay-process): Don't reuse `s' since it may be "equivalent" in some sense, yet different. * test/automated/core-elisp-tests.el (core-elisp-tests-3-backquote): New test.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/emacs-lisp/backquote.el4
2 files changed, 6 insertions, 3 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index eac2e44ee5a..3724388dfda 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12015-01-30 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * emacs-lisp/backquote.el (backquote-delay-process): Don't reuse `s'
4 since it may be "equivalent" in some sense, yet different (bug#19734).
5
12015-01-30 Oleh Krehel <ohwoeowho@gmail.com> 62015-01-30 Oleh Krehel <ohwoeowho@gmail.com>
2 7
3 * outline.el (outline-font-lock-face): Add docstring. 8 * outline.el (outline-font-lock-face): Add docstring.
diff --git a/lisp/emacs-lisp/backquote.el b/lisp/emacs-lisp/backquote.el
index 082955e0823..d5cdca2b1b5 100644
--- a/lisp/emacs-lisp/backquote.el
+++ b/lisp/emacs-lisp/backquote.el
@@ -120,9 +120,7 @@ Vectors work just like lists. Nested backquotes are permitted."
120This simply recurses through the body." 120This simply recurses through the body."
121 (let ((exp (backquote-listify (list (cons 0 (list 'quote (car s)))) 121 (let ((exp (backquote-listify (list (cons 0 (list 'quote (car s))))
122 (backquote-process (cdr s) level)))) 122 (backquote-process (cdr s) level))))
123 (if (eq (car-safe exp) 'quote) 123 (cons (if (eq (car-safe exp) 'quote) 0 1) exp)))
124 (cons 0 (list 'quote s))
125 (cons 1 exp))))
126 124
127(defun backquote-process (s &optional level) 125(defun backquote-process (s &optional level)
128 "Process the body of a backquote. 126 "Process the body of a backquote.