=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2018/builtin/parif.c,v retrieving revision 1.1 retrieving revision 1.3 diff -u -p -r1.1 -r1.3 --- OpenXM_contrib2/asir2018/builtin/parif.c 2018/09/19 05:45:06 1.1 +++ OpenXM_contrib2/asir2018/builtin/parif.c 2019/05/07 02:09:50 1.3 @@ -1,4 +1,4 @@ -/* $OpenXM$ */ +/* $OpenXM: OpenXM_contrib2/asir2018/builtin/parif.c,v 1.2 2018/09/28 08:20:27 noro Exp $ */ #include "ca.h" #include "parse.h" #include "ox.h" @@ -121,7 +121,7 @@ pointer evalparif(FUNC f,NODE arg) mpfr_func mpfr_function; V v; - if ( arg && ARG0(arg) && NID((Num)ARG0(arg)) != N_C + if ( arg && (!ARG0(arg) || (NUM(ARG0(arg)) && NID((Num)ARG0(arg)) != N_C)) && (mpfr_function = mpfr_search(f->name)) ) { (*mpfr_function)(arg,&ret); return (pointer) ret; @@ -159,13 +159,13 @@ pointer evalparif(FUNC f,NODE arg) Pox_push_cmo(oxarg,&dmy); } MKSTR(name,f->name); - STOQ(ac,narg); + STOZ(ac,narg); oxarg = mknode(3,ox_pari_stream,name,narg); Pox_execute_function(oxarg,&dmy); ox_get_pari_result = 1; #if defined(VISUAL) || defined(__MINGW32__) #define SM_popCMO 262 - STOQ(SM_popCMO,cmd); + STOZ(SM_popCMO,cmd); oxarg = mknode(2,ox_pari_stream,cmd); Pox_push_cmd(oxarg,&dmy); nd = mknode(1,ox_pari_stream);