[BACK]Return to parif.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2018 / builtin

Diff for /OpenXM_contrib2/asir2018/builtin/parif.c between version 1.2 and 1.4

version 1.2, 2018/09/28 08:20:27 version 1.4, 2020/08/26 06:40:36
Line 1 
Line 1 
 /* $OpenXM: OpenXM_contrib2/asir2018/builtin/parif.c,v 1.1 2018/09/19 05:45:06 noro Exp $ */  /* $OpenXM: OpenXM_contrib2/asir2018/builtin/parif.c,v 1.3 2019/05/07 02:09:50 noro Exp $ */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
 #include "ox.h"  #include "ox.h"
Line 20  void Pmpfr_floor(), Pmpfr_round(), Pmpfr_ceil();
Line 20  void Pmpfr_floor(), Pmpfr_round(), Pmpfr_ceil();
   
 void Pox_shutdown(NODE arg,Q *rp);  void Pox_shutdown(NODE arg,Q *rp);
 void Pox_launch_nox(NODE arg,Obj *rp);  void Pox_launch_nox(NODE arg,Obj *rp);
   void Pox_launch(NODE arg,Obj *rp);
 void Pox_push_cmo(NODE arg,Obj *rp);  void Pox_push_cmo(NODE arg,Obj *rp);
 void Pox_pop_cmo(NODE arg,Obj *rp);  void Pox_pop_cmo(NODE arg,Obj *rp);
 void Pox_execute_function(NODE arg,Obj *rp);  void Pox_execute_function(NODE arg,Obj *rp);
   
   int debug_pari;
   
 struct mpfr_tab_rec {  struct mpfr_tab_rec {
   char *name;    char *name;
   mpfr_func func;    mpfr_func func;
Line 121  pointer evalparif(FUNC f,NODE arg)
Line 124  pointer evalparif(FUNC f,NODE arg)
   mpfr_func mpfr_function;    mpfr_func mpfr_function;
   V v;    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 = mpfr_search(f->name)) ) {
     (*mpfr_function)(arg,&ret);      (*mpfr_function)(arg,&ret);
     return (pointer) ret;      return (pointer) ret;
Line 139  pointer evalparif(FUNC f,NODE arg)
Line 142  pointer evalparif(FUNC f,NODE arg)
 #if !defined(VISUAL)  #if !defined(VISUAL)
   MKSTR(name,"ox_pari");    MKSTR(name,"ox_pari");
   nd = mknode(2,NULL,name);    nd = mknode(2,NULL,name);
   Pox_launch_nox(nd,(Obj *)&r);    if ( debug_pari )
       Pox_launch(nd,(Obj *)&r);
     else
       Pox_launch_nox(nd,(Obj *)&r);
 #else  #else
   error("Please load names.rr from latest asir-contrib library before using pari functions.");    error("Please load names.rr from latest asir-contrib library before using pari functions.");
 #endif  #endif

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>