=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/engine/p-itv.c,v retrieving revision 1.4 retrieving revision 1.7 diff -u -p -r1.4 -r1.7 --- OpenXM_contrib2/asir2000/engine/p-itv.c 2003/07/25 12:34:48 1.4 +++ OpenXM_contrib2/asir2000/engine/p-itv.c 2009/03/27 14:42:29 1.7 @@ -1,5 +1,5 @@ /* - * $OpenXM: OpenXM_contrib2/asir2000/engine/p-itv.c,v 1.3 2003/02/14 22:29:09 ohara Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/engine/p-itv.c,v 1.6 2005/02/08 18:06:05 saito Exp $ */ #if defined(INTERVAL) #include "ca.h" @@ -50,9 +50,12 @@ void istoitv(Num inf, Num sup, Itv *rp) } else { i = inf; } - if ( type ) - NEWIntervalBigFloat((IntervalBigFloat)c); - else + if ( type ) { +// NEWIntervalBigFloat((IntervalBigFloat)c); + c=MALLOC(sizeof(struct oIntervalBigFloat)); + OID(c)=O_N; + NID(c)=N_IntervalBigFloat; + } else NEWItvP(c); if ( compnum(0,i,s) >= 0 ) { @@ -260,12 +263,7 @@ void pwritvp(Itv a, Num e, Itv *c) pwrnum(0,(Num)a,(Num)e,(Num *)c); else if ( !INT(e) ) { #if defined(PARI) && 0 - GEN pa,pe,z; - int ltop,lbot; - - ltop = avma; ritopa(a,&pa); ritopa(e,&pe); lbot = avma; - z = gerepile(ltop,lbot,gpui(pa,pe,prec)); - patori(z,c); cgiv(z); + gpui_ri((Obj)a,(Obj)c,(Obj *)c); #else error("pwritv : can't calculate a fractional power"); #endif @@ -371,7 +369,6 @@ void miditvp(Itv a, Num *b) { Num ai,as; Num t; - Q TWO; if ( ! a ) *b = 0; else if ( (NID(a) <= N_B) )