summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2024-03-08 11:57:22 -0500
committerStefan Monnier <monnier@iro.umontreal.ca>2024-03-08 11:57:22 -0500
commit345cdd7a70558cd47c2ab3e124e2352debaa57cb (patch)
tree1922d54f0a0956ebb8eef235c0a6a5ada72afe7c /lisp/emacs-lisp
parent5beb56fb53b2d6ee9d5ad621b7fc2c9d1d0ec9c5 (diff)
downloademacs-345cdd7a70558cd47c2ab3e124e2352debaa57cb.tar.gz
emacs-345cdd7a70558cd47c2ab3e124e2352debaa57cb.tar.bz2
emacs-345cdd7a70558cd47c2ab3e124e2352debaa57cb.zip
(eieio--generic-subclass-specializers): Autoload class
* lisp/emacs-lisp/eieio-core.el (eieio--generic-subclass-specializers): Don't forget to handle autoloaded classes.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/eieio-core.el2
1 files changed, 2 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/eieio-core.el b/lisp/emacs-lisp/eieio-core.el
index 9a73e7c7441..a2f7c4172a3 100644
--- a/lisp/emacs-lisp/eieio-core.el
+++ b/lisp/emacs-lisp/eieio-core.el
@@ -1079,6 +1079,8 @@ method invocation orders of the involved classes."
(defun eieio--generic-subclass-specializers (tag &rest _)
(when (cl--class-p tag)
+ (when (eieio--class-p tag)
+ (setq tag (eieio--full-class-object tag))) ;Autoload, if applicable.
(mapcar (lambda (class) `(subclass ,class))
(cl--class-allparents tag))))