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

MACROEXPAND-1*M



This now calls the value of FIND-MACRO-DEFINITION
(defaultly FIND-MACRO-DEFINITION) to find the macro definition.
If you want macros which you have stashed somewhere else to be
included, set FIND-MACRO-DEFINITION to your own function
(which can call FIND-MACRO-DEFINITION if it wishes).

FIND-MACRO-DEFINITION now will find macros that the
compiler pushed onto MACROLIST, so mere user programs
will get these macros expanded too.

This feature is useful for those writing cross-compilers.
It could also be used as a way to get the effect of
macros without actually making something a macro.  I.e.
a better way to do things than defining something to
be both a MACRO and a SUBR might be to do

(DEFUN MY-FIND-MACRO-DEFINITION (sym)
  (or (cdr (assq sym my-fake-macros))
      (find-macro-definition sym)))