      SUBROUTINE ENTET0(ID,MODE,XSC,PARAMS,ARG,BODY)
      INTEGER ID
      INTEGER MODE
      INTEGER XSC
      INTEGER PARAMS
      INTEGER ARG
      INTEGER BODY
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER SC,OBJ
      INTEGER FINDS0,COMPA0,NEWOBJ,NEWSYM,OLDSYM
      INTEGER Q,NP
      INTEGER MAKES0
      INTEGER INFO(3)
      IF((ID.NE.0))GOTO 10000
        RETURN
10000 Q=PARAMS
      GOTO 10003
10001 Q=MEMAA0(Q)
10003 IF((Q.EQ.0))GOTO 10002
        IF((MEMAA0(Q+1).EQ.0))GOTO 10001
          CALL CTOC(MEMAA0(MEMAA0(Q+1)),ERROR0,200)
          CALL SYNERR('Named parameters not allowed in this declaration.
     *',0)
10004 GOTO 10001
10002 SC=XSC
      NP=ID
      IF((ARG.NE.1))GOTO 10005
        IF((SC.EQ.1))GOTO 10006
        IF((SC.EQ.4))GOTO 10006
          CALL CTOC(MEMAA0(ID),ERROR0,200)
          CALL SYNERR('Illegal storage class for a parameter.',0)
          SC=1
10006   IF((MEMAA0(MODE+3).NE.15))GOTO 10007
          CALL CTOC(MEMAA0(ID),ERROR0,200)
          CALL SYNERR('Functions cannot be passed as parameters.',0)
          CALL CREAT0(MODE,12,0)
10007   CALL MODIF0(MODE)
10005 IF((MEMAA0(MODE+3).NE.15))GOTO 10008
        MODE=MEMAA0(MODE)
        CALL MODIF0(MODE)
        CALL CREAT0(MODE,15,0)
10008 IF((SC.NE.6))GOTO 10009
        IF((FINDS0(MEMAA0(NP),Q,1).NE.1))GOTO 10010
        IF((MEMAA0(Q+3).NE.LLAAA0))GOTO 10010
          CALL SYNERR('Identifier defined twice.',0)
10010   ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,0,1)
        GOTO 10011
10009   IF((LLAAA0.NE.1))GOTO 10012
          IF((MEMAA0(MODE+3).NE.15))GOTO 10013
          IF((BODY.NE.1))GOTO 10013
            IF((SC.EQ.4))GOTO 10015
            IF((SC.EQ.2))GOTO 10015
            IF((SC.EQ.3))GOTO 10015
            GOTO 10014
10015         CALL CTOC(MEMAA0(NP),ERROR0,200)
              CALL SYNERR('Invalid storage class on a function definitio
     *n.',0)
              SC=1
10014       IF((FINDS0(MEMAA0(NP),Q,1).NE.0))GOTO 10016
              ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,NEWOBJ(0),1)
              GOTO 10054
10016         IF((MEMAA0(Q+7).NE.1))GOTO 10018
                CALL CTOC(MEMAA0(NP),ERROR0,200)
                CALL SYNERR('Function defined twice in this file.',0)
                ID=OLDSYM(Q,SC,MODE,1)
                GOTO 10019
10018           IF((COMPA0(MODE,MEMAA0(Q+1)).NE.0))GOTO 10020
                  CALL SYNERR('Declaration conflicts with previous decla
     *ration.',1)
10020           IF((SC.NE.1))GOTO 10021
                  SC=MEMAA0(Q+2)
                  GOTO 10022
10021             IF((MEMAA0(Q+2).NE.3))GOTO 10023
                    CALL SYNERR('EXTERN function may not be redeclared S
     *TATIC.',1)
10023           CONTINUE
10022           IF((MEMAA0(Q+5).NE.0))GOTO 10024
                  MEMAA0(Q+5)=NEWOBJ(0)
10024           ID=OLDSYM(Q,SC,MODE,1)
10019       CONTINUE
10017       GOTO 10054
10013       IF((MEMAA0(MODE+3).NE.15))GOTO 10026
              IF((SC.EQ.4))GOTO 10028
              IF((SC.EQ.2))GOTO 10028
              IF((SC.EQ.5))GOTO 10028
              GOTO 10027
10028           CALL CTOC(MEMAA0(NP),ERROR0,200)
                CALL SYNERR('Invalid storage class on a function declara
     *tion.',0)
                SC=1
10027         IF((FINDS0(MEMAA0(NP),Q,1).NE.0))GOTO 10029
                ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,0,0)
                MEMAA0(ID+8)=PARAMS
                PARAMS=0
                GOTO 10036
10029           IF((MEMAA0(Q+7).NE.1))GOTO 10031
                  CALL CTOC(MEMAA0(NP),ERROR0,200)
                  CALL SYNERR('Function defined twice in this file.',0)
                  ID=OLDSYM(Q,SC,MODE,1)
                  GOTO 10032
10031             IF((COMPA0(MODE,MEMAA0(Q+1)).NE.0))GOTO 10033
                    CALL SYNERR('Declaration conflicts with previous dec
     *laration.',1)
10033             IF((SC.NE.1))GOTO 10034
                    SC=MEMAA0(Q+2)
10034             ID=OLDSYM(Q,SC,MODE,MEMAA0(Q+7))
                  IF((MEMAA0(ID+8).NE.0))GOTO 10035
                    MEMAA0(ID+8)=PARAMS
                    PARAMS=0
10035           CONTINUE
10032         CONTINUE
10030         GOTO 10036
10026         IF((SC.EQ.4))GOTO 10038
              IF((SC.EQ.2))GOTO 10038
              GOTO 10037
10038           CALL CTOC(MEMAA0(NP),ERROR0,200)
                CALL SYNERR('Invalid storage class on an external declar
     *ation.',1)
                SC=1
10037         IF((FINDS0(MEMAA0(NP),Q,1).NE.0))GOTO 10039
                IF((SC.NE.3))GOTO 10040
                  ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,0,0)
                  GOTO 10044
10040             IF((SC.NE.5))GOTO 10042
                    ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,NEWOBJ(0),5)
                    GOTO 10043
10042               ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,NEWOBJ(0),1)
10043           CONTINUE
10041           GOTO 10044
10039           IF((COMPA0(MODE,MEMAA0(Q+1)).NE.0))GOTO 10045
                  CALL CTOC(MEMAA0(NP),ERROR0,200)
                  CALL SYNERR('Declaration conflicts with previous decla
     *ration.',1)
10045           IF((SC.NE.3))GOTO 10046
                  ID=OLDSYM(Q,SC,MODE,MEMAA0(Q+7))
                  GOTO 10047
10046             IF((MEMAA0(Q+2).NE.3))GOTO 10049
                  IF((MEMAA0(Q+2).NE.3))GOTO 10048
                  IF((MEMAA0(Q+7).EQ.0))GOTO 10048
                  GOTO 10049
10049               CALL CTOC(MEMAA0(NP),ERROR0,200)
                    CALL SYNERR('Identifier defined twice.',0)
10048             IF((MEMAA0(Q+5).NE.0))GOTO 10051
                    MEMAA0(Q+5)=NEWOBJ(0)
10051             IF((SC.NE.5))GOTO 10052
                    ID=OLDSYM(Q,SC,MODE,5)
                    GOTO 10053
10052               ID=OLDSYM(Q,SC,MODE,1)
10053           CONTINUE
10047         CONTINUE
10044       CONTINUE
10036     CONTINUE
10025     GOTO 10054
10012     IF((MEMAA0(MODE+3).NE.15))GOTO 10055
            IF((SC.EQ.4))GOTO 10057
            IF((SC.EQ.2))GOTO 10057
            IF((SC.EQ.5))GOTO 10057
            GOTO 10056
10057         CALL CTOC(MEMAA0(NP),ERROR0,200)
              CALL SYNERR('Invalid storage class on a function declarati
     *on.',0)
              SC=1
10056       IF((FINDS0(MEMAA0(NP),Q,1).NE.0))GOTO 10058
              ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,1,0,0)
              ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,0,0)
              MEMAA0(ID+8)=PARAMS
              PARAMS=0
              GOTO 10069
10058         IF((MEMAA0(Q+3).NE.LLAAA0))GOTO 10060
                CALL CTOC(MEMAA0(NP),ERROR0,200)
                CALL SYNERR('Function defined twice.',0)
                GOTO 10061
10060           IF((FINDS0(MEMAA0(NP),Q,1,1).NE.1))GOTO 10062
                  IF((COMPA0(MODE,MEMAA0(Q+1)).NE.0))GOTO 10063
                    CALL SYNERR('Declaration conflicts with previous dec
     *laration.',1)
10063             IF((SC.NE.1))GOTO 10064
                    SC=MEMAA0(Q+2)
                    GOTO 10065
10064               IF((MEMAA0(Q+2).NE.5))GOTO 10066
                      CALL SYNERR('STATIC function may not be redeclared
     * EXTERN.',1)
10066             CONTINUE
10065             ID=OLDSYM(Q,SC,MODE,MEMAA0(Q+7))
                  IF((MEMAA0(ID+8).NE.0))GOTO 10068
                    MEMAA0(ID+8)=PARAMS
                    PARAMS=0
10067             GOTO 10068
10062             CALL FATAL0('Function declared at level other than 1.'
     *)
10068         CONTINUE
10061       CONTINUE
10059       GOTO 10069
10055       IF((SC.NE.1))GOTO 10070
              SC=2
10070       IF((FINDS0(MEMAA0(NP),Q,1).NE.0))GOTO 10071
              IF((SC.NE.3))GOTO 10072
                ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,1,0,0)
                ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,0,0)
                GOTO 10074
10072           ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,NEWOBJ(0),0)
10073         GOTO 10074
10071         IF((MEMAA0(Q+3).NE.LLAAA0))GOTO 10075
                CALL CTOC(MEMAA0(NP),ERROR0,200)
                CALL SYNERR('Identifier defined twice at current level.'
     *,0)
                GOTO 10076
10075           IF((SC.NE.3))GOTO 10077
                IF((FINDS0(MEMAA0(NP),Q,1,1).NE.1))GOTO 10077
                  IF((COMPA0(MODE,MEMAA0(Q+1)).NE.0))GOTO 10079
                    CALL CTOC(MEMAA0(NP),ERROR0,200)
                    CALL SYNERR('Declaration conflicts with previous dec
     *laration.',1)
10078             GOTO 10079
10077             IF((SC.NE.3))GOTO 10080
                    ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,1,0,0)
                    ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,0,0)
                    GOTO 10081
10080               ID=NEWSYM(MEMAA0(NP),MODE,SC,ARG,LLAAA0,NEWOBJ(0),0)
10081           CONTINUE
10079         CONTINUE
10076       CONTINUE
10074     CONTINUE
10069   CONTINUE
10054 CONTINUE
10011 CALL DSFREE(NP)
10082 IF((PARAMS.EQ.0))GOTO 10083
        IF((MEMAA0(PARAMS+1).EQ.0))GOTO 10084
          CALL DSFREE(MEMAA0(PARAMS+1))
10084   Q=MEMAA0(PARAMS)
        CALL DSFREE(PARAMS)
        PARAMS=Q
      GOTO 10082
10083 RETURN
      END
      SUBROUTINE ENTEX0(ID,MODE,PARAMS,LOC)
      INTEGER ID,MODE,PARAMS
      INTEGER * 4 LOC
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER FINDS0,COMPA0
      INTEGER Q
      INTEGER MAKES0
      INTEGER * 4 GETLO0
      INTEGER INFO(3)
      INTEGER AAAAA0
      INTEGER AAAAB0
      IF((ID.NE.0))GOTO 10085
        RETURN
10085 IF((MEMAA0(MODE+3).NE.15))GOTO 10086
        CALL SYNERR('Functions cannot be part of a ''struct''.',0)
        CALL CREAT0(MODE,12,0)
10086 IF((PARAMS.EQ.0))GOTO 10087
        CALL SYNERR('Parameters not allowed in struct member.',0)
10088   IF((PARAMS.EQ.0))GOTO 10089
          Q=MEMAA0(PARAMS)
          CALL DSFREE(PARAMS)
          PARAMS=Q
        GOTO 10088
10089 CONTINUE
10087 IF((FINDS0(MEMAA0(ID),Q,2).NE.1))GOTO 10090
      IF((MEMAA0(Q+3).NE.LLAAA0))GOTO 10090
        AAAAA0=MEMAA0(Q)
        GOTO 10091
10092     CALL CTOC(MEMAA0(ID),ERROR0,200)
          CALL SYNERR('Identifier already defined as struct tag.',0)
        GOTO 10093
10094     IF((GETLO0(LOC).NE.GETLO0(MEMAA0(Q+8))))GOTO 10096
          IF((COMPA0(MODE,MEMAA0(Q+1)).EQ.0))GOTO 10096
          GOTO 10093
10096       CALL CTOC(MEMAA0(ID),ERROR0,200)
            CALL SYNERR('Struct member conflicts with previous definitio
     *n.',0)
10095   GOTO 10093
10091   AAAAB0=AAAAA0-1
        GOTO(10094,10097,10092),AAAAB0
10097   CONTINUE
10093   CALL DSFREE(ID)
        ID=Q
        RETURN
10090 Q=ID
      ID=MAKES0(MEMAA0(ID),2,LLAAA0)
      CALL DSFREE(Q)
      MEMAA0(ID+1)=MODE
      MEMAA0(ID+4)=-1
      MEMAA0(ID+2)=1
      MEMAA0(ID+5)=0
      CALL PUTLO0(MEMAA0(ID+8),LOC)
      RETURN
      END
      SUBROUTINE DECLC0(FLAG)
      INTEGER FLAG
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER FINDS0,MAKES0,NEWOBJ
      IF((FINDS0(SYMTE0,SYMPT0,1).EQ.0))GOTO 10099
      IF((MEMAA0(SYMPT0+3).LE.1))GOTO 10099
      GOTO 10098
10099   SYMPT0=MAKES0(SYMTE0,1,2)
        MEMAA0(SYMPT0+2)=5
        MEMAA0(SYMPT0+1)=LABEL0
        MEMAA0(SYMPT0+4)=FLAG
        MEMAA0(SYMPT0+5)=NEWOBJ(0)
        RETURN
10098 IF((MEMAA0(SYMPT0+1).EQ.LABEL0))GOTO 10100
        CALL SYNERR('Label already declared but not as label.',0)
        RETURN
10100 IF((MEMAA0(SYMPT0+4).NE.1))GOTO 10101
      IF((FLAG.NE.1))GOTO 10101
        CALL SYNERR('Label already declared.',0)
10101 IF((FLAG.NE.1))GOTO 10102
        MEMAA0(SYMPT0+4)=1
10102 RETURN
      END
      SUBROUTINE CHECL0(CLASS)
      INTEGER CLASS
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER FINDS0,NEWOBJ
      INTEGER Q
      IF((FINDS0(SYMTE0,SYMPT0,CLASS).NE.0))GOTO 10103
        CALL SYNERR('Identifier not declared.',0)
        CALL GENINT(0)
        GOTO 10104
10103   IF((MEMAA0(SYMPT0).NE.6))GOTO 10105
          CALL GENINT(MEMAA0(SYMPT0+5))
          GOTO 10106
10105     IF((MEMAA0(SYMPT0).EQ.1))GOTO 10107
          IF((MEMAA0(SYMPT0).EQ.2))GOTO 10107
            CALL SYNERR('Identifier is not a variable.',0)
            CALL GENINT(0)
            GOTO 10108
10107       IF((MEMAA0(SYMPT0).NE.1))GOTO 10109
            IF((MEMAA0(SYMPT0+5).NE.0))GOTO 10109
              MEMAA0(SYMPT0+5)=NEWOBJ(0)
              IF((MEMAA0(SYMPT0+3).LE.1))GOTO 10110
              IF((FINDS0(SYMTE0,Q,CLASS,1).NE.1))GOTO 10110
              IF((MEMAA0(Q+5).NE.0))GOTO 10110
                MEMAA0(Q+5)=MEMAA0(SYMPT0+5)
10110       CONTINUE
10109       CALL GENOQ0(SYMPT0)
10108   CONTINUE
10106 CONTINUE
10104 RETURN
      END
      SUBROUTINE CLEAN0
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER P,Q
      INTEGER ACCES0
      INTEGER STR(200)
      P=0
      Q=ACCES0(LLAAA0,STR,P,1)
      GOTO 10113
10111 Q=ACCES0(LLAAA0,STR,P,1)
10113 IF((Q.EQ.0))GOTO 10112
        IF((MEMAA0(Q+1).NE.LABEL0))GOTO 10114
        IF((MEMAA0(Q+4).NE.0))GOTO 10114
          CALL CTOC(STR,ERROR0,200)
          CALL SYNERR('Undefined label.',0)
10114   IF((MEMAA0(Q+4).NE.0))GOTO 10115
          CALL CTOC(STR,ERROR0,200)
          CALL SYNERR('Declared as parameter but not in parameter list.'
     *,0)
10115   IF((MEMAA0(Q).NE.5))GOTO 10111
        IF((MEMAA0(MEMAA0(Q+1)+5).NE.0))GOTO 10111
          CALL CTOC(STR,ERROR0,200)
          CALL SYNERR('''Enum'' referenced but not defined.',0)
10116 GOTO 10111
10112 P=0
      Q=ACCES0(LLAAA0,STR,P,2)
      GOTO 10119
10117 Q=ACCES0(LLAAA0,STR,P,2)
10119 IF((Q.EQ.0))GOTO 10118
        IF((MEMAA0(Q).NE.4))GOTO 10117
        IF((MEMAA0(MEMAA0(Q+1)+5).NE.0))GOTO 10117
          CALL CTOC(STR,ERROR0,200)
          CALL SYNERR('''Struct'' referenced but not defined.',0)
10120 GOTO 10117
10118 RETURN
      END
      SUBROUTINE CHECM0
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER FINDS0,NEWOBJ
      INTEGER Q
      INTEGER MODE
      INTEGER SDUPL
      MODE=INTMO0
      CALL CREAT0(MODE,15,0)
      IF((FINDS0(SYMTE0,SYMPT0,1).NE.0))GOTO 10121
        SYMPT0=SDUPL(SYMTE0)
        CALL ENTET0(SYMPT0,MODE,3,0,0,0)
        GOTO 10122
10121   IF((MEMAA0(MEMAA0(SYMPT0+1)+3).NE.15))GOTO 10123
          GOTO 10124
10123     IF((MEMAA0(SYMPT0+3).NE.LLAAA0))GOTO 10125
            CALL SYNERR('Usage conflicts with previous declaration.',0)
            GOTO 10126
10125       SYMPT0=SDUPL(SYMTE0)
            CALL ENTET0(SYMPT0,MODE,3,0,0,0)
10126   CONTINUE
10124 CONTINUE
10122 IF((MEMAA0(SYMPT0+5).NE.0))GOTO 10127
        MEMAA0(SYMPT0+5)=NEWOBJ(0)
        IF((MEMAA0(SYMPT0+3).LE.1))GOTO 10128
        IF((FINDS0(SYMTE0,Q,1,1).NE.1))GOTO 10128
        IF((MEMAA0(Q+5).NE.0))GOTO 10128
          MEMAA0(Q+5)=MEMAA0(SYMPT0+5)
10128 CONTINUE
10127 CALL GENOQ0(SYMPT0)
      RETURN
      END
      SUBROUTINE ALLOC0(ID)
      INTEGER ID
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER ISSTO0
      INTEGER * 4 SZ
      INTEGER * 4 SIZEO0
      IF((ISSTO0(ID).NE.0))GOTO 10129
        RETURN
10129 SZ=SIZEO0(MEMAA0(ID+1))
      IF((SZ.NE.0))GOTO 10130
        CALL SYNERR('Data object may not have zero size.',0)
        GOTO 10131
10130   IF((SZ.LT.(INTL(65535)+1)*8))GOTO 10132
          CALL SYNERR('Data object may not be larger than 65535 words.',
     *0)
10132 CONTINUE
10131 RETURN
      END
      SUBROUTINE ALLOD0(MP,LEN)
      INTEGER MP
      INTEGER * 4 LEN
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER * 4 GETLO0
      IF((MEMAA0(MP+3).NE.16))GOTO 10133
        CALL PUTLO0(MEMAA0(MP+6),GETLO0(MEMAA0(MP+6))+LEN)
        GOTO 10134
10133   IF((GETLO0(MEMAA0(MP+6)).GE.LEN))GOTO 10135
          CALL PUTLO0(MEMAA0(MP+6),LEN)
10135 CONTINUE
10134 RETURN
      END
      INTEGER FUNCTION WSIZE(B)
      INTEGER * 4 B
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      WSIZE=(B+15)/16
      RETURN
      END
      INTEGER FUNCTION ALLOE0(MP)
      INTEGER MP
      INTEGER SYMTE0(200),NSYMT0(200)
      INTEGER SYMLE0,SYMBO0,SYMLI0,NSYML0,NSYMB0,NSYMM0
      INTEGER SYMPT0,NSYMP0
      COMMON /LEXCOM/SYMBO0,NSYMB0,SYMLE0,NSYML0,SYMPT0,NSYMP0,SYMTE0,NS
     *YMT0,SYMLI0,NSYMM0
      INTEGER INBUF0(1105)
      INTEGER IBPAA0,LINEN0(5),LEVEL0
      INTEGER INFIL0(5)
      COMMON /INCOM/INBUF0,IBPAA0,LINEN0,INFIL0,LEVEL0
      INTEGER DIRTO0,DFOTO0
      INTEGER PPTBL0
      INTEGER DIRNA0(300),DFONA0(300)
      COMMON /PPCOM/PPTBL0,DIRTO0,DIRNA0,DFOTO0,DFONA0
      INTEGER KEYWD0,IDTBL0(50),SMTBL0(50)
      INTEGER LLAAA0
      COMMON /IDCOM/LLAAA0,KEYWD0,IDTBL0,SMTBL0
      INTEGER MEMAA0(30000)
      COMMON /DS$MEM/MEMAA0
      INTEGER SEMSK0(300),CTLSK0(50)
      INTEGER SEMSP0,CTLSP0
      COMMON /PARCOM/SEMSK0,SEMSP0,CTLSK0,CTLSP0
      INTEGER INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LABEL0,PO
     *INT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0(20),MODEU0(20),MODE
     *V0
      COMMON /MODCOM/INTMO0,CHARM0,SHORT0,LONGM0,UNSIG0,FLOAT0,DOUBL0,LA
     *BEL0,POINT0,SHORU0,LONGU0,CHARU0,MODET0,MODEL0,MODES0,MODEU0,MODEV
     *0
      INTEGER EXPSK0(100),PROCM0,PROCR0
      INTEGER EXPSP0,OBJNO0
      INTEGER * 4 ZINIT0
      COMMON /EXPCOM/EXPSK0,EXPSP0,OBJNO0,PROCM0,PROCR0,ZINIT0
      INTEGER OUTFP0,NERRS0
      INTEGER MODUL0(200),ERROR0(200)
      INTEGER A$BUF(200)
      INTEGER OUTFI0(3),CKFIL0
      INTEGER FNAME0(5)
      COMMON /MISCOM/MODUL0,ERROR0,A$BUF,OUTFI0,OUTFP0,CKFIL0,NERRS0,FNA
     *ME0
      INTEGER OBJ
      INTEGER NEWOBJ
      INTEGER STR(20)
      INTEGER P
      INTEGER NEWSYM
      INTEGER AAAAC0(8)
      DATA AAAAC0/163,244,229,237,240,170,233,0/
      OBJ=NEWOBJ(0)
      CALL ENCODE(STR,20,AAAAC0,OBJ)
      P=NEWSYM(STR,MP,2,0,LLAAA0,OBJ,0)
      CALL OUTVAR(P)
      CALL OUTOP0(39)
      CALL OUTSI0(MEMAA0(P+1))
      ALLOE0=P
      RETURN
      END
C ---- Long Name Map ----
C dumpsymentry                   dumpt0
C Procmode                       procm0
C declspecifiers                 decls0
C enterdefinition                entes0
C islvalue                       islva0
C outoper                        outop0
C installdefinition              insta0
C Nerrs                          nerrs0
C dumpsym                        dumps0
C entersmdecl                    entex0
C enumspecifier                  enums0
C openinclude                    openi0
C Nsymbol                        nsymb0
C Expsk                          expsk0
C enterchildmode                 enter0
C gencast                        genca0
C Dfoname                        dfona0
C checkarith                     check0
C droplitval                     dropl0
C outgoto                        outgo0
C returnstatement                retur0
C Nsymlen                        nsyml0
C Symptr                         sympt0
C ckfncall                       ckfnc0
C cleanupll                      clean0
C genmakearith                   genma0
C Outfp                          outfp0
C alloctemp                      alloe0
C forstatement                   forst0
C outinitend                     outio0
C outsize                        outsi0
C putbackstr                     putbc0
C Floatmodeptr                   float0
C createmode                     creat0
C displaymode                    displ0
C Expsp                          expsp0
C convoper                       convo0
C outexprtree                    outey0
C putback                        putba0
C structdeclaratorlist           strue0
C Nsymtext                       nsymt0
C Modelist                       model0
C Fnametable                     fname0
C genopnd                        genoq0
C isconstant                     iscon0
C isstored                       issto0
C Dirname                        dirna0
C invokemacro                    invok0
C makemode                       makem0
C notstatementstart              notsu0
C outexpr                        outex0
C structdecllist                 struf0
C Ll                             llaaa0
C Modesavelen                    modeu0
C functionheader                 funct0
C outdeclarations                outde0
C Charunsmodeptr                 charu0
C Modesavetype                   modes0
C structdeclaration              struc0
C Dfotop                         dfoto0
C ckputname                      ckpuu0
C findmode                       findm0
C refillbuffer                   refil0
C Keywdtbl                       keywd0
C declarations                   decla0
C entersiblingmode               entew0
C genoper                        genop0
C getlong                        getlo0
C typeorscspec                   typeo0
C declarator                     declb0
C ssalloc                        ssall0
C accesssym                      acces0
C declarelabel                   declc0
C ifstatement                    ifsta0
C initializer                    initj0
C isnullconv                     isnul0
C resetline                      reset0
C Charmodeptr                    charm0
C ckputmode                      ckput0
C createsavedmode                creau0
C displaysc                      dispo0
C dumpexpr                       dumpe0
C foldconst                      foldc0
C getlitval                      getli0
C initdeclarator                 initd0
C statementlabel                 statf0
C Idtbl                          idtbl0
C checkdeclaration               checl0
C enumdeclarator                 enumd0
C gentoboolean                   gento0
C isarith                        isari0
C processifdef                   procg0
C Dirtop                         dirto0
C constantexpr                   const0
C expression                     expre0
C outstmt                        outst0
C checkfunctiondeclaration       checm0
C convtype                       convt0
C dostatement                    dosta0
C enterll                        entev0
C Intmodeptr                     intmo0
C Doublemodeptr                  doubl0
C Zinitlen                       zinit0
C makesym                        makes0
C breakstatement                 break0
C expr10                         expr10
C externaldefinition             exter0
C structorunionspecifier         struh0
C Symbol                         symbo0
C Nsymline                       nsymm0
C Inbuf                          inbuf0
C Ibp                            ibpaa0
C collectquotedstring            collf0
C notstatementend                notst0
C outname                        outna0
C arrayinit                      array0
C displayoper                    dispn0
C fatalerr                       fatal0
C findsym                        finds0
C scalarinit                     scala0
C Symlen                         symle0
C Pointermodeptr                 point0
C genindex                       genin0
C Ckfile                         ckfil0
C ckfndef                        ckfnd0
C displayop                      dispm0
C enteriddecl                    entet0
C isaggregate                    isagg0
C removedefinition               remov0
C statement                      state0
C Level                          level0
C Mem                            memaa0
C Objno                          objno0
C arithexcep                     arith0
C compoundstatement              compo0
C continuestatement              conti0
C dgetsym                        dgets0
C initdeclaratorlist             inite0
C outmode                        outmo0
C processdebug                   procf0
C savemode                       savem0
C Nsymptr                        nsymp0
C Labelmodeptr                   label0
C Shortunsmodeptr                shoru0
C allocstruct                    allod0
C structinit                     strug0
C Symtext                        symte0
C cpreprocessor                  cprep0
C process                        proce0
C recordsym                      recor0
C Unsignedmodeptr                unsig0
C Longunsmodeptr                 longu0
C enterkw                        enteu0
C outproccallarg                 outps0
C allocatestorage                alloc0
C displaysymbol                  dispp0
C alignmode                      align0
C initialize                     initi0
C nextistype                     nexti0
C skipwhitespace                 skipw0
C Shortmodeptr                   short0
C Modulename                     modul0
C getactualparameters            getac0
C gotostatement                  gotos0
C switchstatement                switc0
C Outfile                        outfi0
C ckfnend                        ckfne0
C convconst                      convc0
C dumpmode                       dumpm0
C ispointer                      ispoi0
C primary                        prima0
C Infile                         infil0
C Longmodeptr                    longm0
C comparemode                    compa0
C modifyparammode                modif0
C sizeofmode                     sizeo0
C Ctlsk                          ctlsk0
C collectactualparameter         colle0
C outinitstart                   outip0
C Pptbl                          pptbl0
C Smtbl                          smtbl0
C Modesavect                     modev0
C ckfnarg                        ckfna0
C Semsk                          semsk0
C Procrtnv                       procr0
C getdefinition                  getde0
C putlong                        putlo0
C getformalparameters            getfo0
C putbacknum                     putbb0
C Ctlsp                          ctlsp0
C Modetable                      modet0
C genconvert                     genco0
C processifndef                  proch0
C structdeclarator               strud0
C abstractdeclarator             abstr0
C deallocexpr                    deall0
C gobbleuntilelseorendif         gobbl0
C outinit                        outin0
C outproc                        outpr0
C putlitval                      putli0
C ssdealloc                      ssdea0
C typename                       typen0
C whilestatement                 while0
C Symline                        symli0
C Linenumber                     linen0
C Semsp                          semsp0
C Errorsym                       error0
