[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

MACROEXPANDED not working with SETF (??)

Another solution would be for SETF to be less persistant with it's
MACROEXPANDEDness.  Basically, introduce a MACROEXPANDED-SETF form.
(MACROEXPANDED-SETF <def-count> <expanded> <original>)

<def-count> is taken from DEFMACRO-COUNTER, which is incremented whenever a
DEFMACRO or DEFSETF is done.  When MACROEXPANDED-SETF is EVAL'd, it compares
<def-count> with the global DEFMACRO-COUNTER, and if anything has been
redefined, it re-expands.  Redefinitions are rare enough to make this an
acceptable cost.