(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
(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
(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