Hello SLIME developers,
When slime-list-callees is attempted on symbol naming a macro, swank-sbcl implementation (based on SB-INTROSPECT) generates the following condition:
The value of sb-introspect::code is #<unknown pointer object, widetag=#x5D {1003543DFF}>, which is not of type sb-kernel:code-component.
Though (FDEFINITION)'s value for macros in SBCL _is_ FUNCTIONP, it's apparently a wrong kind of function for SB-INTROSPECT.
After redefining LIST-CALLEES to use symbol's MACRO-FUNCTION in preference to FDEFINITION, I've got a desired behavior (listing callees of macrofunction seems to be a reasonable reaction, and that's what I want, anyway). Just in case someone finds it useful -- patch is attached.
One more thing that I found convenient is redirecting LIST-CALLERS for symbols with macro-functions to WHO-MACROEXPANDS (also included in the patch).