On 19 March 2010 22:35, Tobias C. Rittweiler <tcr@...> wrote:
> Source-transforms (as per SOURCE-TRANSFORM-LAMBDA and
> DEFINE-SOURCE-TRANSFORM) seem to be expanded during IR1-conversion which
> means that they're expanded before Xref data is collected which happens
> on the converted IR1 graph.
> See https://bugs.launchpad.net/sbcl/+bug/542174
> The only use of SOURCE-TRANSFORM-LAMBDA seems to be in defstruct.lisp.
> And there seem to be ~140 uses of DEFINE-SOURCE-TRANSFORM.
> Should we get rid of source-transforms alltogether, or rather try to
> postpone its application after ir1-conversion? (assuming that's
Well, I think it might be reasonable to replace source-transforms with
compiler-macros -- since they are essentially the same thing.
They cannot be moved after IR1, no. After IR1 there is no source left
to transform. :)
TRT is to deal with source transforms and compiler macros analogously