summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/eieio-core.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emacs-lisp/eieio-core.el')
-rw-r--r--lisp/emacs-lisp/eieio-core.el5
1 files changed, 3 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/eieio-core.el b/lisp/emacs-lisp/eieio-core.el
index b6acab2a25a..620b47e68d2 100644
--- a/lisp/emacs-lisp/eieio-core.el
+++ b/lisp/emacs-lisp/eieio-core.el
@@ -1085,9 +1085,10 @@ method invocation orders of the involved classes."
These match if the argument is the name of a subclass of CLASS."
(list eieio--generic-subclass-generalizer))
-(defun eieio-declare-slots (&rest slots)
+(defmacro eieio-declare-slots (&rest slots)
"Declare that SLOTS are known eieio object slot names."
- (setq eieio--known-slot-names (append slots eieio--known-slot-names)))
+ `(eval-when-compile
+ (setq eieio--known-slot-names (append ',slots eieio--known-slot-names))))
(provide 'eieio-core)