Discussion:
Macro expander bug
Will Noble
2011-12-01 02:30:18 UTC
Permalink
Hi,

I tried to load the package defs from SSAX and it killed the macro expander.
It appears that when BIND-ALIASES was switched to the new cenv
representation it stopped including macro eval in the cenvs it generated,
and SSAX touches it somehow, causing a (force #f).

I put up a one-line patch to BIND-ALIASES so that it includes macro eval, as
it did before, at https://bitbucket.org/wnoble/s48. However, I don't know
exactly how SSAX triggers the access and didn't try too hard to come up with
a simple macro to reproduce the faulty expansion. So, if someone would
explain whether this is the correct fix, and why or why not, I would be
grateful!

And Mike: thanks for integrating my POSIX patch!

Best,
Will
Michael Sperber
2011-12-13 19:29:52 UTC
Permalink
Post by Will Noble
Hi,
I tried to load the package defs from SSAX and it killed the macro expander.
It appears that when BIND-ALIASES was switched to the new cenv
representation it stopped including macro eval in the cenvs it generated,
and SSAX touches it somehow, causing a (force #f).
I put up a one-line patch to BIND-ALIASES so that it includes macro eval, as
it did before, at https://bitbucket.org/wnoble/s48. However, I don't know
exactly how SSAX triggers the access and didn't try too hard to come up with
a simple macro to reproduce the faulty expansion. So, if someone would
explain whether this is the correct fix, and why or why not, I would be
grateful!
I've pulled & pushed the change - thanks! I'm reluctant to get into the
old macro expander, which has many bugs. One of these days, I'll finish
up the new one started at:

http://www.s48.org/cgi-bin/hgwebdir.cgi/s48-syntax-case/
--
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla
Loading...