Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.257
 
1.258
 
MAIN:ragge:20101003094222
 
trees.c
_>10941094 NODE *
 10951095 bpsize(NODE *p)
 10961096 {
<>1097 -        return(offcon(psize(p), p->n_type, p->n_df, p->n_ap));
  1097+        int isdyn(struct symtab *sp);
  1098+        struct attr *ap;
  1099+        struct symtab s;
  1100+        NODE *q, *r;
  1101+        TWORD t;
  1102+
  1103+        s.stype = DECREF(p->n_type);
  1104+        s.sdf = p->n_df;
  1105+        if (isdyn(&s)) {
  1106+                q = bcon(1);
  1107+                for (t = s.stype; t > BTMASK; t = DECREF(t)) {
  1108+                        if (ISPTR(t))
  1109+                                return buildtree(MUL, q, bcon(SZPOINT(t)));
  1110+                        if (ISARY(t)) {
  1111+                                if (s.sdf->ddim < 0)
  1112+                                        r = tempnode(-s.sdf->ddim,
  1113+                                             INT, 0, MKAP(INT));
  1114+                                else
  1115+                                        r = bcon(s.sdf->ddim/SZCHAR);
  1116+                                q = buildtree(MUL, q, r);
  1117+                                s.sdf++;
  1118+                        }
  1119+                }
  1120+                ap = attr_find(p->n_ap, ATTR_BASETYP);
  1121+                p = buildtree(MUL, q, bcon(ap->atypsz/SZCHAR));
  1122+        } else
  1123+                p = (offcon(psize(p), p->n_type, p->n_df, p->n_ap));
  1124+        return p;
<_10981125 }
 10991126 
 11001127 /*
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-19 05:48 +0200