From c6b0fbe7dba2ed10fa390a8772a2c2b5d6485b2a Mon Sep 17 00:00:00 2001 From: Daniel Colascione Date: Sat, 22 Mar 2014 22:50:24 -0700 Subject: Fix cl-defun keyword arg parsing. Please bootstrap. --- lisp/emacs-lisp/cl-macs.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lisp/emacs-lisp') diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el index b1861cf7dfa..ae939c9c0e9 100644 --- a/lisp/emacs-lisp/cl-macs.el +++ b/lisp/emacs-lisp/cl-macs.el @@ -503,7 +503,8 @@ 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 `(memq ',karg ,restarg))) + (look `(cl-loop for cl--arg on ,restarg by #'cddr + when (eq (car cl--arg) ',karg) return cl--arg))) (and def cl--bind-enquote (setq def `',def)) (if (cddr arg) (let* ((temp (or (nth 2 arg) (make-symbol "--cl-var--"))) -- cgit v1.2.3