]> git.eshelyaron.com Git - emacs.git/commit
Fix cl-generic bootstrap problems
authorLars Ingebrigtsen <larsi@gnus.org>
Fri, 24 Jun 2022 08:54:01 +0000 (10:54 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 24 Jun 2022 09:04:51 +0000 (11:04 +0200)
commit49910adf872a98d9c144d34478a53ecb3e01856f
treee5b69dc0e59565cfd537ae14ba0dffef107de619
parent2ff5cb4cb4420e2b18ea8451ad0b29f1a69bdb6c
Fix cl-generic bootstrap problems

* lisp/sqlite-mode.el (require):
* lisp/net/eudc.el (require):
* lisp/arc-mode.el (require): Require subr-x, since these files
are using macros from there.
* lisp/emacs-lisp/subr-x.el (with-memoization): Move from here...
* lisp/subr.el (with-memoization): ... to here, as it's used from
the preloaded cl-generic.el file.

* lisp/emacs-lisp/cl-generic.el (cl--generic-compiler): Don't use
the autoloaded `byte-compile' function during bootstrap.
(cl--generic-get-dispatcher): Don't require subr-x, either.

cl-generic has been preloaded since 2015, and most usages of it (in
preloaded files) work fine.  In particular, using `cl-defgeneric' is
unproblematic.  However, `cl-defmethod' would end up pulling in the
byte compiler (at load time), which would make it impossible to use
`cl-defmethod' in pre-loaded files, and this change fixes that (but
possibly not in the most self-evidently correct way).
lisp/arc-mode.el
lisp/emacs-lisp/cl-generic.el
lisp/emacs-lisp/subr-x.el
lisp/net/eudc.el
lisp/sqlite-mode.el
lisp/subr.el
test/lisp/custom-tests.el
test/lisp/emacs-lisp/cconv-tests.el