From: Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: Vibhav Pant <vibhavp@gmail.com>
Cc: 60974@debbugs.gnu.org, emacs-devel <emacs-devel@gnu.org>
Subject: bug#60974: 30.0.50; byte-compile-preprocess mutates self evaluating forms in expanded macro bodies
Date: Tue, 31 Jan 2023 09:34:50 -0500 [thread overview]
Message-ID: <jwva61y3h8x.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <2d72943db9995af6a98744f4a4da3cef98773b86.camel@gmail.com> (Vibhav Pant's message of "Tue, 31 Jan 2023 19:22:56 +0530")
>> > Ah, right. Theother way I could think of a fix is setq-ing `form`
>> > to a
>> > shallow copy of the original form, with only the place(s) changed.
>> > This
>> > patch tries to do that by using `pcase-let` to destructure forms.
>>
>> Hmm... yes, that's closer. It's pretty ugly, tho.
>> Yet it's hard to make it less ugly here because the
>> `cconv-freevars-alist` really depends on `eq` equality.
>>
>> Maybe we should pass `cif` to `cconv--convert-function` (or maybe
>> even
>> move most of that `cconv--interactive-form-funs`-handling to that
>> function) and arrange for that function to do the
>> "non-side-effecting-equivalent-of" (setf (cadr (car bf)) form)?
>>
>>
>> Stefan
>>
>
> I tried to shift the `cif` related bits to `cconc--convert-function`,
> but my understanding of cconv.el isn't that great, so I wasn't
> successful at doing that :( Should I add a TODO to the change for the
> future?
Yes, please,
Stefan
next prev parent reply other threads:[~2023-01-31 14:34 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-20 21:24 bug#60974: 30.0.50; byte-compile-preprocess mutates self evaluating forms in expanded macro bodies Vibhav Pant
2023-01-20 21:35 ` Vibhav Pant
2023-01-21 5:43 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-01-27 12:44 ` Vibhav Pant
2023-01-28 23:10 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-01-31 13:52 ` Vibhav Pant
2023-01-31 14:34 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2023-02-01 7:41 ` Vibhav Pant
2023-02-01 14:33 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-02-02 12:35 ` Vibhav Pant
2023-02-02 12:39 ` Mattias Engdegård
2023-02-02 13:15 ` Vibhav Pant
2023-02-02 16:04 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-02-07 13:02 ` Vibhav Pant
2023-02-02 14:26 ` Eli Zaretskii
2023-02-02 14:26 ` Eli Zaretskii
2023-02-02 12:35 ` Vibhav Pant
2023-02-01 7:41 ` Vibhav Pant
2023-01-20 21:36 ` bug#60974: [PATCH] " Vibhav Pant
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwva61y3h8x.fsf-monnier+emacs@gnu.org \
--to=bug-gnu-emacs@gnu.org \
--cc=60974@debbugs.gnu.org \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
--cc=vibhavp@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.