summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/pcase.el5
-rw-r--r--lisp/emacs-lisp/testcover.el4
2 files changed, 6 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/pcase.el b/lisp/emacs-lisp/pcase.el
index fd6b0c8db5c..fe62820f0cb 100644
--- a/lisp/emacs-lisp/pcase.el
+++ b/lisp/emacs-lisp/pcase.el
@@ -1172,7 +1172,10 @@ The predicate is the logical-AND of:
(upatd (pcase--expand-\` (cdr qpat))))
(if (and (eq (car-safe upata) 'quote) (eq (car-safe upatd) 'quote))
`'(,(cadr upata) . ,(cadr upatd))
- `(and (pred consp)
+ `(and ,@(when (eq (car qpat) '\`)
+ `((guard ,(macroexp-warn-and-return
+ "Nested ` are not supported" t nil nil qpat))))
+ (pred consp)
(app car-safe ,upata)
(app cdr-safe ,upatd)))))
((or (stringp qpat) (numberp qpat) (symbolp qpat)) `',qpat)
diff --git a/lisp/emacs-lisp/testcover.el b/lisp/emacs-lisp/testcover.el
index fb4a2a82d07..d916ca0f76a 100644
--- a/lisp/emacs-lisp/testcover.el
+++ b/lisp/emacs-lisp/testcover.el
@@ -469,7 +469,7 @@ or return multiple values."
;; form to look odd. See bug#25316.
'testcover-1value)
- (`(\` ,bq-form)
+ (`(,'\` ,bq-form)
(testcover-analyze-coverage-backquote-form bq-form))
((or 't 'nil (pred keywordp))
@@ -548,7 +548,7 @@ FORM is treated as if it will be evaluated."
'testcover-1value))
((pred atom)
'testcover-1value)
- (`(\` ,bq-form)
+ (`(,'\` ,bq-form)
(testcover-analyze-coverage-backquote-form bq-form))
(`(defconst ,sym ,val . ,_)
(push sym testcover-module-constants)