On Sun, Feb 1, 2009 at 12:06 PM, Richard M Kreuter <kreuter@...> wrote:
> Liam Healy writes:
>> I am seeing a style warning when I call a method using a particular
>> key argument, :divided-difference.
>> I don't understand why. It doesn't happen in CCL.
> The details behavior changed some months ago (probably around 1.0.21 or
> '.22), though possibly not in a manner that will help you. The short
> story is that if you've executed the relevant DEFMETHODs before
> compiling the function call, no warning will be signaled; if you're
> compiling the call before adding any method that takes the keyword, you
> will still see the warning. (See  for a more precise explanation and
> rationale for the current behavior.)
> If you can't reasonably execute the DEFMETHODs before compiling the
> call, you could alternatively add the explicit keywords or
> &ALLOW-OTHER-KEYS to the DEFGENERIC's lambda list.
>  http://thread.gmane.org/gmane.lisp.steel-bank.devel/11712
The email link you've provided describes exactly what I am
experiencing, so it sounds like an SBCL upgrade will cure the problem.
I don't know what you mean by "executed the relevant defmethods
before compiling the function call"; at the top of the file is the
defmethod, the usage is further down in an example/test, and I get
this warning whenever I run the tests or just simply cut and paste the
example into a listener after everything is loaded, in any case
certainly after the defmethod has been compiled and loaded. This is
what I do for some of the other examples (like chebyshev) for which I
see no warning.