[BACK]Return to spexpr.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / io

Diff for /OpenXM_contrib2/asir2000/io/spexpr.c between version 1.32 and 1.43

version 1.32, 2004/03/17 03:22:47 version 1.43, 2019/11/12 10:52:05
Line 44 
Line 44 
  * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY   * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  * $OpenXM: OpenXM_contrib2/asir2000/io/spexpr.c,v 1.31 2004/03/17 02:23:45 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/io/spexpr.c,v 1.42 2018/03/29 07:50:06 ohara Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "al.h"  #include "al.h"
Line 56 
Line 56 
 #define SPRINT  #define SPRINT
 #endif  #endif
   
 #if defined(PARI)  
 #include "genpari.h"  
 #endif  
   
 extern int outputstyle;  extern int outputstyle;
   
 static char *buf;  static char *buf;
Line 90  extern int hideargs;
Line 86  extern int hideargs;
 #define PRINTLIST sprintlist  #define PRINTLIST sprintlist
 #define PRINTVECT sprintvect  #define PRINTVECT sprintvect
 #define PRINTMAT sprintmat  #define PRINTMAT sprintmat
   #define PRINTIMAT sprintimat
 #define PRINTSTR sprintstr  #define PRINTSTR sprintstr
 #define PRINTCOMP sprintcomp  #define PRINTCOMP sprintcomp
 #define PRINTDP sprintdp  #define PRINTDP sprintdp
   #define PRINTDPM sprintdpm
 #define PRINTUI sprintui  #define PRINTUI sprintui
 #define PRINTGF2MAT sprintgf2mat  #define PRINTGF2MAT sprintgf2mat
 #define PRINTGFMMAT sprintgfmmat  #define PRINTGFMMAT sprintgfmmat
 #define PRINTBYTEARRAY sprintbytearray  #define PRINTBYTEARRAY sprintbytearray
 #define PRINTQUOTE sprintquote  #define PRINTQUOTE sprintquote
   #define PRINTQUOTEARG sprintquotearg
   #define PRINTNBP sprintnbp
 #define PRINTERR sprinterr  #define PRINTERR sprinterr
 #define PRINTLF sprintlf  #define PRINTLF sprintlf
 #define PRINTLOP sprintlop  #define PRINTLOP sprintlop
Line 110  extern int hideargs;
Line 110  extern int hideargs;
 #define PRINTSYMBOL sprintsymbol  #define PRINTSYMBOL sprintsymbol
 #define PRINTRANGE sprintrange  #define PRINTRANGE sprintrange
 #define PRINTTB sprinttb  #define PRINTTB sprinttb
   #define PRINTDPV sprintdpv
 #define PRINTFNODE sprintfnode  #define PRINTFNODE sprintfnode
 #define PRINTFNODENODE sprintfnodenode  #define PRINTFNODENODE sprintfnodenode
 #define PRINTFARGS sprintfargs  #define PRINTFARGS sprintfargs
   
   #if defined(INTERVAL)
   #define PRINTBF4ITV sprintbf4itv
   #endif
   
 #include "pexpr_body.c"  #include "pexpr_body.c"
   
 /* special functions for string output */  /* special functions for string output */
Line 121  extern int hideargs;
Line 126  extern int hideargs;
 void soutput_init(s)  void soutput_init(s)
 char *s;  char *s;
 {  {
         s[0] = 0; buf = s;    s[0] = 0; buf = s;
 }  }
   
 #if defined(PARI)  void sprintbf(BF a)
 void myoutbrute(g)  
 GEN g;  
 {  {
 # if PARI_VERSION_CODE > 131588    int dprec;
         brute(g, 'f', -1);    char fbuf[BUFSIZ];
 # else    char *s;
         bruteall(g,'f',-1,1);    dprec = a->body->_mpfr_prec*0.30103;
 # endif    sprintf(fbuf,"%%.%dR%c",dprec,(double_output==1)?'f':(double_output==2)?'e':'g');
     mpfr_asprintf(&s,fbuf,a->body);
     TAIL PUTS(s);
     mpfr_free_str(s);
 }  }
   
 void sprintbf(BF a)  #if defined(INTERVAL)
   void sprintbf4itv(BF a)
 {  {
         char *str;    int dprec;
         char *GENtostr0();    char fbuf[BUFSIZ];
     char *s;
         if ( double_output ) {    dprec = a->body->_mpfr_prec*0.30103;
                 str = GENtostr0(a->body,myoutbrute);    dprec += 1;
         } else {    sprintf(fbuf,"%%.%dR%c",dprec,(double_output==1)?'f':(double_output==2)?'e':'g');
                 str = GENtostr(a->body);    mpfr_asprintf(&s,fbuf,a->body);
         }    TAIL PUTS(s);
         TAIL PRINTF(OUT,"%s",str);    mpfr_free_str(s);
         free(str);  
 }  }
 #endif  #endif
   

Legend:
Removed from v.1.32  
changed lines
  Added in v.1.43

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