Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.78
 
1.79
 
MAIN:ragge:20030706132356
 
pftn.c
_>17681768 void
 17691769 nidcl(NODE *p, int class)
 17701770 {
<>1771 -        int commflag/* flag for labelled common declarations */
17721771 
<>1773 -        commflag = 0;
 1774 -
17751772         /* compute class */
 17761773         if (class == SNULL) {
 17771774                 if (blevel > 1)
 17781775                         class = AUTO;
 17791776                 else if (blevel != 0 || instruct)
 17801777                         cerror( "nidcl error" );
<>1781 -                else { /* blevel = 0 */
  1778+                else /* blevel = 0 */
17821779                         class = noinit();
<>1783 -                        if (class == EXTERN)
 1784 -                                commflag = 1;
 1785 -                }
17861780         }
<>1787 -#ifdef LCOMM    /* XXX 4.4 */
 1788 -        /* hack so stab will come out as LCSYM rather than STSYM */
 1789 -        if (class == STATIC) {
 1790 -                extern int stabLCSYM;
 1791 -                stabLCSYM = 1;
 1792 -        }
 1793 -#endif
17941781 
 17951782         defid(p, class);
 17961783 
     
 !
17991786             ISARY(p->n_type) && p->n_df->ddim == 0)
 18001787                 uerror("null storage definition");
 18011788 
<>1802 -#ifndef LCOMM   /* XXX 4.4 */
 1803 -        if (class==EXTDEF || class==STATIC)
 1804 -#else
 1805 -        if (class==STATIC) {
 1806 -                struct symtab *s = &stab[p->n_rval];
 1807 -                extern int stabLCSYM;
 1808 -                int sz = tsize(s->stype, s->dimoff, s->sizoff)/SZCHAR;
 1809 -                
 1810 -                stabLCSYM = 0;
 1811 -                if (sz % sizeof (int))
 1812 -                        sz += sizeof (int) - (sz % sizeof (int));
 1813 -                if (s->slevel > 1)
 1814 -                        printf("        .lcomm  L%d,%d\n", s->soffset, sz);
 1815 -                else
 1816 -                        printf("        .lcomm  %s,%d\n", exname(s->sname), sz);
 1817 -        } else if (class == EXTDEF)
 1818 -#endif
 1819 -        {
  1789+        switch (class) {
  1790+        case EXTDEF:
18201791                 /* simulate initialization by 0 */
 18211792                 beginit(p->n_sp, class);
 18221793                 endinit();
<>1823 -        }
 1824 -        if (commflag)
  1794+                break;
  1795+        case EXTERN:
18251796                 commdec(p->n_sp);
<> 1797+                break;
  1798+        case STATIC:
  1799+                lcommdec(p->n_sp);
  1800+                break;
  1801+        }
<_18261802 }
 18271803 
 18281804 /*
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-10-01 12:23 +0200