Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.235
 
1.236
 
MAIN:ragge:20081208072054
 
pftn.c
_>801801  * Called after a struct is declared to restore the environment.
 802802  */
 803803 NODE *
<>804 -dclstruct(struct rstack *r)
  804+dclstruct(struct rstack *r, struct suedef *suep)
805805 {
 806806         NODE *n;
 807807         struct suedef *sue;
 808808         struct symtab *sp;
 809809         int al, sa, sz, coff;
 810810         TWORD temp;
 811811 
<>812 -        if (pragma_allpacked && !pragma_packed)
 813 -                pragma_packed = pragma_allpacked;
  812+        if (pragma_allpacked && !suep->suepacked)
  813+                suep->suepacked = pragma_allpacked;
814814 
 815815         if (r->rsym == NULL) {
 816816                 sue = permalloc(sizeof(struct suedef));
     
 !
836836         temp = r->rsou == STNAME ? STRTY : UNIONTY;
 837837 
 838838         coff = 0;
<>839 -        if (pragma_packed || pragma_aligned)
  839+        if (suep->suealigned || suep->suepacked)
840840                 rpole->rstr = 0; /* must recount it */
 841841 
 842842         sue->sylnk = r->rb;
     
 !
847847                 else
 848848                         sz = tsize(sp->stype, sp->sdf, sp->ssue);
 849849 
<>850 -                if ((pragma_packed || pragma_aligned) && temp == STRTY) {
  850+                if ((suep->suepacked || suep->suealigned) && temp == STRTY) {
851851                         /* XXX check pack/align sizes */
 852852                         sp->soffset = coff;
<>853 -                        if (pragma_aligned)
  853+                        if (suep->suealigned)
854854                                 coff += ALLDOUBLE;
 855855                         else
 856856                                 coff += sz;
     
 !
866866                 SETOFF(al, sa);
 867867         }
 868868 
<>869 -        if (!pragma_packed && !pragma_aligned)
  869+        if (!suep->suepacked && !suep->suealigned)
<_870870                 SETOFF(rpole->rstr, al);
 871871 
 872872         sue->suesize = rpole->rstr;
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-08-30 22:17 +0200