Closed Mercerenies closed 3 years ago
Macro expansion currently understands (and respects) the bindings of flet, but not those of labels. Specifically, in the following code
flet
labels
(defmacro foo () ...) (labels ((foo () (foo))) (foo))
The mention of foo in the labels body correctly calls the locally-defined function. However, the one inside of the foo definition should call the local function foo but inside performs macro expansion using the global macro.
foo
41f6eb4 closes this issue. labels blocks now behave correctly in the presence of similarly named macros.
Macro expansion currently understands (and respects) the bindings of
flet
, but not those oflabels
. Specifically, in the following codeThe mention of
foo
in thelabels
body correctly calls the locally-defined function. However, the one inside of thefoo
definition should call the local functionfoo
but inside performs macro expansion using the global macro.