* lisp/emacs-lisp/autoload.el (make-autoload): Support cl-defgeneric

* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Tweak for autoloading.
This commit is contained in:
Stefan Monnier 2017-02-21 13:51:12 -05:00
parent e785c74d3a
commit bac7de05e2
2 changed files with 2 additions and 5 deletions

View file

@ -164,7 +164,7 @@ expression, in which case we want to handle forms differently."
((and (memq car '(easy-mmode-define-global-mode define-global-minor-mode
define-globalized-minor-mode defun defmacro
easy-mmode-define-minor-mode define-minor-mode
define-inline cl-defun cl-defmacro))
define-inline cl-defun cl-defmacro cl-defgeneric))
(macrop car)
(setq expand (let ((load-file-name file)) (macroexpand form)))
(memq (car expand) '(progn prog1 defalias)))

View file

@ -233,6 +233,7 @@ DEFAULT-BODY, if present, is used as the body of a default method.
,(help-add-fundoc-usage doc args))
,@(mapcar (lambda (method) `(cl-defmethod ,name ,@method))
(nreverse methods)))
:autoload-end
,@(mapcar (lambda (declaration)
(let ((f (cdr (assq (car declaration)
defun-declarations-alist))))
@ -1215,9 +1216,5 @@ Used internally for the (major-mode MODE) context specializers."
(progn (cl-assert (null modes)) mode)
`(derived-mode ,mode . ,modes))))
;; Local variables:
;; generated-autoload-file: "cl-loaddefs.el"
;; End:
(provide 'cl-generic)
;;; cl-generic.el ends here