On Thu, Jan 12, 2012 at 7:51 PM, Stephen J. Turnbull <stephen(a)xemacs.org> wrote:
Can you reproduce under the debugger?
Yes.
What do you mean by "appears"? That you have traced the
function and
you see that the reader returns the wrong sexp? Or just that the Lisp
stack shows the lambda itself, rather than the macro lambda, being
called? ISTM that the problem could easily be in the interpreter eval
code that handles macros, since the reader should basically just pair
up the parens and intern the symbols. I don't see why it would choose
to drop "(macro . "; it shouldn't know what "macro" means, at
the
reader stage it's just a symbol AFAIK.
Sorry, I mean that read0() is, in fact, returning the wrong sexp. I
wonder if it has something to do with the dot.
Have you compared the assembly for read0 (both against the GCC 4.7
32-bit compilation and against the most recent 64-bit GCC that you
have that works)?
No. Sigh. I need to learn how to read Intel assembly.
Sorry I can't be of more help, but I've not worked with the
reader.
Aidan probably knows as much about it as anybody active; if he doesn't
show up shortly, ping him.
No problem. You've given me a couple of ideas to try, already.
Thanks for the input.
--
Jerry James
http://www.jamezone.org/
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-beta