On Fri, Jun 22, 2018 at 5:13 PM Robert Goldman <rpgoldman@sift.info> wrote:

I have a library that provides DEF-UNIMPLEMENTED as a macro for defining stub functions. When you compile a file with unimplemented functions, you get a warning of the type FOO:UNIMPLEMENTED-STUB in my library FOO.

I'd like to put in an asdf system definition a file spec something like this:

(:file "file-with-stubs" 
  :method (:around (o c) 
            (handler-bind ((foo:unimplemented-stub
                              #'(lambda (c) 
                                  (print c) 
                                  (muffle-warning c))
                (call-next-method)))

but, of course, the package foo doesn't exist when this is read (although I could put (asdf:load-system "foo") upstream of the enclosing defsystem).

This isn't a case that's nicely consistent with Faré's hack for translating strings or keyword symbols, nor does it seem easy to use find-symbol for this purpose.

You could still use FIND-SYMBOL:
(handler-bind ((error (lambda (c) (when (typep c (find-symbol x :foo)))))) (a))