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

Diff for /OpenXM_contrib2/asir2018/io/cpexpr.c between version 1.2 and 1.6

version 1.2, 2018/10/01 06:06:02 version 1.6, 2021/03/25 22:09:25
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/asir2018/io/cpexpr.c,v 1.1 2018/09/19 05:45:08 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2018/io/cpexpr.c,v 1.5 2020/10/06 06:31:20 noro Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
Line 143  void PRINTNUM(Num q)
Line 143  void PRINTNUM(Num q)
     case N_Q:      case N_Q:
       nmq((Q)q,&num); PRINTZ(num);        nmq((Q)q,&num); PRINTZ(num);
       if ( !INT((Q)q) ) {        if ( !INT((Q)q) ) {
         PUTS("/"); nmq((Q)q,&den); PRINTZ(den);          PUTS("/"); dnq((Q)q,&den); PRINTZ(den);
       }        }
       break;        break;
     case N_R:      case N_R:
Line 253  void PRINTV(VL vl,V v)
Line 253  void PRINTV(VL vl,V v)
 void PRINTMPZ(mpz_t n)  void PRINTMPZ(mpz_t n)
 {  {
   if ( hex_output )    if ( hex_output )
     total_length += mpz_sizeinbase(n,16)+2;      total_length += mpz_sizeinbase(n,16)+3;
   else    else
     total_length += mpz_sizeinbase(n,10);      total_length += mpz_sizeinbase(n,10)+1;
 }  }
   
 void PRINTZ(Z n)  void PRINTZ(Z n)
Line 354  void PRINTQUOTE(VL vl,QUOTE quote)
Line 354  void PRINTQUOTE(VL vl,QUOTE quote)
     PRINTFNODE(BDY(quote),0);      PRINTFNODE(BDY(quote),0);
   } else if ( print_quote == 1 ) {    } else if ( print_quote == 1 ) {
     /* XXX */      /* XXX */
     fnodetotree(BDY(quote),&list);      fnodetotree(BDY(quote),quote->pvs,&list);
     PRINTEXPR(vl,(Obj)list);      PRINTEXPR(vl,(Obj)list);
   } else {    } else {
     /* <...quoted...> */      /* <...quoted...> */
Line 403  void PRINTUP2(UP2 p)
Line 403  void PRINTUP2(UP2 p)
       total_length += 11;        total_length += 11;
     }      }
     for ( i = d-1; i >= 0; i-- ) {      for ( i = d-1; i >= 0; i-- ) {
       if ( p->b[i/BSH] & (1<<(i%BSH)) )        if ( p->b[i/BSH] & (1<<(i%BSH)) ) {
         if ( !i ) {          if ( !i ) {
           PUTS("+1");            PUTS("+1");
         } else if ( i == 1 ) {          } else if ( i == 1 ) {
Line 412  void PRINTUP2(UP2 p)
Line 412  void PRINTUP2(UP2 p)
           PRINTHAT;            PRINTHAT;
           total_length += 12;            total_length += 12;
         }          }
         }
     }      }
     PUTS(")");      PUTS(")");
   }    }

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

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