GNU bug report logs - #29334
25.3; compiled commands don't respect special interactive expressions

Previous Next

Package: emacs;

Reported by: Allen Li <vianchielfaura <at> gmail.com>

Date: Fri, 17 Nov 2017 06:18:02 UTC

Severity: normal

Tags: confirmed

Found in versions 24.4, 25.3

Full log


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

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 29334 <at> debbugs.gnu.org, rgm <at> gnu.org, vianchielfaura <at> gmail.com
Subject: Re: bug#29334: 25.3;
 compiled commands don't respect special interactive expressions
Date: Fri, 24 Nov 2017 07:17:58 -0500
Eli Zaretskii <eliz <at> gnu.org> writes:

>> To fix this, change `call-interactively' so that it checks compiled
>> functions for lexical-binding as well.  Then the byte-compiler can
>> preserve the source of interactive forms regardless of the value of
>> lexical-binding.
>
> Thanks.  If no objections are voiced to this approach, please push it
> to the master branch.  I think this is too radical for the release
> branch.

Hah, okay, but that was the conservative approach!  The radical one
would be resolving this FIXME:

    static void
    fix_command (Lisp_Object input, Lisp_Object values)
    {
      /* FIXME: Instead of this ugly hack, we should provide a way for an
         interactive spec to return an expression/function that will re-build the
         args without user intervention.  */

> P.S. Should this change be reflected in the ELisp manual somehow?

I don't see where.




This bug report was last modified 3 years and 130 days ago.

Previous Next


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