]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/emacs-lisp/cl-generic.el (gv-setter): Move declaration.
authorStefan Monnier <monnier@iro.umontreal.ca>
Sun, 16 Jun 2019 22:35:35 +0000 (18:35 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sun, 16 Jun 2019 22:35:35 +0000 (18:35 -0400)
Move it to those places where we know gv has been loaded.

lisp/emacs-lisp/cl-generic.el

index 3348080c0be671c5c60ee14cb6d6c61b1dfca1da..9013c1f0607f1c3b4e0e247af46a0b9385575ca0 100644 (file)
 (eval-when-compile (require 'cl-macs))  ;For cl--find-class.
 (eval-when-compile (require 'pcase))
 
-(declare-function gv-setter "gv" (name))
-
 (cl-defstruct (cl--generic-generalizer
                (:constructor nil)
                (:constructor cl-generic-make-generalizer
@@ -240,6 +238,7 @@ DEFAULT-BODY, if present, is used as the body of a default method.
       (push `(,args ,@options-and-methods) methods))
     (when (eq 'setf (car-safe name))
       (require 'gv)
+      (declare-function gv-setter "gv" (name))
       (setq name (gv-setter (cadr name))))
     `(prog1
          (progn
@@ -445,6 +444,7 @@ The set of acceptable TYPEs (also called \"specializers\") is defined
       (setq args (pop body)))
     (when (eq 'setf (car-safe name))
       (require 'gv)
+      (declare-function gv-setter "gv" (name))
       (setq name (gv-setter (cadr name))))
     (pcase-let* ((`(,uses-cnm . ,fun) (cl--generic-lambda args body)))
       `(progn