From ac1a2e260e8ece34500b5879f766b4e54ee57b94 Mon Sep 17 00:00:00 2001 From: Stephen Leake Date: Tue, 10 Sep 2019 03:36:15 -0700 Subject: [PATCH] Support `cl-defstruct' in autoloads * lisp/emacs-lisp/autoload.el (make-autoload): Add `cl-defstruct' to "complex cases" list. * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add :autoload-end to limit what is declared in autoloads.el for a defstruct. --- lisp/emacs-lisp/autoload.el | 2 +- lisp/emacs-lisp/cl-macs.el | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lisp/emacs-lisp/autoload.el b/lisp/emacs-lisp/autoload.el index 541b22e3eea..a2dbd402c52 100644 --- a/lisp/emacs-lisp/autoload.el +++ b/lisp/emacs-lisp/autoload.el @@ -165,7 +165,7 @@ expression, in which case we want to handle forms differently." define-globalized-minor-mode defun defmacro easy-mmode-define-minor-mode define-minor-mode define-inline cl-defun cl-defmacro cl-defgeneric - pcase-defmacro)) + cl-defstruct pcase-defmacro)) (macrop car) (setq expand (let ((load-file-name file)) (macroexpand form))) (memq (car expand) '(progn prog1 defalias))) diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el index 1ae72666244..05a4192dd9b 100644 --- a/lisp/emacs-lisp/cl-macs.el +++ b/lisp/emacs-lisp/cl-macs.el @@ -3006,6 +3006,7 @@ Supported keywords for slots are: `(progn (defvar ,tag-symbol) ,@(nreverse forms) + :autoload-end ;; Call cl-struct-define during compilation as well, so that ;; a subsequent cl-defstruct in the same file can correctly include this ;; struct as a parent. -- 2.39.2