Quick Search:

Mode

Context

Displaying 3 lines of context. None | Less | More | Full

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.119
 
1.120
 
MAIN:ragge:20041212131302
 
trees.c
_>19551955  * assign tells whether ASSIGN should be considered giving
 19561956  * side effects or not.
 19571957  */
<>1958 -static void
  1958+static NODE *
19591959 delasgop(NODE *p)
 19601960 {
 19611961         NODE *q, *r;
     
 !
19721972                         l->n_left = q;
 19731973                         /* Now the left side of node p has no side effects. */
 19741974                         /* side effects on the right side must be obeyed */
<>1975 -                        delasgop(p);
  1975+                        p = delasgop(p);
19761976                         
 19771977                         r = buildtree(ASSIGN, r, ll);
<>1978 -                        delasgop(r);
  1978+                        r = delasgop(r);
19791979                         ecode(r);
 19801980                 } else {
 19811981 #if 0 /* Cannot call buildtree() here, it would invoke double add shifts */
     
 !
19861986                             p->n_right, p->n_type, p->n_df, p->n_sue);
 19871987 #endif
 19881988                         p->n_op = ASSIGN;
<>1989 -                        delasgop(p->n_right);
  1989+                        p->n_right = delasgop(p->n_right);
  1990+                        p->n_right = clocal(p->n_right);
19901991                 }
<> 1992+                
19911993         } else {
 19921994                 if (coptype(p->n_op) == LTYPE)
<>1993 -                        return;
 1994 -                delasgop(p->n_left);
  1995+                        return p;
  1996+                p->n_left = delasgop(p->n_left);
19951997                 if (coptype(p->n_op) == BITYPE)
<>1996 -                        delasgop(p->n_right);
  1998+                        p->n_right = delasgop(p->n_right);
19971999         }
<> 2000+        return p;
19982001 }
 19992002 
 20002003 int edebug = 0;
     
 !
20122015         }
 20132016         p = optim(p);
 20142017         rmcops(p);
<>2015 -        delasgop(p);
  2018+        p = delasgop(p);
20162019         send_passt(IP_LOCCTR, PROG);
 20172020         if (p->n_op == ICON && p->n_type == VOID)
 20182021                 tfree(p);
     
 !
21852188                 return;
 21862189 
 21872190         p = optim(p);
<>2188 -        delasgop(p);
  2191+        p = delasgop(p);
<_21892192         walkf(p, prtdcon);
 21902193         walkf(p, delvoid);
 21912194 #ifdef PCC_DEBUG
FishEye: Open Source License registered to PCC.
Your maintenance has expired. You can renew your license at http://www.atlassian.com/fisheye/renew
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-09-02 11:11 +0200