GNU bug report logs - #51140
28.0.50; cl-letf appears not to work with native-comp (at least for process-exit-status and other builtins)

Previous Next

Package: emacs;

Reported by: Robert Irelan <rirelan <at> gmail.com>

Date: Mon, 11 Oct 2021 22:38:01 UTC

Severity: normal

Tags: moreinfo

Found in version 28.0.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


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

From: Robert Irelan <rirelan <at> gmail.com>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 51140 <at> debbugs.gnu.org
Subject: Re: bug#51140: 28.0.50; cl-letf appears not to work with native-comp
 (at least for process-exit-status and other builtins)
Date: Mon, 11 Oct 2021 19:57:37 -0700
Ah, I see what you mean. I get the same error when I fix the free
variables in the lambda.

On Mon, Oct 11, 2021 at 7:50 PM Michael Heerdegen
<michael_heerdegen <at> web.de> wrote:
>
> Robert Irelan <rirelan <at> gmail.com> writes:
>
> >     (defun +ivy--always-return-zero-exit-code-a (fn &rest args)
> >       (let ((process-exit-status-orig
> >              (symbol-function 'process-exit-status)))
> >         (cl-letf* (((symbol-function 'process-exit-status)
> >                     (lambda (_proc)
> >                       (let ((code (funcall process-exit-status-orig proc)))
> >                         (if (= code 2) 0 code)))))
> >           (apply fn args)))
>
> You didn't touch what I meant: the variable `proc' is free in your
> lambda.  There is only an argument with the similar name `_prog'.  So
> that code still looks broken.
>
> Michael.



-- 
Robert Irelan
rirelan <at> gmail.com




This bug report was last modified 2 years and 246 days ago.

Previous Next


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