Is the list returned by SPECIALIZER-DIRECT-GENERIC-FUNCTIONS supposed to include local functions defined by GENERIC-FLET or anonymous functions created by the GENERIC-FUNCTION macro? I haven't seen anything that says they are an exception, but if they need to be recorded here, then there would be no way to ever garbage-collect them once created.