[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#64294: 30.0.50; setf strange when lexical-binding is nil
From: |
Katsumi Yamaoka |
Subject: |
bug#64294: 30.0.50; setf strange when lexical-binding is nil |
Date: |
Mon, 26 Jun 2023 09:40:58 +0900 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-cygwin) |
Hi,
In the *scratch* buffer:
(setq lexical-binding nil)
(require 'nnheader)
(macroexpand '(setf (mail-header-date header) date))
=> (let* ((v #'(lambda (cl-x) (progn (progn (aref cl-x 3)))))
(v header))
(\(setf\ funcall\) date v v))
This looks broken, though it gets normal if lexical-binding is t.
Because of this, an old ELisp module doesn't work. In addition,
the funny portion is replased with
\(setf\ internal--with-suppressed-warnings\)...
if the code is byte-compiled.
Thanks.
In GNU Emacs 30.0.50 (build 1, x86_64-pc-cygwin, GTK+ Version
3.22.28, cairo version 1.17.4) of 2023-06-26 built on localhost
- bug#64294: 30.0.50; setf strange when lexical-binding is nil,
Katsumi Yamaoka <=