*COMDECK CEXEC
          CONTROL NOLIST;    #CEXEC#
  
#     EITHER COMDECK SYMCNS OR COMDECK SYMCNS2 MUST BE CALLED TO       #
#     DECLARE STATUS LIST CLIST PRIOR TO CALLING THIS COMDECK          #
  
#          IF YOU CHANGE THIS CHANGE CIDDB IN CONCARD TOO #              JUNK 
   DEF CIDDB   # B<5>OPTION#;                                            JUNK 
     DEF L$HASH #127#;             # LENGTH-1 OF HASH TABLE            #
     DEF L$PRFX #15#;              # LENGTH OF LOADER PRFX TABLE       #
     DEF L$TCT #135#;              # LENGTH OF TEXT CONTROL TABLE      #
     DEF  L$SCPN  # 128#; 
     DEF  ZBLKSZ  #   5#; 
     DEF  ASLC    #APLC#; 
     DEF  CSLC    #CPLC#; 
     DEF  DSLC    #DPLC#; 
     DEF  FSLC    #FPLC#; 
     DEF  XSLC    #XPLC#; 
  
                              #-------------------------------# 
                              # THE FOLLOWING ARE DEFS FOR    # 
                              # MAX BUFFER SIZES, AND MAX-1.  # 
                              #-------------------------------# 
                              #                               # 
 DEF L$INL #127#;  DEF L$INLM #126#;  # IL                    # 
 DEF L$GNL #127#;  DEF L$GNLM #126#;  # GLOBAL NAMES LIST.    # 
 DEF L$CFL #127#;  DEF L$CFLM #126#;  # CODE FILE             # 
 DEF L$OBJ #127#;  DEF L$OBJM #126#;  # OBJECT CODE           # 
 DEF L$CRF #127#;  DEF L$CRFM #126#;  # CROSS-REFERENCE       # 
 DEF L$PST #127#;  DEF L$PSTM #126#;  # PRESET FILE           # 
 DEF L$ICF #127#;  DEF L$ICFM #126#;  # INTERMEDIATE CFL      # 
  
 DEF BYTNDEFWD#5#;
 DEF BYT9     #9#;
  
 DEF ADCN$W  #3#;   #CLAS"ADCN LENGTH#
 DEF ARRY$W  #4#;   #CLAS"ARRY LENGTH#
 DEF BPAR$W  #2#;   #CLAS"BPAR LENGTH#
 DEF CLOS$W  #5#;   #CLAS"CLOS LENGTH#
 DEF COMM$W  #2#;   #CLAS"COMM LENGTH#
 DEF CONS$W  #3#;   #CLAS"CONS LENGTH#
 DEF DATA$W  #3#;   #CLAS"DATA LENGTH#
 DEF SNAM$W  #1#;   #CLAS"SNAM LENGTH#
 DEF DEF$W   #2#;   #CLAS"DEF  LENGTH#
 DEF DTXT$W  #1#;   #CLAS"DTXT LENGTH#
 DEF DUMY$W  #3#;   #CLAS"DUMY LENGTH#
 DEF FILE$W  #3#;   #CLAS"FILE LENGTH#
 DEF FPAR$W  #2#;   #CLAS"FPAR LENGTH#
 DEF FUNC$W  #4#;   #CLAS"FUNC LENGTH#
 DEF INSC$W  #1#;   #CLAS"INSC LENGTH#
 DEF LABL$W  #3#;   #CLAS"LABL LENGTH#
 DEF LOOP$W  #3#;   #CLAS"LOOP LENGTH#
 DEF MON$W   #2#;   #CLAS"MON  LENGTH#
 DEF NAME$W  #1#;   #CLAS"NAME LENGTH#
 DEF EMPT$W  #1#;   #CLAS"EMPT LENGTH#
 DEF OVER$W  #1#;   #CLAS"OVER LENGTH#
 DEF PROC$W  #3#;   #CLAS"PROC LENGTH#
 DEF PROG$W  #3#;   #CLAS"PROG LENGTH#
 DEF SCON$W  #2#;   #CLAS"SCON LENGTH#
 DEF SLC$W   #2#;   #CLAS"SLC  LENGTH#
 DEF STRG$W  #4#;   #CLAS"STRG LENGTH#
 DEF STSL$W  #2#;   #CLAS"STSL LENGTH#
 DEF SWCH$W  #2#;   #CLAS"SWCH LENGTH#
 DEF TABL$W  #4#;   #CLAS"TABL LENGTH#
 DEF TEMP$W  #3#;   #CLAS"TEMP LENGTH#
 DEF TEXT$W  #2#;   #CLAS"TEXT LENGTH#
 DEF TITM$W  #4#;   #CLAS"TITM LENGTH#
 DEF VALU$W  #6#;   #CLAS"VALU LENGTH#
  
  
  
  
  
#----------------------------------------------------------------------#
#                          --   N O T E   --                           #
#   CHANGES TO CEXEC MAY NEED TO BE REFLECTED IN *COMDECK COMSTUF,     #
#   WHICH IS THE MEANS BY WHICH COMPASS ROUTINES ACCESS ITEMS IN       #
#   COMMON BLOCK CEXEC.                                                #
#----------------------------------------------------------------------#
  
  
  
*CALL COM08 
          CONTROL NOLIST;    #CEXEC#
                              #-------------------------------# 
   COMMON CEXEC; BEGIN        #        START  CEXEC           # 
                              #-------------------------------# 
                              #                               # 
     ITEM APLC=0,             # ADCON SLC POINTER             # 
          CPLC=0,             # CODE SLC POINTER              # 
          DPLC=0,             # DATA SLC POINTER              # 
          LPLC=0,             # LITERAL SLC POINTER           # 
          SPLC=0,             # 1ST SLC POINTER               # 
          TPLC=0,             # ATTACH SLC POINTER            # 
          UPLC=0,             # UNDEFINED SLC POINTER         # 
          XPLC=0,             # EXTERNAL SLC POINTER          # 
          ESPLC=0,            # END OF SLC CHAIN              # 
          NONAM,              # LINK TO NO NAME ENTRY         # 
          STLC = 0,           # SYMPL TEXT LINK CHAIN POINTER # 
          NAFVL,              # NEXT AVAILABLE FOLDING VALUE  # 
          SPROG B,            # TRUE=COMPILING PROC,FALSE=PRGM# 
          CRDNO=0,            # CARD NUMBER                   # 
          ADCNL=0,            # LOCATION CONTR START FOR CGII # 
          SYMSTART,           # START OF REAL SYMBOL TABLE    # 
          AFREE = 0,          # NUM OF AVAIL WORDS IN SYM TAB # 
          FLMINUS1,           # CURRENT FL-1                  # 
          SYMCP,              # SYMBOL TABLE CAPACITY         # 
          AVLRS,              # LINK TO AVAILABLE SPACE CHAIN # 
          NXTAV,              # LINK TO NXT AVAIL. S/TABLE WD # 
          NOLIST;             # GLOBAL SOURCE LISTING FLAG    # 
  
  
          ARRAY [L$SCPN];     #                               # 
          ITEM SCPN =         #                               # 
          [0,L$SCPN(0)];      #                               # 
#LCM# CONTROL IFNQ SYMTBLV,0; 
#  NOTE THAT WE MUST INSERT FREEPTR AT END OF CEXEC NOW                #
#  OR WE WOULD HAVE TO RECOMPILE THE WHOLE COMPILER                    #
          ITEM FREEPTR;     #KLUDGE INSERTION FOR PREE SCM SPACE PTR   #
      ITEM FREEMAX;          #MAX FREE SPACE USED                      #
#LCM# CONTROL ENDIF;
                              #-------------------------------# 
          END                 #          END   CEXEC          # 
                              #-------------------------------# 
          CONTROL LIST;      #CEXEC#
