summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/cl-generic.el5
1 files changed, 2 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/cl-generic.el b/lisp/emacs-lisp/cl-generic.el
index 10490f0638c..2c292415cfe 100644
--- a/lisp/emacs-lisp/cl-generic.el
+++ b/lisp/emacs-lisp/cl-generic.el
@@ -631,14 +631,13 @@ The set of acceptable TYPEs (also called \"specializers\") is defined
(setq dispatch-idx 0))
(dotimes (i dispatch-idx)
(push (make-symbol (format "arg%d" (- dispatch-idx i 1))) fixedargs))
- ;; FIXME: We should find a way to expand `with-memoize' once and forall
- ;; so we don't need `subr-x' when we get here.
- (require 'subr-x)
;; FIXME: For generic functions with a single method (or with 2 methods,
;; one of which always matches), using a tagcode + hash-table is
;; overkill: better just use a `cl-typep' test.
(byte-compile
`(lambda (generic dispatches-left methods)
+ ;; FIXME: We should find a way to expand `with-memoize' once
+ ;; and forall so we don't need `subr-x' when we get here.
(eval-when-compile (require 'subr-x))
(let ((method-cache (make-hash-table :test #'eql)))
(lambda (,@fixedargs &rest args)