*COMDECK CCT                                                             CCT
#CCT      CTEXT  COMPILER CONTROL TABLE                               # 
  # # CONTROL EJECT ;                                                    CCT
  # ****************************************************************** # CCT
  # *                                                                * # CCT
  # *  THE FOLLOWING SYMBOLS ARE ENTRY NAMES FOR THE CCT (COMPILER   * # CCT
  # * CONTROL TABLE). THESE NAMES ARE NORMALLY USED IN FUNCTION      * # CCT
  # * PAIRS IN THE MOVEZ IFZ, AND NOTZ COMMANDS.                     * # CCT
  # *    EXAMPLES:                                                   * # CCT
  # *             MOVEZ 1                                            * # CCT
  # *             IFZ    (CCTBIT,DEBUGMOD),ABC                       * # CCT
  # *                                                                * # CCT
  # *  NOTE THAT THERE ARE THREE KINDS OF ITEMS IN THE CCT THAT ARE  * # CCT
  # *  ACCESSIBLE FROM THE CGEN INTERPRETIVE CODE--WORD ITEMS (BY    * # CCT
  # *  CCTWORD), ONE-CHARACTER BYTE ITEMS (BY CCTBYTE), AND BIT      * # CCT
  # *  ITEMS (BY CCTBIT). THE INDEX FOR EACH IS A WORD, BYTE, OR     * # CCT
  # *  BIT COUNT FROM THE BEGINNING OF THE CCT.                      * # CCT
  # *                                                                * # CCT
  # *                                                                * # CCT
  # *  THE FIRST CCT ENTRY IS ENTRY NUMBER 0.                        * # CCT
  # ****************************************************************** # CCT
  #                                                                      CCT
 ITEM     MACRO  WORD                                                    CCT
          LOCAL  X                                                       CCT
 X        MICRO  4,8,*WORD*                                              CCT
          IF     DEF,"X",1
 D        ERR                      *"X" ALREADY DEFINED 
 "X"      BSS    1                                                       CCT
          ENDM                                                           CCT
  #                                                                      CCT
  # #     COMMON CCT ;                                                   CCT
  # #     BEGIN                                                          CCT
  # #     ARRAY [0] S(11);
  # #     BEGIN                                                          CCT
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  # CCT
  # *  FOLLOWING ARE 10-CHARACTER, LEFT-ALIGNED FILE NAMES FOR THE     # CCT
  # *  FILES USED BY THE COMPILER.                                     # CCT
  #                                                                      CCT
          ORG    0                                                       CCT
  #                                                                      CCT
            ITEM CCTENTRIES        I(0);         # FOR REFERENCING     #
  # 
          ORG    0
  # 
            ITEM CCTSOURCEFIL      C(0,  0,10);  # SOURCE FILE CHAR ID # CCT
            ITEM CCTLIBFILE        C(1,  0,10);  # LIBR FILE CHAR ID   # CCT
            ITEM CCTSCLISTFIL      C(2,  0,10);  # SOURCE LISTING FILE # CCT
            ITEM CCTASLISTFIL      C(3,  0,10);  # ASSEMBLY LISTING FI # CCT
            ITEM CCTXRLISTFIL      C(4,  0,10);  # XREF LISTING FILE   # CCT
            ITEM CCTDGLISTFIL      C(5,  0,10);  # DIAG LISTING FILE   # CCT
            ITEM CCTCHKOUT         C(6,  0,10);  # CHECKOUT COMMANDS   #
            ITEM CCTOBJFILE        C(7,  0,10);  # OBJECT CODE FILE    # CCT
            ITEM CCTCOMPASS        C(8,  0,10);  # COMPASS CARD IMAGES #
            ITEM CCTSSLIB          C(9,  0,10);  # SUB-SCHEMA LIBRARY  #
            ITEM CCTUARFILE        C(10, 0,10);  # UAR FILE            #
  # #     END                                                            CCT
  # #     ARRAY [0] S(1) ;                                               CCT
  # #     BEGIN                                                          CCT
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  # CCT
  # *  FOLLOWING ARE MISCELLANEOUS BIT LENGTH ITEMS.                   # CCT
  #                                                                      CCT
XORGX     SET     * 
          ORG    0
  #                                                                      CCT
            ITEM CCTFLAGINFO       U(0,0,60); #COMPLEAT WORD           #
  # 
          ORG    0
  # 
  #  COLS  13                     36            50                     #
            ITEM CCTDECPTCOMM      B(0  ,0, 1);  # DEC PT IS COMMA     # CCT
            ITEM CCTREPORTSEC      B(0  ,1, 1);  # REPORTS EXIST       # CCT
            ITEM CCTDEBUGMODE      B(0  ,2, 1);  # DEBUG COMPILE ACTIV # CCT
            ITEM CCTSUBPROGR       B(0  ,3, 1);  # CALLEE PROGRAM      # CCT
            ITEM CCTSIGNLEAD       B(0  ,4, 1);  # SIGN IS LEADING     # CCT
            ITEM CCTSIGNSEPAR      B(0  ,5, 1);  # SIGN IS SEPARATE    # CCT
            ITEM CCTHILO           B(0  ,6, 1);  #HIGH AND LOW-VALUES  #
                                                 #ARE VARIABLES        #
            ITEM CCTQUOTEAPOS      B(0  ,7, 1);  # QUOTE IS APOSTROPHE # CCT
            ITEM CCTSUBSCHECK      B(0  ,8, 1);  # SUBSC BOUNDS CODE   # CCT
            ITEM CCTSUBSOPTIM      B(0  ,9, 1);  # OPTIM SUBSC CODE    # CCT
            ITEM CCTOSISNOS        B(0  ,10,1);  # OPS SYSTEM IS NOS   #
            ITEM CCTSYNTXONLY      B(0  ,11,1);  # COMPILE FOR SYNTAX  # CCT
            ITEM CCTFORCEDOBJ      B(0  ,12,1);  # FORCED OBJECT GEN   # CCT
            ITEM CCTSUPPREXEC      B(0  ,13,1);  # EXECUTION SUPPRESS  # CCT
            ITEM CCTSOURCLIST      B(0  ,14,1);  # SOURCE LIST DESIRED # CCT
            ITEM CCTASSEMLIST      B(0  ,15,1);  # ASSEM LIST DESIRED  # CCT
            ITEM CCTXREFLIST       B(0  ,16,1);  # XREF LIST DESIRED   # CCT
            ITEM CCTOBJCTDECK      B(0  ,17,1);  # OBJECT DECK DESIRED # CCT
            ITEM CCTMEMORYMAP      B(0  ,18,1);  # MEMORY MAP DESIRED  # CCT
            ITEM CCTSECTION        B(0  ,19,1);  # SECTIONS PRESENT    # CCT
            ITEM CCTALTER          B(0  ,20,1);  # ALTERS PRESENT      # CCT
            ITEM CCTGOTO           B(0  ,21,1);  # GOTO PRESENT        # CCT
            ITEM CCTGOTODEPND      B(0  ,22,1);  # GOTO DEPEND PRESENT # CCT
            ITEM CCTALTINDSEG      B(0  ,23,1);  # ALT IND SEG PRESENT # CCT
            ITEM CCTANALSO         B(0  ,24,1);  #ALSO USED IN ALPHABET#
                                                 #NAME DEFINITION      #
            ITEM CCTSEGMENTS       B(0  ,25,1);  #SEGMENTATION USED    #
            ITEM CCTCOMPC1         B(0  ,26,1);  # COMP IS COMP-1      #
            ITEM CCTUNPACKC1       B(0  ,27,1);  # UNPACK COMP-1       #
            ITEM CCTMAINSUB        B(0  ,28,1);  # 1ST SUB IS MAIN SUB #
            ITEM CCTLBZ            B(0  ,29,1);  # LEADING BLANKS ZERO #
            ITEM CCTTRACE          B(0  ,30,1);  # TRACE PROCEDURES    #
            ITEM CCTDEBUGLINE      B(0  ,31,1);  # COMPILE DEBUG LINES #
            ITEM CCTDIAGTT         B(0  ,32,1);  # FORMAT FOR TELETYPE #
            ITEM CCTICHKOUT        B(0  ,33,1);  # INTERACTIVE CHECKOUT#
            ITEM CCTFSTCOMPIL      B(0  ,34,1);  #FIRST COMPILATION    #
            ITEM CCTDBTBSTATS      B(0  ,35,1);  #PRINT VIRTUAL STATS  #
            ITEM CCTCMU            B(0  ,36,1);  # GEN CODE TO USE CMU #
            ITEM CCTABORT          B(0  ,37,1);  # TERMINATE COMPILE   #
            ITEM CCTCOMSTATS       B(0  ,38,1);  # COMPILER STATISTICS #
            ITEM   CCTRFCHECK      B(0  ,39,1);  #REF. MODIF. CHECKING #
            ITEM CCTCHKCOMP1       B(0  ,40,1);  # CHECK SIZE OF COMP-1#
            ITEM CCTTIMRPT         B(0  ,41,1);  #TIMING REPORT FLAG   #
            ITEM CCTMIPOO          B(0  ,42,1);  # SB-SCHEM OPEN OUTPUT#
            ITEM CCTSMVERB         B(0  ,43,1);  # SORT OR MERGE VERB  #
            ITEM CCTSORT4          B(0  ,44,1);  #  SORT4 IS USED # 
            ITEM CCTFDLCDCS        B(0  ,45,1);  # DATABASE USAGE ON FD#
            ITEM CCTFDL            B(0  ,46,1);  # FDL IS SPECIFIED    #
            ITEM CCTPSQ            B(0  ,47,1);  # USER SEQ NUMBERS    #
            ITEM CCTNOSTERM        B(0  ,48,1);  # NOS CONN LISTING    #
            ITEM CCTCDCSMIP        B(0  ,49,1);  # UNUSED - AVAILABLE  #
            ITEM CCTDPARAM         B(0  ,50,1);  # CONTROL CARD D PARAM#
            ITEM  CCTSUBONLY       B(0  ,51,1); #SUBCOMPILE ONLY       #
            ITEM CCTTAF            B(0  ,52,1);  # TAF JOB FLAG        #
            ITEM CCTNOEDIT         B(0,53,1);    #DISPLAY NUMERIC#
            ITEM CCTLEFT77         B(0,54,1);    #77 LEFT SYNC# 
          ITEM  CCTAUDIT         B(0, 55,1);  #RUN AUDIT TESTS         #
            ITEM CCTUARWANTED      B(0  ,56,1);  #ANAL. REP. WANTED#
            ITEM CCTUARDETAIL      B(0  ,57,1);  #DETAILED REPORT # 
            ITEM CCTIDBUG          B(0  ,58,1);  # INTERACTIVE DEBUG ON#
            ITEM  CCTTDF           B(0  ,59,1);  #TERMINAL DUMP FLAG   #
  # #     END                                                            CCT
  # 
          ORG    XORGX+1
  # 
  # # 
  # *   THE FOLLOWING ITEMS TO THE END OF THE CCT ARE ZEROED OUT BEFORE#
  # *   EVERY SUBCOMPILE OR MAIN COMPILE BY INITCCT.  SOME OF THE      #
  # *   CHARACTER ITEMS ARE THEN SET TO INITIAL VALUES                 #
  # *   IF ANY ITEMS ARE TO BE SAVED OVER COMPILATIONS, INITCCT MUST   #
  # *   BE CHANGED TO SAVE THEM.                                       #
  # # 
  # ******   IF ADDING ANY NEW ITEMS, ADD THEM AT THE END OF THE CCT **#
  # # 
  
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  #
  # *  FOLLOWING ARE THE COMPILER TEXT LENGTHS AND ADDRESSES.          #
  # 
          ORG    *
  # 
  # *  THE NEXT ITEM (CCTCTEXTLEN) MUST BE THE FIRST IN THE LIST       #
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  #
            ITEM CCTCTEXTLEN       I ;           # CLASSIFIED TEXT     #
            ITEM CCTEDCTXLEN       I ;           # ENVIR DIVISION CTEX #
            ITEM CCTEDCTXADDR      I ;           #                     #
            ITEM CCTDBFSCTXT       I ;           # DATA BASE FD SEC    #
            ITEM CCTDDCTXLEN       I ;           # DATA DIVISION CTEXT #
            ITEM CCTDDCTXADDR      I ;           #                     #
            ITEM CCTRSCTXLEN       I ;           # REPORT SECTION CTEX #
            ITEM CCTRSCTXADDR      I ;           #                     #
            ITEM CCTPDCTXLEN       I ;           # PROC DIVISION CTEXT #
            ITEM CCTPDCTXADDR      I ;           #                     #
            ITEM CCTETEXTLEN       I ;           # ERROR TEXT          #
            ITEM CCTGTEXTLEN       I ;           # GENERATOR INPUT TEX #
            ITEM CCTOTEXTLEN       I ;           # OBJECT TEXT         #
  
  # * FOLLOWING ARE THE COMPILER TABLE LENGTHS AND ADDRESSES.          #
  # 
          ORG    *
  # 
            ITEM CCTAUXTLEN        I ;           # AUX INFORM TABLE    #
            ITEM CCTAWRTLEN        I ;           # ASSIGN WORD REF TAB #
            ITEM CCTDLTLEN         I ;           # DEF LINE TABLE LEN  #
            ITEM CCTDNATLEN        I ;           # DATA NAME ATT TABLE #
            ITEM CCTDNTLEN         I ;           # DATA NAME TABLE     #
            ITEM CCTFDLTLEN        I;       # FDLT LEN #
            ITEM CCTFDRDLEN        I ;           # FILE+REPORT DEFIN   #
            ITEM CCTFNATLEN        I ;           # FILE NAME ATT TABLE #
            ITEM CCTINTLEN         I ;           # INTERNAL NAME TABLE #
            ITEM CCTLATLEN         I ;           # LITERAL ATTR TABLE  #
            ITEM CCTLDSETLEN       I ;           #LDSET TABLE LENGTH# 
            ITEM CCTLPOOLLEN       I ;           # LITERAL POOL        #
            ITEM CCTPATLEN         I ;           # PICTURE ATTR TABLE  #
            ITEM CCTPLSTLEN        I;       #     PLT STRING TABLE LEN #
            ITEM CCTPLTLEN         I ;           # PICTURE LITERAL TAB #
            ITEM CCTPNATLEN        I ;           # PROC NAME ATT TABLE #
            ITEM CCTPNTLEN         I ;           # PROCED NAME TABLE   #
            ITEM CCTRFTLEN         I ;      #REF COUNT TABLE LENGTH    #
            ITEM CCTSPBTLEN        I ;           # SORT PROC BOUND TAB #
  
            ITEM CCTEDITPADDR      I ;
            ITEM CCTEDITPLEN       I ;           # EDIT PAT LIT IN PLT #
            ITEM CCTPDLITADDR      I ;
            ITEM CCTPDLITLEN       I ;           # PROC DIV LIT IN PLT #
            ITEM CCTCIDTADDR       I ;           #CONTROL IDENT INDEX#
            ITEM CCTCIDTLEN        I ;           # CONTROL IDENT TABLE #
            ITEM CCTRDCDIADDR      I ;           #   DATA IDENT TABLE  #
            ITEM CCTRDCDILEN       I ;           # REPORT DEF CONTROL  #
            ITEM CCTPDXRV          I ;           # PROC DIV BOUND-XRV  #
            ITEM CCTRPAUXLEN       I ;           # REPORT PARSE AUX TB #
            ITEM CCTRWTABADDR      I ;           #REPORT TABLE INDEX# 
            ITEM CCTRWTABLEN       I ;           # REPORT WRITER TABLE #
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  #
  # *  FOLLOWING ARE MISCELLANEOUS WORD LENGTH ITEMS.                  #
  # 
            ORG     * 
  # 
  # #     ARRAY [19] S(1) ; 
  # #     ITEM CCTMSECLEN          I ;
  
  # 
          ORG    *+20 
  # 
            ITEM CCTANSIDIAG       I ;           #LEVEL OF ANSI ERR    #
                                                 #    TO PRINT         #
            ITEM CCTBRTABBASE      I ;           # BRANCH TABLE IN DNAT#
            ITEM  CCTLSTGLPN;                    #LAST GLOBAL PNAT# 
            ITEM CCTCAPCOUNT       I;            # USER OVCAP COUNT    #
            ITEM CCTCDDNATPTR      I ;      #FIRST DNAT IN COMM. SECTN #
            ITEM CCTCLOCKUNIT      I ;           #   DITTO BUT DIFFER. #
            ITEM CCTCOLLSEQ        I;       #     DNAT OF PROGRAM      #
                                            #     COLLATTING SEQUENCE  #
            ITEM CCTCOREOPTN       I ;           # ECS OPTION          #
            ITEM CCTCSDNATPTR      I ;      #FIRST DNAT IN COMMON STOR.#
            ITEM CCTDCLLOWBND      I ;           # PNAT INDEX-DECL END #
            ITEM CCTDCLUPPBND      I ;           # PNAT INDEX-DECL BGN #
            ITEM CCTDDLINENUM      I ;           # DATA DIV START LINE #
            ITEM CCTDIAGLEVEL      I ;      #DIAG LEVEL TO LIST        #
            ITEM CCTEDLINENUM      I ;           # ENVIR DIV STRT LINE #
            ITEM CCTFDDNATPTR      I ;      #FIRST DNAT IN FILE SECTION#
            ITEM CCTFIPSLEVEL      I ;           # FIPS LEVEL DIAG LEV #
            ITEM CCTFIRSTAN        I;       #     DNAT OF 1ST ALPHABET #
                                            #     NAME                 #
            ITEM CCTINITTABBS      I ;           # INIT VERB IN BRTAB  #
            ITEM CCTINITTABLN      I ;
            ITEM CCTINTRDBUG       I ;      #INTERCEPTOR DEBUG FLAG    #
            ITEM CCTIPCSET         I;       #NATIVE CHARACTER SET      #
            ITEM CCTLASTAN         I;       #     DNAT OF LAST ALPHABET#
                                            #     NAME            # 
            ITEM CCTLSTWSDNAT      I ; # LAST WORKING-STORAGE SEC DNAT #
            ITEM CCTLASTLINE       I ;           # LAST SOURCE PROG LN #
            ITEM CCTLASTREPOR      I ;           # INDEX TO LAST REPOR #
            ITEM CCTLATDDLNGT      I ;           # DATA DIV LENG-LAT   #
            ITEM CCTLATPDLNGT      I ;           # PROC DIV LENG-LAT   #
            ITEM CCTLINAGE         I ;      #DNAT PTR OF ONLY LINAGE   #
                                            #COUNTER IN PROGRAM        #
            ITEM CCTLKDNATPTR      I ;      #FIRST DNAT IN LINK. SECTN #
            ITEM CCTMAXMNEM        I ;      #HIGHEST USED MNEMONIC NUM #
            ITEM CCTMODENUMB       I ; # CYBER MACHINE NUMBER          #
            ITEM CCTOVLNAME  I ;                 # OVERLAY NAME        #
            ITEM CCTOVCOUNT        I;            # USER OVLY COUNT     #
            ITEM CCTPDLINENUM      I ;           # PROC DIV START LINE #
            ITEM CCTPERFTIMES      I ;            #COUNT OF PERFORM... #
                                                  # TIMES STATEMENTS   #
            ITEM CCTPHASEID        I ;           # CURRENT PHASE NUMB  #
            ITEM CCTPLTLOPTR       I ;       # PTR TO DDL OMIT TABLE   #
            ITEM CCTPNCOUNT        I ;      #NUMBER OF PROCEDURE NAMES #
                                            #IN PLT FOR DEBUGGING ON   #
                                            #ALL PROCEDURES            #
            ITEM CCTPNINDEX        I ;      #PLT PTR TO 1ST PROCEDURE  #
                                            #NAME                      #
          ITEM  CCTUNUSED1;  #UNUSED# 
            ITEM CCTREPORTCUT      I ;           # COUNT OF REPORTS    #
            ITEM CCTRERUNCOND      I ; # RERUN MASK BITS 48-59# 
            ITEM CCTRPSECTNAM      I ; # PNAT NUMBER RPARSER SECT      #
            ITEM CCTRSDNATPTR      I ;      #FIRST DNAT IN REP. SECTN  #
            ITEM CCTRSLINENUM      I ;           # REPORT SEC STRT LIN #
            ITEM CCTRWVRBLINE      I ;     #DNAT WHICH HOLDS THE LINE # 
                                           #NUMBER OF THE CURRENTLY   # 
                                           #EXECUTING REPORT WRITER   # 
                                           #VERB.                     # 
            ITEM CCTSEGLIMIT       I ; # MAX OVERLAY SECTION NUMBER    #
            ITEM CCTSSDATE     I;                #SUBSCHEMA DATE# 
            ITEM CCTSSDNATPTR      I ;      #FIRST DNAT IN SECOND.  ST.#
            ITEM CCTSSTIME     I;                #SUBSCHEMA TIME# 
            ITEM CCTWSDNATPTR      I ;      #FIRST DNAT IN  WORK. STOR.#
                                                                         CCT
  # #     ARRAY  CCTCHARRY  [0] S(11);
  # #     BEGIN                                                          CCT
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  # CCT
  # *  FOLLOWING ARE MISCELLANEOUS CHARACTER ITEMS.                    # CCT
            ITEM CCTCURRSIGN       C(0  ,54,1);  # CURRENCY CHARACTER  # CCT
            ITEM CCTDECPOINT       C(1  ,54,1);  # DEC POINT CHARACTER # CCT
            ITEM CCTPROGRAMID      C(2  ,0,10);  # PROGRAM NAME        #
            ITEM CCTLOVALUE        C(3  ,54,1);  # LOW-VALUE CHARACTER #
            ITEM CCTHIVALUE        C(4  ,54,1);  # HIGH-VALUE CHARACTER#
            ITEM CCTSSNAME         C(5  ,0,30);  # SUBSCHEMA NAME      #
  # 
          ORG  *+2
  # 
            ITEM CCTSCHNAME        C(8  ,0,30);  # SCHEMA NAME         #
  # 
          ORG    *+2
  # 
  # #     END                                                            CCT
                                                                         CCT
          ITEM  CCTPROGRI0 C(10); #PROGRAM-ID  1ST 10 CHARS          #
          ITEM  CCTPROGRI1 C(10); #PROGRAM-ID  2ND 10 CHARS          #
          ITEM  CCTPROGRI2 C(10); #PROGRAM-ID  3RD 10 CHARS            #
  
  # # 
  # *  NEW ITEMS SINCE LAST CCT RESTRUCTURE                            #
  # # 
  
          ITEM  CCTOBJLSTLEN;          #LENGTH OBJECT CODE LIST TABLE  #
          ITEM CCTINITCD          I;   # DNAT OF INITIAL CD # 
        ITEM  CCTMAXMNUM;          #MAXIMUM M NUMBER                   #
          ITEM  CCTDATE        C(10);  # CURRENT DATE XX/XX/XX         #
          ITEM CCTNAMETLEN  I;     # NAME TABLE LENGTH #
          ITEM  CCTDATFORMAT   U;      # VFD 18/Y,18/M,18/D WHERE Y,M,D 
                                        ARE THE OFFSETS FOR YEAR,MONTH, 
                                        DAY AS HELD IN CCTDATE         #
          ITEM  CCTDUMPDATA     B;     #SET IF FMA DESIRES DUMP   # 
           ITEM CCTAPO B; 
  # ****  ADD ANY NEW ITEMS VIA *B THIS LINE.  RECOMPILE COBOL5 AND    #
  # *  INITCCT TO CORRECTLY PROCESS NEW ITEM (S).                      #
  # *  THE FOLLOWING IS A DUMMY FOR USE BY INITCCT - IT MAY BE USED AS #
  # *  A TEMP IF DESIRED                                               #
            ITEM CCTLASTITEM I; 
  # #     END    #END OF THE CCT# 
  #    FOLLOWING ARE EQUATES FOR TEMPORARY USE                         #
  # #     DEF CCTDEFLINETL     #CCTDLTLEN#; 
  # #     DEF CCT1STCOMPIL   #CCTFSTCOMPIL#;
                                                                         CCT
                                                                         CCT
#CCT      ENDX                                                        # 
