[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#25965: 26.0.50; iter-lambda may evaluate certain forms twice
From: |
Daniel Colascione |
Subject: |
bug#25965: 26.0.50; iter-lambda may evaluate certain forms twice |
Date: |
Wed, 08 Mar 2017 14:08:07 -0800 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) |
On Wed, Mar 08 2017, Stefan Monnier wrote:
>> The unwind-protect form is created in this function.
>>
>> #+BEGIN_SRC emacs-lisp
>> (defun cps--make-dynamic-binding-wrapper (dynamic-var static-var)
>> (cl-assert lexical-binding)
>> (lambda (form)
>> `(let ((,dynamic-var ,static-var))
>> (unwind-protect ; Update the static shadow after evaluation is done
>> ,form
>> (setf ,static-var ,dynamic-var))
>> ,form)))
>> #+END_SRC
>>
>> And it seems to me that the second occurrence of ,form is just an
>> error.
>
> Hmm... indeed that looks odd, and maybe just removing the second ,form
> is the right fix. Daniel, do you happen to remember what the second
> ,form above is meant to do?
Embarrass me years later? :-) I think it's safe to remove it. Let's make
sure to add a test too.