When rebuilding test suites using ASDF, test redefinition signals a
full warning, rather than the style-warning function redefinition,
say, would lead to. With the attached patch, SB-RT emit style
warnings on test redefinition.
One thing: the patch flushes the REPORT-ERROR function and the *DEBUG*
variable from SB-RT. AFAICT, if *DEBUG* was ever set to non-NIL, then
conditions internal to SB-RT (/not/ to test case execution!) would be
printed and then we throw to the *DEBUG* tag (see REPORT-ERROR). I
can't find where the *DEBUG* catch is bound; is this a legacy throw
from some Lisp which bound this catch tag to entering the debugger or
something? I assumed this is stale code, so I just took it out. Am I
missing something? If so, I'd be happy to modify the patch to
conserve REPORT-ERROR and *DEBUG*.