GNU bug report logs - #59793
29.0.60; subr.elc is not compiled correctly

Previous Next

Package: emacs;

Reported by: Feng Shu <tumashu <at> 163.com>

Date: Sat, 3 Dec 2022 07:26:02 UTC

Severity: normal

Tags: notabug

Found in version 29.0.60

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


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

From: Akib Azmain Turja <akib <at> disroot.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: tumashu <at> 163.com, 59793 <at> debbugs.gnu.org
Subject: Re: bug#59793: 29.0.60; subr.elc is not compiled correctly
Date: Sun, 04 Dec 2022 17:18:24 +0600
[Message part 1 (text/plain, inline)]
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Akib Azmain Turja <akib <at> disroot.org>
>> Cc: Feng Shu <tumashu <at> 163.com>,  59793 <at> debbugs.gnu.org
>> Date: Sat, 03 Dec 2022 23:16:47 +0600
>> 
>> > Am I missing something, or do you redefine a function and then expect it to work like you never redefined it?
>> 
>> Unexpected: bug59593-yank just inserts the killed text.
>> Expected: bug59593-yank intercepts and shows the killed text in echo
>> area.
>
> You have redefined a subr.el function with cl-letf*, so how is what happens
> as result a bug in Emacs?  Does the original subr.el function not do what
> it's supposed to do, before you replace it?
>
> I understand you didn't expect the result of cl-letf*, and were surprised by
> what you saw, but I don't understand why you expect the Emacs development to
> do something about your surprise.
>

With subr.el (source), the bug59793-yank function overrides
'insert-for-yank' successfully.

With subr.elc (compiled byte-code), the function can't override
'insert-for-yank'.  Just try to replace the 'cl-letf' (not 'cl-letf*')
form with an 'error' call, bug59793-yank still just inserts text, which
is, obviously, unexpected.

>> > So I'm still confused...
>> 
>> Is it clear now?  (Somehow, I think, no.)
>
> See above: I understand what you are saying, but not why this is submitted
> as a bug to the Emacs development team.

Both source and compiled Emacs Lisp code should show the same behavior,
except performance.  But 'subr.el' and 'subr.elc' show different
behaviors.  Isn't this a byte-compiler bug?

-- 
Akib Azmain Turja, GPG key: 70018CE5819F17A3BBA666AFE74F0EFA922AE7F5
Fediverse: akib <at> hostux.social
Codeberg: akib
emailselfdefense.fsf.org | "Nothing can be secure without encryption."
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 1 year and 252 days ago.

Previous Next


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