[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#46812: 28.0.50; [native-comp] (lambda (x) (if (= x 0.0) (floatp x) (
From: |
Pip Cet |
Subject: |
bug#46812: 28.0.50; [native-comp] (lambda (x) (if (= x 0.0) (floatp x) (error ""))) miscompiled |
Date: |
Sat, 27 Feb 2021 13:57:35 +0000 |
On Sat, Feb 27, 2021 at 1:54 PM Pip Cet <pipcet@gmail.com> wrote:
> In *scratch*, evaluate
>
> (funcall (native-compile `(lambda (x) (if (= x 0.0) (floatp x) (error ""))))
> 0)
>
> Expected Result:
>
> nil
>
> Actual Result:
>
> t
>
> [Note that this depends on lexical binding being in effect]
This arose from a discussion in bug#46670, and the relevant comment
with a fix (which unfortunately disables some correct optimizations in
addition to the incorrect ones) is at
https://lists.gnu.org/archive/html/bug-gnu-emacs/2021-02/msg01630.html.
It's important we fix this correctly, but I'm predicting we won't.
Pip