[Openmcl-devel] bugs in declaring functions as ignore and ignorable?

John Wiseman jjwiseman at yahoo.com
Tue Apr 25 18:46:26 PDT 2006


OpenMCL's handling of ignorable declarations seems to barf on
"(setf blah)"-style function names.

This is fine:

   (defun cats ()
     (flet ((secret-dogs () :DOG))
       (declare (ignorable (function secret-dogs)))
       1))

But this gives a warning:

   (defun cats ()
     (flet (((setf secret-dogs) (slobber cat) :DOG))
       (declare (ignorable (function (setf secret-dogs))))
       1))

   ;Compiler warnings :
   ;   Unknown declaration (IGNORABLE #'(SETF SECRET-DOGS)), in CATS.

And I feel less certain about this, but it doesn't look right either:

   (defun cats ()
     (flet ((secret-dogs () :DOG))
       (declare (ignore (function secret-dogs)))
       1))

   ;Compiler warnings :
   ;   Unknown declaration (IGNORE #'SECRET-DOGS), in CATS.

The context here is, of course, that I've got a macro generating stuff
like this, and the user may or may not call the functions defined in
the flet.

I'm using OpenMCL 1.0.


Thanks,
John




More information about the Openmcl-devel mailing list