diff options
author | Noam Postavsky <npostavs@gmail.com> | 2019-06-26 08:47:56 -0400 |
---|---|---|
committer | Noam Postavsky <npostavs@gmail.com> | 2019-06-26 08:50:27 -0400 |
commit | 9233865b7005831e63755eb84ae7da060f878a55 (patch) | |
tree | cf63da70311c6e2fef3e51f575776eca8173a0de /lisp/emacs-lisp | |
parent | 260b6c2c931d74ef64dacb20b7fcae6f888e6d42 (diff) | |
download | emacs-9233865b7005831e63755eb84ae7da060f878a55.tar.gz |
Fix (rx-to-string (and (literal STR) (regexp STR)) regression
* lisp/emacs-lisp/rx.el (rx-regexp, rx-literal): Check the cadr of the
form for stringness, not the form itself.
* test/lisp/emacs-lisp/rx-tests.el (rx-to-string-lisp-forms): New test.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/rx.el | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/rx.el b/lisp/emacs-lisp/rx.el index 1b5afe73b45..24dd6cbf1d6 100644 --- a/lisp/emacs-lisp/rx.el +++ b/lisp/emacs-lisp/rx.el @@ -874,7 +874,7 @@ If FORM is `(minimal-match FORM1)', non-greedy versions of `*', (defun rx-regexp (form) "Parse and produce code from FORM, which is `(regexp STRING)'." - (cond ((stringp form) + (cond ((stringp (cadr form)) (rx-group-if (cadr form) rx-parent)) (rx--compile-to-lisp ;; Always group non-string forms, since we can't be sure they @@ -884,7 +884,7 @@ If FORM is `(minimal-match FORM1)', non-greedy versions of `*', (defun rx-literal (form) "Parse and produce code from FORM, which is `(literal STRING-EXP)'." - (cond ((stringp form) + (cond ((stringp (cadr form)) ;; This is allowed, but makes little sense, you could just ;; use STRING directly. (rx-group-if (regexp-quote (cadr form)) rx-parent)) |