<div class="gmail_quote">On Sun, Aug 29, 2010 at 6:37 PM, Pascal J. Bourguignon <span dir="ltr"><<a href="mailto:pjb@informatimago.com">pjb@informatimago.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

When compiling a compiler macro, the &whole form seems to be referenced even if it is not</blockquote></div><br clear="all">This actually happens with all macros. Macros destructure forms: they always get the whole form to be parsed in a &whole variable and only by inspecting this list can they gather the values of their arguments.<div>

<br></div><div>The current code uses the name of the variable given by the user to store the form that is then parsed to assign values for each of the macro arguments.<div><br></div><div>So, in the end, the &whole variable is always referenced, but this happens way before it reaches the code supplied by the user.</div>

<div><br></div><div>I supposed I could complicate the macroexpansion adding yet another LET form with a &whole variable that is only seen by the user, but it does not seem so urgent.</div><div><br></div><div>Juanjo<div>

<br>-- <br>Instituto de Física Fundamental, CSIC<br>c/ Serrano, 113b, Madrid 28006 (Spain) <br><a href="http://juanjose.garciaripoll.googlepages.com">http://juanjose.garciaripoll.googlepages.com</a><br>
</div></div></div>