diff options
author | Mike Kupfer <mkupfer@alum.berkeley.edu> | 2017-05-04 14:30:17 -0800 |
---|---|---|
committer | Mike Kupfer <mkupfer@alum.berkeley.edu> | 2017-05-04 15:30:17 -0700 |
commit | 167f47d202c6f68105f6f1e80922d5513d9ec7f4 (patch) | |
tree | 7765b2a03c880d72fe68393b1da227516df7b6bc /lisp/mh-e | |
parent | d15a4805d6347412ae1d605dcf5e8d3fe0f8e743 (diff) | |
download | emacs-167f47d202c6f68105f6f1e80922d5513d9ec7f4.tar.gz |
Fix MH-E not to load cl at runtime (Bug#25552)
* lisp/mh-e/mh-acros.el (defun-mh): Check at runtime, not
compile time, whether the target is bound.
* lisp/mh-e/mh-compat.el: Enable compilation. Pull in
mh-acros at compile time.
Authored-by: Glenn Morris <rgm@gnu.org>, Noam Postavsky
<npostavs@users.sourceforge.net>
Diffstat (limited to 'lisp/mh-e')
-rw-r--r-- | lisp/mh-e/mh-acros.el | 7 | ||||
-rw-r--r-- | lisp/mh-e/mh-compat.el | 3 |
2 files changed, 4 insertions, 6 deletions
diff --git a/lisp/mh-e/mh-acros.el b/lisp/mh-e/mh-acros.el index 0c89efbe3c1..d424247a4fc 100644 --- a/lisp/mh-e/mh-acros.el +++ b/lisp/mh-e/mh-acros.el @@ -90,10 +90,9 @@ loads \"cl\" appropriately." "Create function NAME. If FUNCTION exists, then NAME becomes an alias for FUNCTION. Otherwise, create function NAME with ARG-LIST and BODY." - (let ((defined-p (fboundp function))) - (if defined-p - `(defalias ',name ',function) - `(defun ,name ,arg-list ,@body)))) + `(if (fboundp ',function) + (defalias ',name ',function) + (defun ,name ,arg-list ,@body))) (put 'defun-mh 'lisp-indent-function 'defun) (put 'defun-mh 'doc-string-elt 4) diff --git a/lisp/mh-e/mh-compat.el b/lisp/mh-e/mh-compat.el index 3f3990e8695..099fc9bbbaa 100644 --- a/lisp/mh-e/mh-compat.el +++ b/lisp/mh-e/mh-compat.el @@ -40,7 +40,7 @@ ;; Items are listed alphabetically (except for mh-require which is ;; needed sooner it would normally appear). -(require 'mh-acros) +(eval-when-compile (require 'mh-acros)) (mh-do-in-gnu-emacs (defalias 'mh-require 'require)) @@ -374,7 +374,6 @@ XEmacs." (provide 'mh-compat) ;; Local Variables: -;; no-byte-compile: t ;; indent-tabs-mode: nil ;; sentence-end-double-space: nil ;; End: |