Subject: bug#25552: 26.0.50; load cl unintendedly

From: Bill Wohler <[email-masked]>
Date: Thu, 02 Feb 2017 22:30:57 -0800

I don't have any objections if it runs on all supported versions of
Emacs that we support (a conversation we should probably have again
since we've had an Emacs release).

I'm happy to say we support the version of Emacs in Debian stable, which
is 24 and is what I'm running. I'll test the patch this weekend and reply.

Jeff, in the past, you ran the oldest version. What are you running now?
If it's older than 24 or 25, can you please test this patch as well?

Jeffrey Honig <[email-masked]> wrote:

> Bill should weigh in on this change, he did extensive work in this area.
> 
> Thanks
> 
> Jeff
> 
> --
> Jeffrey C. Honig <[email-masked]>
> http://jch.honig.net
> GnuPG ID:14E29E13
> Keybase: jchonig
> 
> On Thu, Feb 2, 2017 at 9:05 PM, Mike Kupfer <[email-masked]> wrote:
> 
>     [email-masked] wrote:
>    
>     > Mike Kupfer <[email-masked]> 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
> 
>     ------------------------------------------------------------------------------
>     Check out the vibrant tech community on one of the world's most
>     engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>     _______________________________________________
>     mh-e-devel mailing list
>     [email-masked]
>     https://lists.sourceforge.net/lists/listinfo/mh-e-devel
> 
> 
> ----------------------------------------------------
> Alternatives:
> 
> ----------------------------------------------------

-- 
Bill Wohler <[email-masked]> aka <[email-masked]>
http://www.newt.com/wohler/
GnuPG ID:610BD9AD