Annotation of 43BSDTahoe/new/xns/compiler/lex.yy.c.bw, revision 1.1.1.1

1.1       root        1: # include "stdio.h"
                      2: # define U(x) x
                      3: # define NLSTATE yyprevious=YYNEWLINE
                      4: # define BEGIN yybgin = yysvec + 1 +
                      5: # define INITIAL 0
                      6: # define YYLERR yysvec
                      7: # define YYSTATE (yyestate-yysvec-1)
                      8: # define YYOPTIM 1
                      9: # define YYLMAX 200
                     10: # define output(c) putc(c,yyout)
                     11: # define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar)
                     12: # define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;}
                     13: # define yymore() (yymorfg=1)
                     14: # define ECHO fprintf(yyout, "%s",yytext)
                     15: # define REJECT { nstr = yyreject(); goto yyfussy;}
                     16: int yyleng; extern char yytext[];
                     17: int yymorfg;
                     18: extern char *yysptr, yysbuf[];
                     19: int yytchar;
                     20: FILE *yyin ={stdin}, *yyout ={stdout};
                     21: extern int yylineno;
                     22: struct yysvf { 
                     23:        struct yywork *yystoff;
                     24:        struct yysvf *yyother;
                     25:        int *yystops;};
                     26: struct yysvf *yyestate;
                     27: extern struct yysvf yysvec[], *yybgin;
                     28: #ifndef lint
                     29: static char RCSid[] = "$Header: lex.yy.c.bw,v 2.0 85/11/21 07:21:45 jqj Exp $";
                     30: #endif
                     31: /*
                     32:  * scanner.l -- scanner for the XNS courier compiler
                     33:  */
                     34: 
                     35: /* $Log:       lex.yy.c.bw,v $
                     36:  * Revision 2.0  85/11/21  07:21:45  jqj
                     37:  * 4.3BSD standard release
                     38:  * 
                     39:  * Revision 1.1  85/11/20  12:56:17  jqj
                     40:  * Initial revision
                     41:  * 
                     42:  * Revision 1.3  85/03/11  16:40:08  jqj
                     43:  * Public alpha-test version, released 11 March 1985
                     44:  * 
                     45:  * Revision 1.2  85/02/21  11:05:51  jqj
                     46:  * alpha test version
                     47:  * 
                     48:  * Revision 1.1  85/02/15  13:55:58  jqj
                     49:  * Initial revision
                     50:  * 
                     51:  */
                     52: 
                     53: #include "compiler.h"
                     54: #include "y.tab.h"
                     55: # define YYNEWLINE 10
                     56: yylex(){
                     57: int nstr; extern int yyprevious;
                     58: while((nstr = yylook()) >= 0)
                     59: yyfussy: switch(nstr){
                     60: case 0:
                     61: if(yywrap()) return(0); break;
                     62: case 1:
                     63:                case 2:
                     64:                case 3:
                     65: case 4:
                     66:                /* whitespace */;
                     67: break;
                     68: case 5:
                     69:                { return (ARRAY); }
                     70: break;
                     71: case 6:
                     72:                { return (_BEGIN); }
                     73: break;
                     74: case 7:
                     75:                { return (BOOLEAN); }
                     76: break;
                     77: case 8:
                     78:        { return (CARDINAL); }
                     79: break;
                     80: case 9:
                     81:                { return (CHOICE); }
                     82: break;
                     83: case 10:
                     84:                { return (DEPENDS); }
                     85: break;
                     86: case 11:
                     87:                { return (END); }
                     88: break;
                     89: case 12:
                     90:                { return (ERROR); }
                     91: break;
                     92: case 13:
                     93:                { return (INTEGER); }
                     94: break;
                     95: case 14:
                     96:                { return (LONG); }
                     97: break;
                     98: case 15:
                     99:                { return (OF); }
                    100: break;
                    101: case 16:
                    102:        { return (PROCEDURE); }
                    103: break;
                    104: case 17:
                    105:                { return (PROGRAM); }
                    106: break;
                    107: case 18:
                    108:                { return (RECORD); }
                    109: break;
                    110: case 19:
                    111:                { return (REPORTS); }
                    112: break;
                    113: case 20:
                    114:                { return (RETURNS); }
                    115: break;
                    116: case 21:
                    117:        { return (SEQUENCE); }
                    118: break;
                    119: case 22:
                    120:                { return (STRING); }
                    121: break;
                    122: case 23:
                    123:                { return (TYPE); }
                    124: break;
                    125: case 24:
                    126:        { return (UNSPECIFIED); }
                    127: break;
                    128: case 25:
                    129:                { return (UPON); }
                    130: break;
                    131: case 26:
                    132:                { return (VERSION); }
                    133: break;
                    134: case 27:
                    135:                { return (TRUE); }
                    136: break;
                    137: case 28:
                    138:                { return (FALSE); }
                    139: break;
                    140: case 29:
                    141:                { return (_CHOOSES); }
                    142: break;
                    143: case 30:
                    144:        {
                    145:                                /*
                    146:                                 * decimal constant.
                    147:                                 */
                    148:                                yylval.stringvalue = copy(yytext);
                    149:                                return (number);
                    150:                        }
                    151: break;
                    152: case 31:
                    153:        {
                    154:                                /*
                    155:                                 * decimal constant.
                    156:                                 */
                    157:                                yytext[yyleng-1] = '\0';
                    158:                                yylval.stringvalue = copy(yytext);
                    159:                                return (number);
                    160:                        }
                    161: break;
                    162: case 32:
                    163:        {
                    164:                                char buf[BUFSIZ];
                    165:                                /*
                    166:                                 * octal constant.
                    167:                                 * change to C representation
                    168:                                 */
                    169:                                yytext[yyleng-1] = '\0';
                    170:                                if (*yytext != '-')
                    171:                                        sprintf(buf,"0%s", yytext);
                    172:                                else
                    173:                                        sprintf(buf,"-0%s", yytext+1);
                    174:                                yylval.stringvalue = copy(buf);
                    175:                                return (number);
                    176:                        }
                    177: break;
                    178: case 33:
                    179: {
                    180:                                char buf[BUFSIZ];
                    181:                                /*
                    182:                                 * hex constant.
                    183:                                 * change to C representation
                    184:                                 */
                    185:                                yytext[yyleng-1] = '\0';
                    186:                                if (*yytext != '-')
                    187:                                        sprintf(buf,"0x%s", yytext);
                    188:                                else
                    189:                                        sprintf(buf,"-0x%s", yytext+1);
                    190:                                yylval.stringvalue = copy(buf);
                    191:                                return (number);
                    192:                        }
                    193: break;
                    194: case 34:
                    195:        {
                    196:                                /*
                    197:                                 * string constant
                    198:                                 */
                    199:                                
                    200:                                yylval.stringvalue = copy(yytext);
                    201:                                return (string);
                    202:                        }
                    203: break;
                    204: case 35:
                    205: {
                    206:                                register char *p;
                    207:                                /*
                    208:                                 * string constant with embedded ""
                    209:                                 */
                    210: 
                    211:                                for (p=yytext+1; p<yytext+yyleng-1; p++)
                    212:                                        if (*p == '"') *p++='\\';
                    213:                                yylval.stringvalue = copy(yytext);
                    214:                                return (string);
                    215:                        }
                    216: break;
                    217: case 36:
                    218: {
                    219:                                yylval.stringvalue = copy(yytext);
                    220:                                return (identifier);
                    221:                        }
                    222: break;
                    223: case 37:
                    224:                {
                    225:                                return ((int) yytext[0]);
                    226:                        }
                    227: break;
                    228: case -1:
                    229: break;
                    230: default:
                    231: fprintf(yyout,"bad switch yylook %d",nstr);
                    232: } return(0); }
                    233: /* end of yylex */
                    234: int yyvstop[] ={
                    235: 0,
                    236: 
                    237: 37,
                    238: 0,
                    239: 
                    240: 4,
                    241: 37,
                    242: 0,
                    243: 
                    244: 4,
                    245: 0,
                    246: 
                    247: 37,
                    248: 0,
                    249: 
                    250: 37,
                    251: 0,
                    252: 
                    253: 30,
                    254: 37,
                    255: 0,
                    256: 
                    257: 30,
                    258: 37,
                    259: 0,
                    260: 
                    261: 37,
                    262: 0,
                    263: 
                    264: 36,
                    265: 37,
                    266: 0,
                    267: 
                    268: 36,
                    269: 37,
                    270: 0,
                    271: 
                    272: 36,
                    273: 37,
                    274: 0,
                    275: 
                    276: 36,
                    277: 37,
                    278: 0,
                    279: 
                    280: 36,
                    281: 37,
                    282: 0,
                    283: 
                    284: 36,
                    285: 37,
                    286: 0,
                    287: 
                    288: 36,
                    289: 37,
                    290: 0,
                    291: 
                    292: 36,
                    293: 37,
                    294: 0,
                    295: 
                    296: 36,
                    297: 37,
                    298: 0,
                    299: 
                    300: 36,
                    301: 37,
                    302: 0,
                    303: 
                    304: 36,
                    305: 37,
                    306: 0,
                    307: 
                    308: 36,
                    309: 37,
                    310: 0,
                    311: 
                    312: 36,
                    313: 37,
                    314: 0,
                    315: 
                    316: 36,
                    317: 37,
                    318: 0,
                    319: 
                    320: 36,
                    321: 37,
                    322: 0,
                    323: 
                    324: 36,
                    325: 37,
                    326: 0,
                    327: 
                    328: 34,
                    329: 35,
                    330: 0,
                    331: 
                    332: -1,
                    333: 0,
                    334: 
                    335: 30,
                    336: 0,
                    337: 
                    338: 30,
                    339: 0,
                    340: 
                    341: 32,
                    342: 0,
                    343: 
                    344: 31,
                    345: 0,
                    346: 
                    347: 33,
                    348: 0,
                    349: 
                    350: 29,
                    351: 0,
                    352: 
                    353: 36,
                    354: 0,
                    355: 
                    356: 36,
                    357: 0,
                    358: 
                    359: 36,
                    360: 0,
                    361: 
                    362: 36,
                    363: 0,
                    364: 
                    365: 36,
                    366: 0,
                    367: 
                    368: 36,
                    369: 0,
                    370: 
                    371: 36,
                    372: 0,
                    373: 
                    374: 36,
                    375: 0,
                    376: 
                    377: 36,
                    378: 0,
                    379: 
                    380: 36,
                    381: 0,
                    382: 
                    383: 36,
                    384: 0,
                    385: 
                    386: 36,
                    387: 0,
                    388: 
                    389: 15,
                    390: 36,
                    391: 0,
                    392: 
                    393: 36,
                    394: 0,
                    395: 
                    396: 36,
                    397: 0,
                    398: 
                    399: 36,
                    400: 0,
                    401: 
                    402: 36,
                    403: 0,
                    404: 
                    405: 36,
                    406: 0,
                    407: 
                    408: 36,
                    409: 0,
                    410: 
                    411: 36,
                    412: 0,
                    413: 
                    414: 36,
                    415: 0,
                    416: 
                    417: 36,
                    418: 0,
                    419: 
                    420: 1,
                    421: 0,
                    422: 
                    423: 36,
                    424: 0,
                    425: 
                    426: 36,
                    427: 0,
                    428: 
                    429: 36,
                    430: 0,
                    431: 
                    432: 36,
                    433: 0,
                    434: 
                    435: 36,
                    436: 0,
                    437: 
                    438: 36,
                    439: 0,
                    440: 
                    441: 11,
                    442: 36,
                    443: 0,
                    444: 
                    445: 36,
                    446: 0,
                    447: 
                    448: 36,
                    449: 0,
                    450: 
                    451: 36,
                    452: 0,
                    453: 
                    454: 36,
                    455: 0,
                    456: 
                    457: 36,
                    458: 0,
                    459: 
                    460: 36,
                    461: 0,
                    462: 
                    463: 36,
                    464: 0,
                    465: 
                    466: 36,
                    467: 0,
                    468: 
                    469: 36,
                    470: 0,
                    471: 
                    472: 36,
                    473: 0,
                    474: 
                    475: 36,
                    476: 0,
                    477: 
                    478: 36,
                    479: 0,
                    480: 
                    481: 36,
                    482: 0,
                    483: 
                    484: 36,
                    485: 0,
                    486: 
                    487: 36,
                    488: 0,
                    489: 
                    490: 35,
                    491: 0,
                    492: 
                    493: 3,
                    494: 0,
                    495: 
                    496: 2,
                    497: 0,
                    498: 
                    499: 36,
                    500: 0,
                    501: 
                    502: 36,
                    503: 0,
                    504: 
                    505: 36,
                    506: 0,
                    507: 
                    508: 36,
                    509: 0,
                    510: 
                    511: 36,
                    512: 0,
                    513: 
                    514: 36,
                    515: 0,
                    516: 
                    517: 36,
                    518: 0,
                    519: 
                    520: 36,
                    521: 0,
                    522: 
                    523: 36,
                    524: 0,
                    525: 
                    526: 14,
                    527: 36,
                    528: 0,
                    529: 
                    530: 36,
                    531: 0,
                    532: 
                    533: 36,
                    534: 0,
                    535: 
                    536: 36,
                    537: 0,
                    538: 
                    539: 36,
                    540: 0,
                    541: 
                    542: 36,
                    543: 0,
                    544: 
                    545: 36,
                    546: 0,
                    547: 
                    548: 36,
                    549: 0,
                    550: 
                    551: 27,
                    552: 36,
                    553: 0,
                    554: 
                    555: 23,
                    556: 36,
                    557: 0,
                    558: 
                    559: 36,
                    560: 0,
                    561: 
                    562: 25,
                    563: 36,
                    564: 0,
                    565: 
                    566: 36,
                    567: 0,
                    568: 
                    569: 5,
                    570: 36,
                    571: 0,
                    572: 
                    573: 6,
                    574: 36,
                    575: 0,
                    576: 
                    577: 36,
                    578: 0,
                    579: 
                    580: 36,
                    581: 0,
                    582: 
                    583: 36,
                    584: 0,
                    585: 
                    586: 36,
                    587: 0,
                    588: 
                    589: 12,
                    590: 36,
                    591: 0,
                    592: 
                    593: 28,
                    594: 36,
                    595: 0,
                    596: 
                    597: 36,
                    598: 0,
                    599: 
                    600: 36,
                    601: 0,
                    602: 
                    603: 36,
                    604: 0,
                    605: 
                    606: 36,
                    607: 0,
                    608: 
                    609: 36,
                    610: 0,
                    611: 
                    612: 36,
                    613: 0,
                    614: 
                    615: 36,
                    616: 0,
                    617: 
                    618: 36,
                    619: 0,
                    620: 
                    621: 36,
                    622: 0,
                    623: 
                    624: 36,
                    625: 0,
                    626: 
                    627: 36,
                    628: 0,
                    629: 
                    630: 36,
                    631: 0,
                    632: 
                    633: 9,
                    634: 36,
                    635: 0,
                    636: 
                    637: 36,
                    638: 0,
                    639: 
                    640: 36,
                    641: 0,
                    642: 
                    643: 36,
                    644: 0,
                    645: 
                    646: 36,
                    647: 0,
                    648: 
                    649: 18,
                    650: 36,
                    651: 0,
                    652: 
                    653: 36,
                    654: 0,
                    655: 
                    656: 36,
                    657: 0,
                    658: 
                    659: 36,
                    660: 0,
                    661: 
                    662: 22,
                    663: 36,
                    664: 0,
                    665: 
                    666: 36,
                    667: 0,
                    668: 
                    669: 36,
                    670: 0,
                    671: 
                    672: 7,
                    673: 36,
                    674: 0,
                    675: 
                    676: 36,
                    677: 0,
                    678: 
                    679: 10,
                    680: 36,
                    681: 0,
                    682: 
                    683: 13,
                    684: 36,
                    685: 0,
                    686: 
                    687: 36,
                    688: 0,
                    689: 
                    690: 17,
                    691: 36,
                    692: 0,
                    693: 
                    694: 19,
                    695: 36,
                    696: 0,
                    697: 
                    698: 20,
                    699: 36,
                    700: 0,
                    701: 
                    702: 36,
                    703: 0,
                    704: 
                    705: 36,
                    706: 0,
                    707: 
                    708: 26,
                    709: 36,
                    710: 0,
                    711: 
                    712: 8,
                    713: 36,
                    714: 0,
                    715: 
                    716: 36,
                    717: 0,
                    718: 
                    719: 21,
                    720: 36,
                    721: 0,
                    722: 
                    723: 36,
                    724: 0,
                    725: 
                    726: 16,
                    727: 36,
                    728: 0,
                    729: 
                    730: 36,
                    731: 0,
                    732: 
                    733: 36,
                    734: 0,
                    735: 
                    736: 24,
                    737: 36,
                    738: 0,
                    739: 0};
                    740: # define YYTYPE int
                    741: struct yywork { YYTYPE verify, advance; } yycrank[] ={
                    742: 0,0,   0,0,    1,3,    0,0,    
                    743: 0,0,   0,0,    0,0,    0,0,    
                    744: 0,0,   0,0,    1,4,    1,5,    
                    745: 0,0,   0,0,    27,0,   0,0,    
                    746: 0,0,   0,0,    0,0,    0,0,    
                    747: 0,0,   0,0,    0,0,    0,0,    
                    748: 0,0,   0,0,    0,0,    0,0,    
                    749: 0,0,   0,0,    0,0,    0,0,    
                    750: 0,0,   0,0,    0,0,    1,6,    
                    751: 0,0,   0,0,    28,59,  0,0,    
                    752: 0,0,   0,0,    0,0,    0,0,    
                    753: 0,0,   0,0,    1,7,    0,0,    
                    754: 0,0,   1,8,    0,0,    0,0,    
                    755: 0,0,   0,0,    0,0,    0,0,    
                    756: 0,0,   1,9,    0,0,    0,0,    
                    757: 0,0,   0,0,    1,10,   0,0,    
                    758: 0,0,   10,36,  1,11,   1,12,   
                    759: 1,13,  1,14,   1,15,   1,16,   
                    760: 1,17,  16,46,  1,18,   13,41,  
                    761: 0,0,   1,19,   12,39,  0,0,    
                    762: 1,20,  1,21,   13,42,  1,22,   
                    763: 1,23,  1,24,   1,25,   1,26,   
                    764: 12,40, 1,17,   16,37,  12,37,  
                    765: 13,37, 15,44,  14,43,  17,37,  
                    766: 21,50, 15,45,  1,17,   1,17,   
                    767: 1,17,  1,17,   1,17,   1,17,   
                    768: 2,10,  18,47,  6,27,   14,37,  
                    769: 19,48, 18,37,  2,13,   19,37,  
                    770: 2,15,  2,16,   6,27,   6,0,    
                    771: 2,18,  24,54,  20,49,  2,19,   
                    772: 22,51, 23,52,  2,20,   2,21,   
                    773: 24,55, 2,22,   2,23,   2,24,   
                    774: 2,25,  2,26,   20,37,  37,37,  
                    775: 38,63, 22,37,  23,37,  26,58,  
                    776: 23,53, 41,66,  45,70,  6,28,   
                    777: 2,17,  2,17,   2,17,   2,17,   
                    778: 2,17,  2,17,   39,64,  25,56,  
                    779: 26,37, 25,57,  6,27,   25,37,  
                    780: 40,65, 6,27,   44,69,  40,37,  
                    781: 42,67, 39,37,  43,68,  42,37,  
                    782: 43,37, 6,27,   47,37,  46,71,  
                    783: 47,72, 49,37,  52,78,  52,37,  
                    784: 44,37, 46,37,  6,27,   6,27,   
                    785: 50,74, 6,27,   7,29,   50,37,  
                    786: 6,27,  7,30,   7,30,   7,30,   
                    787: 7,30,  7,30,   7,30,   7,30,   
                    788: 7,30,  7,31,   7,31,   48,73,  
                    789: 53,79, 56,37,  56,82,  48,37,  
                    790: 51,75, 6,27,   8,30,   8,30,   
                    791: 8,30,  8,30,   8,30,   8,30,   
                    792: 8,30,  8,30,   8,31,   8,31,   
                    793: 55,81, 51,76,  55,37,  51,37,  
                    794: 58,84, 51,77,  62,88,  8,32,   
                    795: 8,33,  8,32,   8,34,   8,32,   
                    796: 8,32,  9,31,   9,31,   9,31,   
                    797: 9,31,  9,31,   9,31,   9,31,   
                    798: 9,31,  54,37,  57,83,  60,86,  
                    799: 54,80, 57,37,  64,90,  65,91,  
                    800: 63,89, 67,93,  8,35,   9,32,   
                    801: 66,92, 65,37,  69,37,  64,37,  
                    802: 71,37, 71,96,  67,37,  8,32,   
                    803: 8,33,  8,32,   8,34,   8,32,   
                    804: 8,32,  63,37,  66,37,  11,37,  
                    805: 11,37, 11,37,  11,37,  11,37,  
                    806: 11,37, 11,37,  11,37,  11,37,  
                    807: 11,37, 70,95,  60,87,  82,108, 
                    808: 70,37, 82,37,  8,35,   9,32,   
                    809: 11,37, 11,37,  11,37,  11,37,  
                    810: 11,37, 11,37,  11,37,  11,37,  
                    811: 11,37, 11,37,  11,37,  11,37,  
                    812: 11,37, 11,37,  11,37,  11,37,  
                    813: 11,37, 11,38,  11,37,  11,37,  
                    814: 11,37, 11,37,  11,37,  11,37,  
                    815: 11,37, 11,37,  75,101, 95,117, 
                    816: 76,102,        75,37,  11,37,  76,37,  
                    817: 11,37, 11,37,  11,37,  11,37,  
                    818: 11,37, 11,37,  11,37,  11,37,  
                    819: 11,37, 11,37,  11,37,  11,37,  
                    820: 11,37, 11,37,  11,37,  11,37,  
                    821: 11,37, 11,37,  11,37,  11,37,  
                    822: 11,37, 11,37,  11,37,  11,37,  
                    823: 11,37, 11,37,  29,60,  77,37,  
                    824: 98,37, 83,109, 77,103, 68,94,  
                    825: 72,97, 83,37,  29,60,  29,61,  
                    826: 31,31, 31,31,  31,31,  31,31,  
                    827: 31,31, 31,31,  31,31,  31,31,  
                    828: 68,37, 72,37,  73,98,  78,37,  
                    829: 87,0,  79,105, 78,104, 84,37,  
                    830: 84,110,        100,121,        31,32,  101,122,        
                    831: 102,123,       73,37,  79,37,  29,60,  
                    832: 32,32, 32,32,  32,32,  32,32,  
                    833: 32,32, 32,32,  32,32,  32,32,  
                    834: 32,32, 32,32,  29,62,  80,106, 
                    835: 74,99, 29,60,  103,124,        81,107, 
                    836: 74,100,        106,37, 32,32,  91,113, 
                    837: 32,32, 29,60,  89,37,  87,86,  
                    838: 80,37, 92,114, 31,32,  74,37,  
                    839: 81,37, 89,111, 29,60,  29,60,  
                    840: 91,37, 29,60,  92,37,  96,118, 
                    841: 29,60, 33,32,  33,32,  33,32,  
                    842: 33,32, 33,32,  33,32,  33,32,  
                    843: 33,32, 33,32,  33,32,  90,112, 
                    844: 96,37, 107,37, 32,32,  90,37,  
                    845: 32,32, 29,60,  93,115, 33,32,  
                    846: 109,37,        33,32,  34,32,  34,32,  
                    847: 34,32, 34,32,  34,32,  34,32,  
                    848: 34,32, 34,32,  34,32,  34,32,  
                    849: 94,116,        93,37,  97,119, 59,59,  
                    850: 94,37, 99,120, 110,128,        104,125,        
                    851: 34,32, 111,37, 34,32,  59,59,  
                    852: 59,0,  97,37,  108,127,        110,37, 
                    853: 112,37,        113,129,        99,37,  33,32,  
                    854: 104,37,        33,32,  105,126,        116,132,        
                    855: 114,130,       115,131,        105,37, 108,37, 
                    856: 114,37,        117,37, 118,37, 119,133,        
                    857: 120,134,       131,37, 113,37, 121,135,        
                    858: 59,85, 116,37, 115,37, 122,136,        
                    859: 34,32, 123,37, 34,32,  123,137,        
                    860: 119,37,        124,138,        120,37, 59,59,  
                    861: 126,140,       124,37, 59,59,  125,139,        
                    862: 121,37,        122,37, 127,141,        125,37, 
                    863: 133,146,       128,142,        59,59,  126,37, 
                    864: 128,37,        129,143,        130,144,        132,37, 
                    865: 132,145,       129,37, 136,37, 59,59,  
                    866: 59,59, 127,37, 59,59,  134,37, 
                    867: 135,148,       59,59,  134,147,        137,37, 
                    868: 137,149,       135,37, 139,151,        130,37, 
                    869: 138,37,        138,150,        140,37, 141,152,        
                    870: 142,153,       143,37, 145,37, 146,37, 
                    871: 142,37,        144,154,        59,59,  147,155,        
                    872: 141,37,        139,37, 148,37, 144,37, 
                    873: 149,37,        150,37, 151,156,        153,37, 
                    874: 152,157,       154,37, 155,158,        156,37, 
                    875: 157,159,       158,37, 159,160,        160,161,        
                    876: 161,37,        0,0,    0,0,    151,37, 
                    877: 152,37,        157,37, 0,0,    155,37, 
                    878: 0,0,   0,0,    0,0,    159,37, 
                    879: 0,0,   160,37, 0,0,    0,0,    
                    880: 0,0};
                    881: struct yysvf yysvec[] ={
                    882: 0,     0,      0,
                    883: yycrank+-1,    0,              0,      
                    884: yycrank+-43,   yysvec+1,       0,      
                    885: yycrank+0,     0,              yyvstop+1,
                    886: yycrank+0,     0,              yyvstop+3,
                    887: yycrank+0,     0,              yyvstop+6,
                    888: yycrank+-105,  0,              yyvstop+8,
                    889: yycrank+129,   0,              yyvstop+10,
                    890: yycrank+146,   0,              yyvstop+12,
                    891: yycrank+169,   yysvec+8,       yyvstop+15,
                    892: yycrank+3,     0,              yyvstop+18,
                    893: yycrank+203,   0,              yyvstop+20,
                    894: yycrank+9,     yysvec+11,      yyvstop+23,
                    895: yycrank+10,    yysvec+11,      yyvstop+26,
                    896: yycrank+25,    yysvec+11,      yyvstop+29,
                    897: yycrank+15,    yysvec+11,      yyvstop+32,
                    898: yycrank+8,     yysvec+11,      yyvstop+35,
                    899: yycrank+13,    yysvec+11,      yyvstop+38,
                    900: yycrank+27,    yysvec+11,      yyvstop+41,
                    901: yycrank+29,    yysvec+11,      yyvstop+44,
                    902: yycrank+48,    yysvec+11,      yyvstop+47,
                    903: yycrank+14,    yysvec+11,      yyvstop+50,
                    904: yycrank+51,    yysvec+11,      yyvstop+53,
                    905: yycrank+52,    yysvec+11,      yyvstop+56,
                    906: yycrank+35,    yysvec+11,      yyvstop+59,
                    907: yycrank+69,    yysvec+11,      yyvstop+62,
                    908: yycrank+66,    yysvec+11,      yyvstop+65,
                    909: yycrank+-4,    yysvec+6,       0,      
                    910: yycrank+4,     0,              yyvstop+68,
                    911: yycrank+-325,  0,              yyvstop+71,
                    912: yycrank+0,     yysvec+8,       yyvstop+73,
                    913: yycrank+288,   yysvec+8,       yyvstop+75,
                    914: yycrank+312,   yysvec+8,       0,      
                    915: yycrank+349,   yysvec+8,       yyvstop+77,
                    916: yycrank+370,   yysvec+8,       yyvstop+79,
                    917: yycrank+0,     0,              yyvstop+81,
                    918: yycrank+0,     0,              yyvstop+83,
                    919: yycrank+49,    yysvec+11,      yyvstop+85,
                    920: yycrank+50,    yysvec+11,      yyvstop+87,
                    921: yycrank+75,    yysvec+11,      yyvstop+89,
                    922: yycrank+73,    yysvec+11,      yyvstop+91,
                    923: yycrank+55,    yysvec+11,      yyvstop+93,
                    924: yycrank+77,    yysvec+11,      yyvstop+95,
                    925: yycrank+78,    yysvec+11,      yyvstop+97,
                    926: yycrank+86,    yysvec+11,      yyvstop+99,
                    927: yycrank+56,    yysvec+11,      yyvstop+101,
                    928: yycrank+87,    yysvec+11,      yyvstop+103,
                    929: yycrank+80,    yysvec+11,      yyvstop+105,
                    930: yycrank+109,   yysvec+11,      yyvstop+107,
                    931: yycrank+83,    yysvec+11,      yyvstop+109,
                    932: yycrank+93,    yysvec+11,      yyvstop+112,
                    933: yycrank+125,   yysvec+11,      yyvstop+114,
                    934: yycrank+85,    yysvec+11,      yyvstop+116,
                    935: yycrank+106,   yysvec+11,      yyvstop+118,
                    936: yycrank+143,   yysvec+11,      yyvstop+120,
                    937: yycrank+124,   yysvec+11,      yyvstop+122,
                    938: yycrank+107,   yysvec+11,      yyvstop+124,
                    939: yycrank+147,   yysvec+11,      yyvstop+126,
                    940: yycrank+126,   yysvec+11,      yyvstop+128,
                    941: yycrank+-430,  0,              0,      
                    942: yycrank+-217,  yysvec+29,      0,      
                    943: yycrank+0,     0,              yyvstop+130,
                    944: yycrank+165,   0,              0,      
                    945: yycrank+167,   yysvec+11,      yyvstop+132,
                    946: yycrank+157,   yysvec+11,      yyvstop+134,
                    947: yycrank+155,   yysvec+11,      yyvstop+136,
                    948: yycrank+168,   yysvec+11,      yyvstop+138,
                    949: yycrank+160,   yysvec+11,      yyvstop+140,
                    950: yycrank+262,   yysvec+11,      yyvstop+142,
                    951: yycrank+156,   yysvec+11,      yyvstop+144,
                    952: yycrank+182,   yysvec+11,      yyvstop+147,
                    953: yycrank+158,   yysvec+11,      yyvstop+149,
                    954: yycrank+263,   yysvec+11,      yyvstop+151,
                    955: yycrank+275,   yysvec+11,      yyvstop+153,
                    956: yycrank+305,   yysvec+11,      yyvstop+155,
                    957: yycrank+215,   yysvec+11,      yyvstop+157,
                    958: yycrank+217,   yysvec+11,      yyvstop+159,
                    959: yycrank+245,   yysvec+11,      yyvstop+161,
                    960: yycrank+265,   yysvec+11,      yyvstop+163,
                    961: yycrank+276,   yysvec+11,      yyvstop+165,
                    962: yycrank+302,   yysvec+11,      yyvstop+167,
                    963: yycrank+306,   yysvec+11,      yyvstop+169,
                    964: yycrank+183,   yysvec+11,      yyvstop+171,
                    965: yycrank+251,   yysvec+11,      yyvstop+173,
                    966: yycrank+269,   yysvec+11,      yyvstop+175,
                    967: yycrank+0,     yysvec+28,      yyvstop+177,
                    968: yycrank+0,     0,              yyvstop+179,
                    969: yycrank+-338,  yysvec+29,      0,      
                    970: yycrank+0,     0,              yyvstop+181,
                    971: yycrank+300,   yysvec+11,      yyvstop+183,
                    972: yycrank+329,   yysvec+11,      yyvstop+185,
                    973: yycrank+310,   yysvec+11,      yyvstop+187,
                    974: yycrank+312,   yysvec+11,      yyvstop+189,
                    975: yycrank+347,   yysvec+11,      yyvstop+191,
                    976: yycrank+350,   yysvec+11,      yyvstop+193,
                    977: yycrank+213,   yysvec+11,      yyvstop+195,
                    978: yycrank+326,   yysvec+11,      yyvstop+197,
                    979: yycrank+359,   yysvec+11,      yyvstop+199,
                    980: yycrank+246,   yysvec+11,      yyvstop+201,
                    981: yycrank+364,   yysvec+11,      yyvstop+204,
                    982: yycrank+271,   yysvec+11,      yyvstop+206,
                    983: yycrank+273,   yysvec+11,      yyvstop+208,
                    984: yycrank+274,   yysvec+11,      yyvstop+210,
                    985: yycrank+292,   yysvec+11,      yyvstop+212,
                    986: yycrank+366,   yysvec+11,      yyvstop+214,
                    987: yycrank+372,   yysvec+11,      yyvstop+216,
                    988: yycrank+295,   yysvec+11,      yyvstop+218,
                    989: yycrank+327,   yysvec+11,      yyvstop+221,
                    990: yycrank+373,   yysvec+11,      yyvstop+224,
                    991: yycrank+334,   yysvec+11,      yyvstop+226,
                    992: yycrank+361,   yysvec+11,      yyvstop+229,
                    993: yycrank+355,   yysvec+11,      yyvstop+231,
                    994: yycrank+362,   yysvec+11,      yyvstop+234,
                    995: yycrank+380,   yysvec+11,      yyvstop+237,
                    996: yycrank+374,   yysvec+11,      yyvstop+239,
                    997: yycrank+384,   yysvec+11,      yyvstop+241,
                    998: yycrank+383,   yysvec+11,      yyvstop+243,
                    999: yycrank+375,   yysvec+11,      yyvstop+245,
                   1000: yycrank+376,   yysvec+11,      yyvstop+248,
                   1001: yycrank+390,   yysvec+11,      yyvstop+251,
                   1002: yycrank+392,   yysvec+11,      yyvstop+253,
                   1003: yycrank+398,   yysvec+11,      yyvstop+255,
                   1004: yycrank+399,   yysvec+11,      yyvstop+257,
                   1005: yycrank+387,   yysvec+11,      yyvstop+259,
                   1006: yycrank+395,   yysvec+11,      yyvstop+261,
                   1007: yycrank+401,   yysvec+11,      yyvstop+263,
                   1008: yycrank+405,   yysvec+11,      yyvstop+265,
                   1009: yycrank+415,   yysvec+11,      yyvstop+267,
                   1010: yycrank+406,   yysvec+11,      yyvstop+269,
                   1011: yycrank+411,   yysvec+11,      yyvstop+271,
                   1012: yycrank+425,   yysvec+11,      yyvstop+273,
                   1013: yycrank+379,   yysvec+11,      yyvstop+275,
                   1014: yycrank+409,   yysvec+11,      yyvstop+278,
                   1015: yycrank+402,   yysvec+11,      yyvstop+280,
                   1016: yycrank+417,   yysvec+11,      yyvstop+282,
                   1017: yycrank+423,   yysvec+11,      yyvstop+284,
                   1018: yycrank+412,   yysvec+11,      yyvstop+286,
                   1019: yycrank+421,   yysvec+11,      yyvstop+289,
                   1020: yycrank+426,   yysvec+11,      yyvstop+291,
                   1021: yycrank+439,   yysvec+11,      yyvstop+293,
                   1022: yycrank+428,   yysvec+11,      yyvstop+295,
                   1023: yycrank+438,   yysvec+11,      yyvstop+298,
                   1024: yycrank+434,   yysvec+11,      yyvstop+300,
                   1025: yycrank+431,   yysvec+11,      yyvstop+302,
                   1026: yycrank+441,   yysvec+11,      yyvstop+305,
                   1027: yycrank+432,   yysvec+11,      yyvstop+307,
                   1028: yycrank+433,   yysvec+11,      yyvstop+310,
                   1029: yycrank+437,   yysvec+11,      yyvstop+313,
                   1030: yycrank+440,   yysvec+11,      yyvstop+315,
                   1031: yycrank+442,   yysvec+11,      yyvstop+318,
                   1032: yycrank+443,   yysvec+11,      yyvstop+321,
                   1033: yycrank+457,   yysvec+11,      yyvstop+324,
                   1034: yycrank+458,   yysvec+11,      yyvstop+326,
                   1035: yycrank+445,   yysvec+11,      yyvstop+328,
                   1036: yycrank+447,   yysvec+11,      yyvstop+331,
                   1037: yycrank+461,   yysvec+11,      yyvstop+334,
                   1038: yycrank+449,   yysvec+11,      yyvstop+336,
                   1039: yycrank+459,   yysvec+11,      yyvstop+339,
                   1040: yycrank+451,   yysvec+11,      yyvstop+341,
                   1041: yycrank+465,   yysvec+11,      yyvstop+344,
                   1042: yycrank+467,   yysvec+11,      yyvstop+346,
                   1043: yycrank+454,   yysvec+11,      yyvstop+348,
                   1044: 0,     0,      0};
                   1045: struct yywork *yytop = yycrank+549;
                   1046: struct yysvf *yybgin = yysvec+1;
                   1047: char yymatch[] ={
                   1048: 00  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1049: 01  ,011 ,012 ,01  ,01  ,01  ,01  ,01  ,
                   1050: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1051: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1052: 011 ,01  ,'"' ,01  ,01  ,01  ,01  ,01  ,
                   1053: 01  ,01  ,01  ,01  ,01  ,'-' ,01  ,01  ,
                   1054: '0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,
                   1055: '8' ,'8' ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1056: 01  ,'A' ,'B' ,'A' ,'D' ,'A' ,'A' ,'G' ,
                   1057: 'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,
                   1058: 'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,
                   1059: 'X' ,'G' ,'G' ,01  ,01  ,01  ,01  ,'G' ,
                   1060: 01  ,'A' ,'B' ,'A' ,'D' ,'A' ,'A' ,'G' ,
                   1061: 'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,
                   1062: 'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,'G' ,
                   1063: 'X' ,'G' ,'G' ,01  ,01  ,01  ,01  ,01  ,
                   1064: 0};
                   1065: char yyextra[] ={
                   1066: 0,1,0,0,0,0,0,0,
                   1067: 0,0,0,0,0,0,0,0,
                   1068: 0,0,0,0,0,0,0,0,
                   1069: 0,0,0,0,0,0,0,0,
                   1070: 0,0,0,0,0,0,0,0,
                   1071: 0};
                   1072: int yylineno =1;
                   1073: # define YYU(x) x
                   1074: # define NLSTATE yyprevious=YYNEWLINE
                   1075: char yytext[YYLMAX];
                   1076: struct yysvf *yylstate [YYLMAX], **yylsp, **yyolsp;
                   1077: char yysbuf[YYLMAX];
                   1078: char *yysptr = yysbuf;
                   1079: int *yyfnd;
                   1080: extern struct yysvf *yyestate;
                   1081: int yyprevious = YYNEWLINE;
                   1082: yylook(){
                   1083:        register struct yysvf *yystate, **lsp;
                   1084:        register struct yywork *yyt;
                   1085:        struct yysvf *yyz;
                   1086:        int yych;
                   1087:        struct yywork *yyr;
                   1088: # ifdef LEXDEBUG
                   1089:        int debug;
                   1090: # endif
                   1091:        char *yylastch;
                   1092:        /* start off machines */
                   1093: # ifdef LEXDEBUG
                   1094:        debug = 0;
                   1095: # endif
                   1096:        if (!yymorfg)
                   1097:                yylastch = yytext;
                   1098:        else {
                   1099:                yymorfg=0;
                   1100:                yylastch = yytext+yyleng;
                   1101:                }
                   1102:        for(;;){
                   1103:                lsp = yylstate;
                   1104:                yyestate = yystate = yybgin;
                   1105:                if (yyprevious==YYNEWLINE) yystate++;
                   1106:                for (;;){
                   1107: # ifdef LEXDEBUG
                   1108:                        if(debug)fprintf(yyout,"state %d\n",yystate-yysvec-1);
                   1109: # endif
                   1110:                        yyt = yystate->yystoff;
                   1111:                        if(yyt == yycrank){             /* may not be any transitions */
                   1112:                                yyz = yystate->yyother;
                   1113:                                if(yyz == 0)break;
                   1114:                                if(yyz->yystoff == yycrank)break;
                   1115:                                }
                   1116:                        *yylastch++ = yych = input();
                   1117:                tryagain:
                   1118: # ifdef LEXDEBUG
                   1119:                        if(debug){
                   1120:                                fprintf(yyout,"char ");
                   1121:                                allprint(yych);
                   1122:                                putchar('\n');
                   1123:                                }
                   1124: # endif
                   1125:                        yyr = yyt;
                   1126:                        if ( (int)yyt > (int)yycrank){
                   1127:                                yyt = yyr + yych;
                   1128:                                if (yyt <= yytop && yyt->verify+yysvec == yystate){
                   1129:                                        if(yyt->advance+yysvec == YYLERR)       /* error transitions */
                   1130:                                                {unput(*--yylastch);break;}
                   1131:                                        *lsp++ = yystate = yyt->advance+yysvec;
                   1132:                                        goto contin;
                   1133:                                        }
                   1134:                                }
                   1135: # ifdef YYOPTIM
                   1136:                        else if((int)yyt < (int)yycrank) {              /* r < yycrank */
                   1137:                                yyt = yyr = yycrank+(yycrank-yyt);
                   1138: # ifdef LEXDEBUG
                   1139:                                if(debug)fprintf(yyout,"compressed state\n");
                   1140: # endif
                   1141:                                yyt = yyt + yych;
                   1142:                                if(yyt <= yytop && yyt->verify+yysvec == yystate){
                   1143:                                        if(yyt->advance+yysvec == YYLERR)       /* error transitions */
                   1144:                                                {unput(*--yylastch);break;}
                   1145:                                        *lsp++ = yystate = yyt->advance+yysvec;
                   1146:                                        goto contin;
                   1147:                                        }
                   1148:                                yyt = yyr + YYU(yymatch[yych]);
                   1149: # ifdef LEXDEBUG
                   1150:                                if(debug){
                   1151:                                        fprintf(yyout,"try fall back character ");
                   1152:                                        allprint(YYU(yymatch[yych]));
                   1153:                                        putchar('\n');
                   1154:                                        }
                   1155: # endif
                   1156:                                if(yyt <= yytop && yyt->verify+yysvec == yystate){
                   1157:                                        if(yyt->advance+yysvec == YYLERR)       /* error transition */
                   1158:                                                {unput(*--yylastch);break;}
                   1159:                                        *lsp++ = yystate = yyt->advance+yysvec;
                   1160:                                        goto contin;
                   1161:                                        }
                   1162:                                }
                   1163:                        if ((yystate = yystate->yyother) && (yyt= yystate->yystoff) != yycrank){
                   1164: # ifdef LEXDEBUG
                   1165:                                if(debug)fprintf(yyout,"fall back to state %d\n",yystate-yysvec-1);
                   1166: # endif
                   1167:                                goto tryagain;
                   1168:                                }
                   1169: # endif
                   1170:                        else
                   1171:                                {unput(*--yylastch);break;}
                   1172:                contin:
                   1173: # ifdef LEXDEBUG
                   1174:                        if(debug){
                   1175:                                fprintf(yyout,"state %d char ",yystate-yysvec-1);
                   1176:                                allprint(yych);
                   1177:                                putchar('\n');
                   1178:                                }
                   1179: # endif
                   1180:                        ;
                   1181:                        }
                   1182: # ifdef LEXDEBUG
                   1183:                if(debug){
                   1184:                        fprintf(yyout,"stopped at %d with ",*(lsp-1)-yysvec-1);
                   1185:                        allprint(yych);
                   1186:                        putchar('\n');
                   1187:                        }
                   1188: # endif
                   1189:                while (lsp-- > yylstate){
                   1190:                        *yylastch-- = 0;
                   1191:                        if (*lsp != 0 && (yyfnd= (*lsp)->yystops) && *yyfnd > 0){
                   1192:                                yyolsp = lsp;
                   1193:                                if(yyextra[*yyfnd]){            /* must backup */
                   1194:                                        while(yyback((*lsp)->yystops,-*yyfnd) != 1 && lsp > yylstate){
                   1195:                                                lsp--;
                   1196:                                                unput(*yylastch--);
                   1197:                                                }
                   1198:                                        }
                   1199:                                yyprevious = YYU(*yylastch);
                   1200:                                yylsp = lsp;
                   1201:                                yyleng = yylastch-yytext+1;
                   1202:                                yytext[yyleng] = 0;
                   1203: # ifdef LEXDEBUG
                   1204:                                if(debug){
                   1205:                                        fprintf(yyout,"\nmatch ");
                   1206:                                        sprint(yytext);
                   1207:                                        fprintf(yyout," action %d\n",*yyfnd);
                   1208:                                        }
                   1209: # endif
                   1210:                                return(*yyfnd++);
                   1211:                                }
                   1212:                        unput(*yylastch);
                   1213:                        }
                   1214:                if (yytext[0] == 0  /* && feof(yyin) */)
                   1215:                        {
                   1216:                        yysptr=yysbuf;
                   1217:                        return(0);
                   1218:                        }
                   1219:                yyprevious = yytext[0] = input();
                   1220:                if (yyprevious>0)
                   1221:                        output(yyprevious);
                   1222:                yylastch=yytext;
                   1223: # ifdef LEXDEBUG
                   1224:                if(debug)putchar('\n');
                   1225: # endif
                   1226:                }
                   1227:        }
                   1228: yyback(p, m)
                   1229:        int *p;
                   1230: {
                   1231: if (p==0) return(0);
                   1232: while (*p)
                   1233:        {
                   1234:        if (*p++ == m)
                   1235:                return(1);
                   1236:        }
                   1237: return(0);
                   1238: }
                   1239:        /* the following are only used in the lex library */
                   1240: yyinput(){
                   1241:        return(input());
                   1242:        }
                   1243: yyoutput(c)
                   1244:   int c; {
                   1245:        output(c);
                   1246:        }
                   1247: yyunput(c)
                   1248:    int c; {
                   1249:        unput(c);
                   1250:        }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.