=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/engine/cplx.c,v retrieving revision 1.5 retrieving revision 1.7 diff -u -p -r1.5 -r1.7 --- OpenXM_contrib2/asir2000/engine/cplx.c 2003/02/14 22:29:08 1.5 +++ OpenXM_contrib2/asir2000/engine/cplx.c 2015/08/20 08:42:07 1.7 @@ -45,17 +45,10 @@ * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. * - * $OpenXM: OpenXM_contrib2/asir2000/engine/cplx.c,v 1.4 2000/12/22 10:03:28 saito Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/engine/cplx.c,v 1.6 2009/03/27 14:42:29 ohara Exp $ */ #include "ca.h" #include "base.h" -#if defined(PARI) -#include "genpari.h" -void patori(GEN,Obj *); -void patori_i(GEN,N *); -void ritopa(Obj,GEN *); -void ritopa_i(N,int,GEN *); -#endif void toreim(a,rp,ip) Num a; @@ -188,24 +181,14 @@ Num *c; { int ei; Num t; - extern long prec; if ( !e ) *c = (Num)ONE; else if ( !a ) *c = 0; - else if ( !INT(e) ) { -#if defined(PARI) - GEN pa,pe,z; - int ltop,lbot; - - ltop = avma; ritopa((Obj)a,&pa); ritopa((Obj)e,&pe); lbot = avma; - z = gerepile(ltop,lbot,gpui(pa,pe,prec)); - patori(z,(Obj *)c); cgiv(z); -#else - error("pwrcplx : can't calculate a fractional power"); -#endif - } else { + else if ( !INT(e) ) + error("pwrcplx : not implemented (use eval())."); + else { ei = SGN((Q)e)*QTOS((Q)e); pwrcplx0(a,ei,&t); if ( SGN((Q)e) < 0 )