On Wed, 2004-07-14 at 11:16, Raymond Toy wrote:
> >>>>> "Camm" == Camm Maguire <camm@enhanced.com> writes:
>
> Camm> Greetings! I think the problem is here (opers.lisp):
> Camm> (defmfun mul2* (x y)
>
> Camm> (cond
> Camm> #+cl ((and (numberp x) (numberp y)) (f* x y))
> Camm> ((=1 x) (simplifya y nil))
> Camm> ((=1 y) (simplifya x nil))
> Camm> (t (simplifya `((mtimes) ,x ,y) nil))))
>
> FWIW, I replaced (f* x y) with (* x y) here, and recompiled maxima.
> invert now returns the correct answer.
OK. Thanks to everyone's help, I think we now understand:
1) What changed between 5.9.0 and 5.9.1.
2) How the problem can be avoided.
I don't completely understand why the problem only appears in compiled
GCL code, but I am long past caring.
Please commit the fix.
--Jim