summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/cl-generic.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emacs-lisp/cl-generic.el')
-rw-r--r--lisp/emacs-lisp/cl-generic.el18
1 files changed, 8 insertions, 10 deletions
diff --git a/lisp/emacs-lisp/cl-generic.el b/lisp/emacs-lisp/cl-generic.el
index b062c280a41..0ef0d1e192a 100644
--- a/lisp/emacs-lisp/cl-generic.el
+++ b/lisp/emacs-lisp/cl-generic.el
@@ -272,7 +272,7 @@ DEFAULT-BODY, if present, is used as the body of a default method.
(list
(macroexp-warn-and-return
(format "Non-symbol arguments to cl-defgeneric: %s"
- (mapconcat #'prin1-to-string nonsymargs ""))
+ (mapconcat #'prin1-to-string nonsymargs " "))
nil nil nil nonsymargs)))))
next-head)
(while (progn (setq next-head (car-safe (car options-and-methods)))
@@ -1101,10 +1101,10 @@ MET-NAME is as returned by `cl--generic-load-hist-format'."
(qualifiers (cl--generic-method-qualifiers method))
(call-con (cl--generic-method-call-con method))
(function (cl--generic-method-function method))
- (args (help-function-arglist (if (not (eq call-con 'curried))
- function
- (funcall function #'ignore))
- 'names))
+ (function (if (not (eq call-con 'curried))
+ function
+ (funcall function #'ignore)))
+ (args (help-function-arglist function 'names))
(docstring (documentation function))
(qual-string
(if (null qualifiers) ""
@@ -1379,6 +1379,7 @@ See the full list and their hierarchy in `cl--typeof-types'."
(cl--generic-prefill-dispatchers 0 integer)
(cl--generic-prefill-dispatchers 1 integer)
(cl--generic-prefill-dispatchers 0 cl--generic-generalizer integer)
+(cl--generic-prefill-dispatchers 0 (eql 'x) integer)
;;; Dispatch on major mode.
@@ -1391,11 +1392,8 @@ See the full list and their hierarchy in `cl--typeof-types'."
(defun cl--generic-derived-specializers (mode &rest _)
;; FIXME: Handle (derived-mode <mode1> ... <modeN>)
- (let ((specializers ()))
- (while mode
- (push `(derived-mode ,mode) specializers)
- (setq mode (get mode 'derived-mode-parent)))
- (nreverse specializers)))
+ (mapcar (lambda (mode) `(derived-mode ,mode))
+ (derived-mode-all-parents mode)))
(cl-generic-define-generalizer cl--generic-derived-generalizer
90 (lambda (name) `(and (symbolp ,name) (functionp ,name) ,name))