emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Why is FUNC in cl-callf not allowed to be an expression?


From: Stefan Monnier
Subject: Re: Why is FUNC in cl-callf not allowed to be an expression?
Date: Thu, 16 May 2019 15:34:49 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

> Something like this would help (i.e. gv-synthetic-place would
> work as expected):
[...]
> but I have no clue if it's correct or a good idea.

It's not correct in general, no.  But it pointed me to the origin of the
problem.  I installed a fix.

This said, having `gv-expander` on a macro is always risky business
because it makes the result of macroexpansion sensitive to the order in
which things are expanded.  Of course, having both compiler-macro and
gv-expander suffers fundamentally from the same problem, tho to
a lesser extent.

Related to your patch, we should change `macroexpand` to call
`macroexpand-1` and then make `cl-symbol-macrolet` advise
`macroexpand-1` so it doesn't need the `while` loop.


        Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]