summaryrefslogtreecommitdiff
path: root/test/src
diff options
context:
space:
mode:
authorStefan Kangas <stefankangas@gmail.com>2019-09-14 01:49:23 +0200
committerStefan Kangas <stefankangas@gmail.com>2019-09-26 18:37:23 +0200
commit3cf8f9b1ec1a079f6cd1a127259414dcb0cf8672 (patch)
tree46fc8387c4646496157be34117ff7a904338f1df /test/src
parentb94f01a6165908d9f8b0d48653fdc8d75be4dd08 (diff)
downloademacs-3cf8f9b1ec1a079f6cd1a127259414dcb0cf8672.tar.gz
Remove support for destructive splicing in elisp
* src/lread.c (read1): Don't handle destructive splicing in backquote expressions (e.g. ",.<identifier>"). (Bug#19790) (syms_of_lread): Remove Qcomma_dot. * src/print.c (print_object): Don't check for Qcomma_dot. * test/src/eval-tests.el (eval-tests-19790-backquote-comma-dot-substitution): New test. * etc/NEWS: Announce it.
Diffstat (limited to 'test/src')
-rw-r--r--test/src/eval-tests.el7
1 files changed, 7 insertions, 0 deletions
diff --git a/test/src/eval-tests.el b/test/src/eval-tests.el
index 48295b81fa3..7a8eae82cf9 100644
--- a/test/src/eval-tests.el
+++ b/test/src/eval-tests.el
@@ -169,4 +169,11 @@ are found on the stack and therefore not garbage collected."
"Remove the Lisp reference to the byte-compiled object."
(setf (symbol-function #'eval-tests-33014-func) nil))
+(defun eval-tests-19790-backquote-comma-dot-substitution ()
+ "Regression test for Bug#19790.
+Don't handle destructive splicing in backquote expressions (like
+in Common Lisp). Instead, make sure substitution in backquote
+expressions works for identifiers starting with period."
+ (should (equal (let ((.x 'identity)) (eval `(,.x 'ok))) 'ok)))
+
;;; eval-tests.el ends here