summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorDaniel Colascione <dancol@dancol.org>2014-03-23 20:06:35 -0700
committerDaniel Colascione <dancol@dancol.org>2014-03-23 20:06:35 -0700
commit1edb4a2ec657c305880901e78317daf1990b5358 (patch)
tree4ff3d04c2d0ef075293845d63c7ecd9582fdd029 /lisp/emacs-lisp
parent8becfd220e46d163cfdcd99fc3e6098755952e46 (diff)
downloademacs-1edb4a2ec657c305880901e78317daf1990b5358.tar.gz
emacs-1edb4a2ec657c305880901e78317daf1990b5358.tar.bz2
emacs-1edb4a2ec657c305880901e78317daf1990b5358.zip
Improve performance of &key parsing
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/cl-macs.el3
1 files changed, 1 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index ae939c9c0e9..cd2d52a4b21 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -503,8 +503,7 @@ its argument list allows full Common Lisp conventions."
(varg (if (consp (car arg)) (cl-cadar arg) (car arg)))
(def (if (cdr arg) (cadr arg)
(or (car cl--bind-defs) (cadr (assq varg cl--bind-defs)))))
- (look `(cl-loop for cl--arg on ,restarg by #'cddr
- when (eq (car cl--arg) ',karg) return cl--arg)))
+ (look `(plist-member ,restarg ',karg)))
(and def cl--bind-enquote (setq def `',def))
(if (cddr arg)
(let* ((temp (or (nth 2 arg) (make-symbol "--cl-var--")))