summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/bytecomp.el
diff options
context:
space:
mode:
authorMattias EngdegÄrd <mattiase@acm.org>2022-12-29 12:00:50 +0100
committerMattias EngdegÄrd <mattiase@acm.org>2022-12-29 12:24:47 +0100
commit2de25accaf31aef643557ec476041c770fc7ac15 (patch)
tree90140c1157c416cfbc336028bf3ad809c3a26005 /lisp/emacs-lisp/bytecomp.el
parent1480865e641b06d570f5ab56011f8e3e5481da7d (diff)
downloademacs-2de25accaf31aef643557ec476041c770fc7ac15.tar.gz
emacs-2de25accaf31aef643557ec476041c770fc7ac15.tar.bz2
emacs-2de25accaf31aef643557ec476041c770fc7ac15.zip
Warn about `condition-case' with quoted condition names
* lisp/emacs-lisp/bytecomp.el (byte-compile-condition-case): Add warning. * test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-warn-quoted-condition): Add test case.
Diffstat (limited to 'lisp/emacs-lisp/bytecomp.el')
-rw-r--r--lisp/emacs-lisp/bytecomp.el5
1 files changed, 5 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 7571b4d409a..1a488977390 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -4835,6 +4835,11 @@ binding slots have been popped."
(dolist (clause (reverse clauses))
(let ((condition (nth 1 clause)))
+ (when (and (eq (car-safe condition) 'quote)
+ (cdr condition) (null (cddr condition)))
+ (byte-compile-warn-x
+ condition "`condition-case' condition should not be quoted: %S"
+ condition))
(unless (consp condition) (setq condition (list condition)))
(dolist (c condition)
(unless (and c (symbolp c))