mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 06:20:55 -08:00
Remove some early-bootstrap dependencies for advice
The dependencies between `advice`, cl-generic`, `bytecomp`, `cl-lib`, `simple`, `help`, ... were becoming unmanageable. Break the reliance on `advice` (which includes making sure the compiler is not needed during the early bootstrap). * lisp/simple.el (pre-redisplay-function): Set without using `add-function`. * lisp/loadup.el (advice, simple): Move to after `cl-generic`. * lisp/help.el (command-error-function): Set without using `add-function`. (help-command-error-confusable-suggestions): Explicitly call `command-error-default-function` instead. * lisp/emacs-lisp/cl-macs.el (pcase--mutually-exclusive-p): Don't optimize during early-bootstrap. * lisp/emacs-lisp/cl-generic.el (cl--generic-lambda): Tiny simplification. (cl-defmethod): Label the obsolescence warning as it should. (cl--generic-compiler): New variable. (cl--generic-get-dispatcher): Use it. (cl--generic-prefill-dispatchers): Make freshly made dispatchers.
This commit is contained in:
parent
751c8f88c4
commit
06ea82e4e3
5 changed files with 48 additions and 20 deletions
|
|
@ -3279,8 +3279,9 @@ the form NAME which is a shorthand for (NAME NAME)."
|
|||
(funcall orig pred1
|
||||
(cl--defstruct-predicate t2))))
|
||||
(funcall orig pred1 pred2))))
|
||||
(advice-add 'pcase--mutually-exclusive-p
|
||||
:around #'cl--pcase-mutually-exclusive-p)
|
||||
(when (fboundp 'advice-add) ;Not available during bootstrap.
|
||||
(advice-add 'pcase--mutually-exclusive-p
|
||||
:around #'cl--pcase-mutually-exclusive-p))
|
||||
|
||||
|
||||
(defun cl-struct-sequence-type (struct-type)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue