GNU bug report logs - #25552
26.0.50; load cl unintendedly

Previous Next

Packages: mh-e, emacs;

Reported by: Katsumi Yamaoka <yamaoka <at> jpl.org>

Date: Fri, 27 Jan 2017 01:26:02 UTC

Severity: normal

Fixed in version 26.1

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #36 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
To: npostavs <at> users.sourceforge.net, mh-e-devel <at> lists.sourceforge.net
Cc: Glenn Morris <rgm <at> gnu.org>, Katsumi Yamaoka <yamaoka <at> jpl.org>,
 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Thu, 02 Feb 2017 18:05:55 -0800
npostavs <at> users.sourceforge.net wrote:

> Mike Kupfer <mkupfer <at> alum.berkeley.edu> writes:
> 
> > Hi Katsumi and Glenn, I applied Glenn's patch to 25.1.90, and I'm afraid
> > that it introduced a failure.
[...]
> I guess it's because defun-mh checks whether the alias target is fbound
> at compile time:
> 
>     (defmacro defun-mh (name function arg-list &rest body)
>       "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))))
> 
> It would be better to check at runtime:
> 
>     (defmacro defun-mh (name function arg-list &rest body)
>       `(if (fboundp ',function)
>            (defalias ',name ',function)
>          (defun ,name ,arg-list ,@body)))
> 
> And/or require `mail-abbrev' at compile time
> 
> --- i/lisp/mh-e/mh-compat.el
> +++ w/lisp/mh-e/mh-compat.el
> @@ -260,7 +260,7 @@ 'mh-line-end-position
>        'line-end-position
>      'point-at-eol))
>  
> -(mh-require 'mailabbrev nil t)
> +(eval-and-compile (mh-require 'mailabbrev nil t))
>  (defun-mh mh-mail-abbrev-make-syntax-table
>    mail-abbrev-make-syntax-table ()
>    "Emacs 21 and XEmacs don't have `mail-abbrev-make-syntax-table'.

Thanks, Noam!

I did some light testing of Noam's change to defun-mh plus Glenn's
patch.  The problem that I reported is gone, and I haven't seen any
other issues.  I did the testing with both Emacs 25.1.90 and master
(7cb7a58).

Does anyone on the MH-E dev team have any concerns about this
combination of changes?

mike




This bug report was last modified 8 years and 16 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.