GNU bug report logs -
#25552
26.0.50; load cl unintendedly
Previous Next
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 #33 received at 25552 <at> debbugs.gnu.org (full text, mbox):
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. When I tried to compose an email,
> pressing the space key in the subject line got me
>
> Debugger entered--Lisp error: (wrong-type-argument syntax-table-p nil)
> set-syntax-table(nil)
> mh-beginning-of-word()
> mh-letter-complete-or-space(1)
> funcall-interactively(mh-letter-complete-or-space 1)
> call-interactively(mh-letter-complete-or-space nil nil)
> command-execute(mh-letter-complete-or-space)
>
> I vaguely recall there was some reason for not compiling mh-acros.el,
> but I don't remember the specifics. I'll look into this some more when
> I have more time (this Thursday).
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'.
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.