From ab210d1b8036762610d23cdae3b619b444d4cbc3 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Mon, 20 Apr 1998 22:06:27 +0000 Subject: [PATCH] (cl-do-arglist): Undo previous change. --- lisp/emacs-lisp/cl-macs.el | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el index 7467b2bb5ed..ed47ef4a4a6 100644 --- a/lisp/emacs-lisp/cl-macs.el +++ b/lisp/emacs-lisp/cl-macs.el @@ -302,7 +302,14 @@ ARGLIST allows full Common Lisp conventions." 'quote (list nil (cl-const-expr-val def))) (list 'list nil def)))))))) - (cl-push karg keys))))) + (cl-push karg keys) + ;; In Emacs 20.3, keyword symbols are preinitialized, + ;; making this unnecessary. But let's keep it for + ;; compatibility's sake. + (if (= (aref (symbol-name karg) 0) ?:) + (progn (set karg karg) + (cl-push (list 'setq karg (list 'quote karg)) + bind-inits))))))) (setq keys (nreverse keys)) (or (and (eq (car args) '&allow-other-keys) (cl-pop args)) (null keys) (= safety 0) -- 2.39.2