From 167f47d202c6f68105f6f1e80922d5513d9ec7f4 Mon Sep 17 00:00:00 2001 From: Mike Kupfer Date: Thu, 4 May 2017 14:30:17 -0800 Subject: [PATCH] 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 , Noam Postavsky --- lisp/mh-e/mh-acros.el | 7 +++---- 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: -- 2.39.5