From: Raymond T. <rt...@us...> - 2003-08-03 13:03:22
|
Update of /cvsroot/maxima/maxima/src In directory sc8-pr-cvs1:/tmp/cvs-serv10685/src Modified Files: compar.lisp Log Message: Bug [ 769985 ] sign(rat(x)) fatal error/FIX $sign needs to call specrepcheck. From Stavros Macrakis. Index: compar.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/compar.lisp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- compar.lisp 9 Sep 2000 21:28:38 -0000 1.2 +++ compar.lisp 3 Aug 2003 13:03:19 -0000 1.3 @@ -482,10 +482,11 @@ (let (sign-imag-errp limitp) (catch 'sign-imag-err ($sign x))))) (defmfun $sign (x) - (let (sign minus odds evens factored) - (sign01 (cond (limitp (restorelim x)) - ((not (free x '$%i)) ($rectform x)) - (t x))))) + (let ((x (specrepcheck x)) + sign minus odds evens factored) + (sign01 (cond (limitp (restorelim x)) + ((not (free x '$%i)) ($rectform x)) + (t x))))) (defun sign01 (a) (let ((e (sign-prep a))) |