Here's a case we have:

System uses bad old version of FiveAM.

BOV5A signals ARNESI:DEFLOOKUP-REDEFINITION because of bug in EVAL-WHEN
logic.

We put our system's compilation inside Jenkins, failing on warnings.

Jenkins fails.

We see error.

We wrap call to LOAD-SYSTEM in

(handler-bind ((arnesi:deflookup-redefinition
                  #'(lambda (e) (muffle-warning e)))
  (asdf:load-system "our-system"))

This does not fix the problem.

I believe that this is because ASDF is trapping *ALL* warnings, hanging
onto them, and then resignaling them, wrapped in new ASDF condition
objects.  So our ARNESI:DEFLOOKUP-REDEFINITIONs are all gone, and can't
be used for muffling.

It seems like this is going to bork any system that wants to muffle
specific warnings, or handle specific errors.  Not so?  Or have I
misunderstood somehow?

Thanks,
r

Reply via email to