mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 14:30:50 -08:00
Pre-expand lexical-let, since otherwise it requires cl to be loaded
Fixes https://github.com/jwiegley/use-package/issues/571
This commit is contained in:
parent
71fc224961
commit
7cc17cee8f
2 changed files with 16 additions and 18 deletions
|
|
@ -671,14 +671,17 @@ If ALLOW-EMPTY is non-nil, it's OK for ARGS to be an empty list."
|
||||||
(defun use-package-memoize (f arg)
|
(defun use-package-memoize (f arg)
|
||||||
"Ensure the macro-expansion of F applied to ARG evaluates ARG
|
"Ensure the macro-expansion of F applied to ARG evaluates ARG
|
||||||
no more than once."
|
no more than once."
|
||||||
(let ((loaded (cl-gensym "use-package--loaded"))
|
(let* ((loaded (cl-gensym "use-package--loaded"))
|
||||||
(result (cl-gensym "use-package--result"))
|
(result (cl-gensym "use-package--result"))
|
||||||
(next (cl-gensym "use-package--next")))
|
(next (cl-gensym "use-package--next"))
|
||||||
`((lexical-let (,loaded ,result)
|
(body `(lexical-let (,loaded ,result)
|
||||||
,@(funcall f `((if ,loaded
|
,@(funcall f `((if ,loaded
|
||||||
,result
|
,result
|
||||||
(setq ,loaded t)
|
(setq ,loaded t)
|
||||||
(setq ,result ,arg))))))))
|
(setq ,result ,arg)))))))
|
||||||
|
`(,(if (eq use-package-verbose 'errors)
|
||||||
|
body
|
||||||
|
(macroexpand body)))))
|
||||||
|
|
||||||
(defsubst use-package-normalize-value (label arg)
|
(defsubst use-package-normalize-value (label arg)
|
||||||
"Normalize the Lisp value given by ARG.
|
"Normalize the Lisp value given by ARG.
|
||||||
|
|
|
||||||
|
|
@ -1213,8 +1213,7 @@
|
||||||
(eval-after-load 'quux
|
(eval-after-load 'quux
|
||||||
'(if ,_ ,_
|
'(if ,_ ,_
|
||||||
(setq ,_ t)
|
(setq ,_ t)
|
||||||
(setq ,_ (require 'foo nil nil)))))))
|
(setq ,_ (require 'foo nil nil)))))))))
|
||||||
))
|
|
||||||
|
|
||||||
(ert-deftest use-package-test/:after-7 ()
|
(ert-deftest use-package-test/:after-7 ()
|
||||||
(match-expansion
|
(match-expansion
|
||||||
|
|
@ -1228,8 +1227,7 @@
|
||||||
(eval-after-load 'bow
|
(eval-after-load 'bow
|
||||||
'(if ,_ ,_
|
'(if ,_ ,_
|
||||||
(setq ,_ t)
|
(setq ,_ t)
|
||||||
(setq ,_ (require 'foo nil nil)))))
|
(setq ,_ (require 'foo nil nil)))))))
|
||||||
))
|
|
||||||
|
|
||||||
(ert-deftest use-package-test/:after-8 ()
|
(ert-deftest use-package-test/:after-8 ()
|
||||||
(match-expansion
|
(match-expansion
|
||||||
|
|
@ -1254,8 +1252,7 @@
|
||||||
(eval-after-load 'quux
|
(eval-after-load 'quux
|
||||||
'(if ,_ ,_
|
'(if ,_ ,_
|
||||||
(setq ,_ t)
|
(setq ,_ t)
|
||||||
(setq ,_ (require 'foo nil nil)))))))
|
(setq ,_ (require 'foo nil nil)))))))))
|
||||||
))
|
|
||||||
|
|
||||||
(ert-deftest use-package-test/:after-9 ()
|
(ert-deftest use-package-test/:after-9 ()
|
||||||
(match-expansion
|
(match-expansion
|
||||||
|
|
@ -1270,8 +1267,7 @@
|
||||||
'(eval-after-load 'bow
|
'(eval-after-load 'bow
|
||||||
'(if ,_ ,_
|
'(if ,_ ,_
|
||||||
(setq ,_ t)
|
(setq ,_ t)
|
||||||
(setq ,_ (require 'foo nil nil))))))
|
(setq ,_ (require 'foo nil nil))))))))
|
||||||
))
|
|
||||||
|
|
||||||
(ert-deftest use-package-test/:after-10 ()
|
(ert-deftest use-package-test/:after-10 ()
|
||||||
(match-expansion
|
(match-expansion
|
||||||
|
|
@ -1289,8 +1285,7 @@
|
||||||
(eval-after-load 'baz
|
(eval-after-load 'baz
|
||||||
'(if ,_ ,_
|
'(if ,_ ,_
|
||||||
(setq ,_ t)
|
(setq ,_ t)
|
||||||
(setq ,_ (require 'foo nil nil)))))
|
(setq ,_ (require 'foo nil nil)))))))
|
||||||
))
|
|
||||||
|
|
||||||
(ert-deftest use-package-test/:demand-1 ()
|
(ert-deftest use-package-test/:demand-1 ()
|
||||||
(match-expansion
|
(match-expansion
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue