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

Diff for /OpenXM_contrib2/asir2000/parse/quote.c between version 1.18 and 1.19

version 1.18, 2004/07/13 09:10:39 version 1.19, 2004/08/05 00:56:54
Line 1 
Line 1 
 /* $OpenXM: OpenXM_contrib2/asir2000/parse/quote.c,v 1.17 2004/07/13 07:59:54 noro Exp $ */  /* $OpenXM: OpenXM_contrib2/asir2000/parse/quote.c,v 1.18 2004/07/13 09:10:39 noro Exp $ */
   
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
Line 318  void vartoquote(V v,QUOTE *c)
Line 318  void vartoquote(V v,QUOTE *c)
                         if ( x && OID(x)==O_P && !NEXT(DC(x))                          if ( x && OID(x)==O_P && !NEXT(DC(x))
                                 && UNIQ(DEG(DC(x))) && UNIQ(COEF(DC(x))) ) {                                  && UNIQ(DEG(DC(x))) && UNIQ(COEF(DC(x))) ) {
                                 /* use a as is */                                  /* use a as is */
                                 u = a;  
                         } else {                          } else {
                                 /* a => (a) */                                  /* a => (a) */
                                 MKQUOTE(u,mkfnode(1,I_PAREN,BDY(a)));                                  MKQUOTE(u,mkfnode(1,I_PAREN,BDY(a))); a = u;
                         }                          }
                         objtoquote(ad[1].arg,&b);                          objtoquote(ad[1].arg,&b);
                         pwrquote(CO,u,b,c);                          x = (P)ad[1].arg;
                           /* check whether x is a non-negative integer or a variable */
                           if ( !x || (INT(x) && SGN((Q)x) > 0)
                                   || (OID(x)==O_P && !NEXT(DC(x))
                                           && UNIQ(DEG(DC(x))) && UNIQ(COEF(DC(x)))) ) {
                                   /* use b as is */
                           } else {
                                   /* b => (b) */
                                   MKQUOTE(u,mkfnode(1,I_PAREN,BDY(b))); b = u;
                           }
                           pwrquote(CO,a,b,c);
                 } else {                  } else {
                         for ( i = 0; i < pf->argc; i++ )                          for ( i = 0; i < pf->argc; i++ )
                                 if ( ad[i].d )                                  if ( ad[i].d )

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.19

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