emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Always-true predicate?


From: Eli Zaretskii
Subject: Re: Always-true predicate?
Date: Mon, 22 Feb 2021 17:20:44 +0200

> From: chad <yandros@gmail.com>
> Date: Sun, 21 Feb 2021 21:02:43 -0800
> Cc: Robert Pluim <rpluim@gmail.com>, Lars Ingebrigtsen <larsi@gnus.org>, 
> Richard Stallman <rms@gnu.org>, 
>       EMACS development team <emacs-devel@gnu.org>
> 
> I suspect that I ran into an instance of this recently, where the helpful 
> package (an extension that offers
> expanded help functions, basically) had trouble in it's helpful-callable 
> function with facemenu-face-menu. I
> tracked the problem down to a bad interaction in helpful with this code in 
> facemenu.el:
> 
>  (defvar facemenu-face-menu
>    [...])
>  (defalias 'facemenu-face-menu facemenu-face-menu)
> 
> The problem that I get is:
> 
>  Debugger entered--Lisp error: (wrong-type-argument sequencep t)
>    mapconcat(identity (t) " ")
>    s-join(" " (t))
>    helpful--signature(facemenu-face-menu)
>    helpful-update()
>    helpful-callable(facemenu-face-menu)
>    funcall-interactively(helpful-callable facemenu-face-menu)
>    call-interactively(helpful-callable nil nil)
>    command-execute(helpful-callable)
> 
> I'm not familiar with the (defalias 'foo foo) idiom, so maybe it should be 
> expected to work, and it's just a bug
> in helpful. (I reported it to the package maintainers already, with a note 
> that I'd mention it here.) There are a
> few other instances of in emacs that I found with a quick search, and they 
> also cause similar trouble for
> helpful.
> 
> Is this an example of an accidental functional value, as I originally 
> expected, or am I barking up the wrong
> tree and instead just looking at a parsing bug? (My lisp is largely self 
> taught and started with Scheme, so
> these parts of elisp are murky to me.)

I think it's a bug in helpful: facemenu-face-menu is a keymap, so
maybe helpful isn't ready for that.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]