Annotation of coherent/b/bin/as/y_tab.c, revision 1.1

1.1     ! root        1: 
        !             2: #line 1 "asm.y"
        !             3: 
        !             4: #include <asm.h>
        !             5: /*
        !             6:  * count macro parms.
        !             7:  */
        !             8: static 
        !             9: parmCt()
        !            10: {
        !            11:        if(NULL == trueMac) {
        !            12:                yyerror(".parmct not in macro");
        !            13:                /* \fB.parmct\fR returns the number of
        !            14:                 * parameters in the current macro. */
        !            15:                return(0);
        !            16:        }
        !            17:        else
        !            18:                return(countList(trueMac->parms));
        !            19: }
        !            20: 
        !            21: /*
        !            22:  * Verify that 2 symbols have the same segment.
        !            23:  */
        !            24: static void
        !            25: ckseg(s1, s2)
        !            26: sym *s1, *s2;
        !            27: {
        !            28:        if(s1->sg != s2->sg)
        !            29:                yyerror("Arithmetic between addresses on different segments");
        !            30:                /* You may only add or subtract addresses if they
        !            31:                 * are in the same segment. */
        !            32: }
        !            33: 
        !            34: /*
        !            35:  * Create Immediate exps.
        !            36:  */
        !            37: static expr *
        !            38: setImm(val, symRef)
        !            39: long val;
        !            40: sym  *symRef;
        !            41: {
        !            42:        register expr *oper;
        !            43:        register short w;
        !            44: 
        !            45:        oper = xalloc();
        !            46:        oper->mode = T_IMM;
        !            47:        if (NULL != (oper->ref = symRef))
        !            48:                oper->ref = symRef->ref;
        !            49:        w = oper->exp = val;
        !            50:        if(w == val)
        !            51:                oper->size = 2;
        !            52:        else
        !            53:                oper->size = 4;
        !            54:        return(oper);
        !            55: }
        !            56: 
        !            57: /*
        !            58:  * Set up for most addressing modes.
        !            59:  */
        !            60: static expr *
        !            61: qbild(val, mode, r1, r2, scale, symRef)
        !            62: long val;
        !            63: int mode;
        !            64: psym *r1, *r2;
        !            65: long scale;
        !            66: sym *symRef;
        !            67: {
        !            68:        register expr *oper;
        !            69:        char i;
        !            70: 
        !            71:        if (NULL != r1 && T_R != mode) {
        !            72:                switch((int)r1->size) {
        !            73:                case 2:
        !            74:                        lflags |= A_SHORT;
        !            75:                        if (!scale)
        !            76:                                break;
        !            77:                case 1:
        !            78:                        regerror(r1);
        !            79:                        break;
        !            80:                case 4:
        !            81:                        lflags |= A_LONG;
        !            82:                        break;
        !            83:                }
        !            84: 
        !            85:                if (ORD_REG != r1->flag)        /* cant ind via ctl regs */
        !            86:                        regerror(r1);
        !            87: 
        !            88:                if (NULL != r2) {
        !            89:                        if (ORD_REG != r2->flag)
        !            90:                                regerror(r2);
        !            91:                        if (r1->size != r2->size)
        !            92:                                yyerror("Mixed length addressing registers");
        !            93:                /* Addressing registers must both be the same length. */
        !            94:                }
        !            95:        }
        !            96:        else if ((T_R == mode) && (r1->flag == ORD_REG)) {
        !            97:                switch ((int)r1->size) {
        !            98:                case 4:
        !            99:                        lflags |= O_LONG;
        !           100:                        break;
        !           101:                case 2:
        !           102:                        lflags |= O_SHORT;
        !           103:                }
        !           104:        }
        !           105: 
        !           106:        oper = xalloc();
        !           107:        oper->exp  = val;
        !           108:        oper->r1 = r1;
        !           109:        oper->r2 = r2;
        !           110:        oper->mode = mode;
        !           111: 
        !           112:        i = scale;
        !           113:        if (i != scale)
        !           114:                i = 3;  /* set a bad scale */
        !           115: 
        !           116:        switch (i) {
        !           117:        case 0:
        !           118:        case 1: /* for generated code */
        !           119:                oper->scale = 0; break;
        !           120:        case 2:
        !           121:                oper->scale = 1; break;
        !           122:        case 4:
        !           123:                oper->scale = 2; break;
        !           124:        case 8:
        !           125:                oper->scale = 3; break;
        !           126:        default:
        !           127:                yyerror("Bad scale");
        !           128:                /* Address scale must be 0, 1, 2, 4, or 8. */
        !           129:        }
        !           130: 
        !           131:        if (NULL != (oper->ref = symRef))
        !           132:                oper->ref = symRef->ref;
        !           133:        return(oper);
        !           134: }
        !           135: 
        !           136: /*
        !           137:  * Floating point register expr.
        !           138:  */
        !           139: static expr *
        !           140: fbild(regno)
        !           141: long regno;
        !           142: {
        !           143:        register expr *oper;
        !           144: 
        !           145:        if (regno < 0 || regno > 7) {
        !           146:                regno &= 7;
        !           147:                yyerror("Invalid floating point register number"); /**/
        !           148:        }
        !           149: 
        !           150:        oper = xalloc();
        !           151:        oper->exp = regno;
        !           152:        oper->mode = T_FP;
        !           153:        return (oper);
        !           154: }
        !           155:        
        !           156: /*
        !           157:  * Report register error.
        !           158:  */
        !           159: regerror(rg)
        !           160: psym *rg;
        !           161: {
        !           162:        yyerror("%s is an improper register in this context", rg->name); /**/
        !           163: }
        !           164: 
        !           165: /*
        !           166:  * Concatinate strings.
        !           167:  */
        !           168: static char *
        !           169: concat(s1, s2)
        !           170: char *s1, *s2;
        !           171: {
        !           172:        long l;
        !           173:        unsigned short u;
        !           174:        char *res;
        !           175: 
        !           176:        u = l = (long)strlen(s1) + (long)strlen(s2) + 1;
        !           177:        if(u != l) {
        !           178:                yyerror("Length %ld string range exceeded", l);
        !           179:                /* Strings may not exceed 32 kilobytes. */
        !           180:                return(galloc(1));
        !           181:        }
        !           182:        res = galloc(u);
        !           183:        sprintf(res, "%s%s", s1, s2);
        !           184:        return(res);
        !           185: }
        !           186: 
        !           187: /*
        !           188:  * Substring.
        !           189:  * Assumes that all strings are created from unsigned lengths.
        !           190:  */
        !           191: static char *
        !           192: substr(s, from, len)
        !           193: char *s;
        !           194: long from, len;
        !           195: {
        !           196:        register char *p, *res;
        !           197:        unsigned short l;
        !           198: 
        !           199:        l = strlen(s);
        !           200:        s += from;
        !           201:        from = l - from;        /* from now len to end */
        !           202: 
        !           203:        if(len > from)
        !           204:                len = from;     /* since strlen fit unsigned len must */
        !           205:        if(len < 0)
        !           206:                len = 0;
        !           207: 
        !           208:        for(p = res = galloc((unsigned)(len + 1)); len--; )
        !           209:                *p++ = *s++;
        !           210:        return(res);
        !           211: }
        !           212: 
        !           213: /*
        !           214:  * String search.
        !           215:  */
        !           216: static
        !           217: stringSearch(s1, s2)
        !           218: char *s1, *s2;
        !           219: {
        !           220:        char *p;
        !           221: 
        !           222:        if(NULL == (p = strstr(s1, s2)))
        !           223:                return(-1);
        !           224:        return(p - s1);
        !           225: }
        !           226: 
        !           227: /*
        !           228:  * Do long comparisons.
        !           229:  * < > <= >= != ==  compare operator
        !           230:  * 1 2  5  6  3  4  t
        !           231:  */
        !           232: static
        !           233: compare(t, v)
        !           234: int t;
        !           235: long v;
        !           236: {
        !           237:        return(((v < 0) ? t : (v > 0) ? (t >> 1) : (t >> 2)) & 1);
        !           238: }
        !           239: 
        !           240: /*
        !           241:  * Do double comparisons.
        !           242:  * < > <= >= != ==  compare operator
        !           243:  * 1 2  5  6  3  4  t
        !           244:  */
        !           245: static
        !           246: fcompare(t, v)
        !           247: int t;
        !           248: double v;
        !           249: {
        !           250:        return(((v < 0.0) ? t : (v > 0.0) ? (t >> 1) : (t >> 2)) & 1);
        !           251: }
        !           252: 
        !           253: static void
        !           254: unmatched(c)
        !           255: {
        !           256:        yyerror("Unmatched '%c'", c);
        !           257:        /* A delimeter, [, (, ), or ] is unmatched in this command. */
        !           258: }
        !           259: 
        !           260: 
        !           261: #include "y_tab.h"
        !           262: #define YYCLEARIN yychar = -1000
        !           263: #define YYERROK yyerrflag = 0
        !           264: extern int yychar;
        !           265: extern short yyerrflag;
        !           266: #ifndef YYMAXDEPTH
        !           267: #define YYMAXDEPTH 150
        !           268: #endif
        !           269: YYSTYPE yyval, yylval;
        !           270: #ifdef YYTNAMES
        !           271: struct yytname yytnames[50] =
        !           272: {
        !           273:        "$end", -1, 
        !           274:        "error", -2, 
        !           275:        "PC", 256, 
        !           276:        "NUMBER", 257, 
        !           277:        "FNUM", 258, 
        !           278:        "COMPARISON", 312, 
        !           279:        "OP", 260, 
        !           280:        "DATA", 261, 
        !           281:        "CMD", 262, 
        !           282:        "DCMD", 263, 
        !           283:        "ICMD", 264, 
        !           284:        "NCMD", 265, 
        !           285:        "ECMD", 266, 
        !           286:        "ECMDX", 267, 
        !           287:        "IDENTIFIER", 268, 
        !           288:        "REG", 269, 
        !           289:        "DEFINED", 320, 
        !           290:        "SIZEOF", 321, 
        !           291:        "SEGMENT", 322, 
        !           292:        "LOCATION", 323, 
        !           293:        "PLUS", 315, 
        !           294:        "MINUS", 316, 
        !           295:        "TIMES", 317, 
        !           296:        "DIVIDE", 318, 
        !           297:        "REM", 319, 
        !           298:        "LSHIFT", 313, 
        !           299:        "RSHIFT", 314, 
        !           300:        "AND", 311, 
        !           301:        "OR", 309, 
        !           302:        "XOR", 310, 
        !           303:        "COMMA", 305, 
        !           304:        "LPAREN", 328, 
        !           305:        "RPAREN", 286, 
        !           306:        "LBRACK", 329, 
        !           307:        "RBRACK", 288, 
        !           308:        "AT", 307, 
        !           309:        "D_SIGN", 290, 
        !           310:        "NOT", 324, 
        !           311:        "BANG", 326, 
        !           312:        "COLON", 306, 
        !           313:        "PARMCT", 294, 
        !           314:        "TOSTRING", 330, 
        !           315:        "TONUMBER", 331, 
        !           316:        "TOFLOAT", 332, 
        !           317:        "FSTACK", 298, 
        !           318:        "NL", 333, 
        !           319:        "TOKEN", 327, 
        !           320:        "P_SIGN", 308, 
        !           321:        "LEN", 325, 
        !           322:        NULL
        !           323: } ;
        !           324: #endif
        !           325: #define        YYACTSH         13
        !           326: #define        YYAMASK         017777
        !           327: #define        YYSHIFTACT      0
        !           328: #define        YYREDACT        1
        !           329: #define        YYACCEPTACT     2
        !           330: #define        YYERRACT        3
        !           331: #define        YYGOTO          4
        !           332: #define        YYPACTION       5
        !           333: #define        YYEOFVAL        (-1)
        !           334: #define        YYERRVAL        (-2)
        !           335: #define        YYOTHERS        (-1000)
        !           336: 
        !           337: unsigned char yypdnt[108] = {
        !           338: 0, 1, 1, 2, 2, 2, 2, 2,
        !           339: 2, 2, 2, 2, 2, 2, 2, 7,
        !           340: 7, 7, 6, 6, 6, 6, 6, 4,
        !           341: 4, 4, 5, 3, 3, 8, 8, 8,
        !           342: 8, 13, 13, 14, 14, 14, 14, 14,
        !           343: 14, 14, 14, 14, 14, 14, 14, 14,
        !           344: 14, 14, 14, 14, 14, 14, 14, 14,
        !           345: 14, 9, 9, 9, 9, 9, 11, 11,
        !           346: 11, 11, 11, 11, 11, 11, 11, 11,
        !           347: 11, 11, 11, 11, 11, 11, 11, 11,
        !           348: 11, 11, 11, 11, 11, 11, 11, 11,
        !           349: 11, 11, 11, 11, 12, 12, 12, 12,
        !           350: 12, 12, 12, 10, 10, 10, 10, 10,
        !           351: 10, 10, 10, 10 
        !           352: };
        !           353: unsigned char yypn[108] = {
        !           354: 2, 1, 2, 4, 4, 6, 6, 3,
        !           355: 3, 4, 4, 4, 4, 2, 2, 3,
        !           356: 1, 0, 1, 1, 1, 1, 3, 1,
        !           357: 3, 0, 1, 0, 1, 3, 1, 2,
        !           358: 0, 1, 3, 1, 1, 4, 3, 5,
        !           359: 6, 5, 7, 4, 6, 7, 6, 8,
        !           360: 4, 6, 7, 6, 8, 1, 1, 2,
        !           361: 2, 1, 3, 3, 3, 3, 1, 3,
        !           362: 3, 3, 3, 3, 3, 2, 2, 2,
        !           363: 2, 2, 1, 3, 3, 3, 3, 3,
        !           364: 3, 3, 3, 3, 3, 2, 2, 2,
        !           365: 4, 3, 2, 2, 1, 3, 3, 6,
        !           366: 4, 2, 2, 1, 3, 3, 3, 3,
        !           367: 3, 2, 2, 2 
        !           368: };
        !           369: unsigned char yypgo[15] = {
        !           370: 0, 0, 2, 6, 8, 14, 20, 28,
        !           371: 34, 38, 76, 114, 198, 228, 232 
        !           372: };
        !           373: unsigned int yygo[236] = {
        !           374: YYOTHERS, 0x3, 0x3, 0x8, YYOTHERS, 0x4, YYOTHERS, 0x5,
        !           375: 0xc, 0x38, 0x7d, 0xb2, YYOTHERS, 0x36, 0xf, 0x3c,
        !           376: 0x10, 0x3d, YYOTHERS, 0x37, 0xd, 0x39, 0x7b, 0xb1,
        !           377: 0x80, 0xb3, YYOTHERS, 0x2f, 0x79, 0xb0, 0x81, 0xb4,
        !           378: YYOTHERS, 0x30, 0x78, 0xaf, YYOTHERS, 0x28, 0x9, 0x29,
        !           379: 0xa, 0x31, 0xd, 0x31, 0x18, 0x42, 0x19, 0x44,
        !           380: 0x1a, 0x45, 0x1c, 0x29, 0x1d, 0x4a, 0x1f, 0x50,
        !           381: 0x3f, 0x29, 0x5e, 0x90, 0x60, 0x92, 0x68, 0x9c,
        !           382: 0x78, 0x29, 0x79, 0x31, 0x7b, 0x31, 0x80, 0x31,
        !           383: 0x81, 0x31, YYOTHERS, 0x46, 0xa, 0x32, 0xd, 0x32,
        !           384: 0x1b, 0x47, 0x1d, 0x4b, 0x23, 0x54, 0x24, 0x58,
        !           385: 0x56, 0x8c, 0x57, 0x8d, 0x62, 0x96, 0x63, 0x97,
        !           386: 0x64, 0x98, 0x65, 0x99, 0x66, 0x9a, 0x79, 0x32,
        !           387: 0x7b, 0x32, 0x80, 0x32, 0x81, 0x32, 0x8b, 0x8d,
        !           388: YYOTHERS, 0x2a, 0x9, 0x2b, 0x18, 0x43, 0x19, 0x43,
        !           389: 0x1a, 0x43, 0x1b, 0x48, 0x1c, 0x2b, 0x1d, 0x4c,
        !           390: 0x1f, 0x51, 0x20, 0x52, 0x21, 0x53, 0x23, 0x55,
        !           391: 0x25, 0x5a, 0x3f, 0x2b, 0x5c, 0x8f, 0x5e, 0x43,
        !           392: 0x5f, 0x91, 0x60, 0x93, 0x67, 0x9b, 0x68, 0x9d,
        !           393: 0x69, 0x9e, 0x6a, 0x9f, 0x6b, 0xa0, 0x6c, 0xa1,
        !           394: 0x6d, 0xa2, 0x6e, 0xa3, 0x6f, 0xa4, 0x70, 0xa5,
        !           395: 0x71, 0xa6, 0x75, 0xac, 0x76, 0xad, 0x78, 0x2b,
        !           396: 0x88, 0xb6, 0xb7, 0xc7, 0xb9, 0xc9, 0xbc, 0xcc,
        !           397: 0xbf, 0xce, 0xc4, 0xcf, 0xca, 0xd4, 0xcd, 0xd8,
        !           398: 0xd1, 0xdb, 0xd5, 0xdd, YYOTHERS, 0x33, 0xa, 0x34,
        !           399: 0xd, 0x34, 0x1d, 0x4d, 0x24, 0x59, 0x25, 0x5b,
        !           400: 0x57, 0x8e, 0x73, 0xaa, 0x74, 0xab, 0x77, 0xae,
        !           401: 0x79, 0x34, 0x7b, 0x34, 0x80, 0x34, 0x81, 0x34,
        !           402: 0xa9, 0x8e, YYOTHERS, 0x2c, 0x1c, 0x49, YYOTHERS, 0x2d,
        !           403: 0x3f, 0x83, YYOTHERS, 0x2e 
        !           404: };
        !           405: unsigned short yypa[225] = {
        !           406: 0, 22, 26, 28, 52, 54, 74, 76,
        !           407: 80, 82, 128, 162, 162, 166, 200, 204,
        !           408: 210, 214, 216, 218, 220, 224, 226, 230,
        !           409: 166, 166, 166, 166, 236, 166, 278, 166,
        !           410: 166, 166, 284, 166, 286, 166, 300, 304,
        !           411: 306, 310, 320, 332, 358, 370, 374, 376,
        !           412: 380, 384, 392, 404, 430, 442, 444, 448,
        !           413: 452, 456, 460, 462, 464, 468, 472, 474,
        !           414: 516, 518, 520, 522, 546, 548, 550, 558,
        !           415: 560, 562, 564, 574, 588, 614, 628, 634,
        !           416: 638, 646, 670, 672, 674, 676, 678, 688,
        !           417: 702, 704, 706, 708, 166, 710, 166, 166,
        !           418: 166, 712, 678, 678, 678, 678, 678, 166,
        !           419: 166, 166, 166, 166, 166, 166, 166, 166,
        !           420: 166, 166, 718, 724, 724, 166, 166, 732,
        !           421: 740, 128, 784, 166, 786, 162, 788, 790,
        !           422: 166, 128, 792, 794, 796, 798, 800, 802,
        !           423: 804, 840, 842, 678, 558, 846, 858, 866,
        !           424: 892, 898, 906, 908, 916, 922, 926, 936,
        !           425: 942, 948, 950, 952, 968, 970, 978, 986,
        !           426: 988, 990, 992, 1004, 1016, 1034, 1056, 1076,
        !           427: 1082, 732, 1086, 1092, 1096, 1124, 1150, 1156,
        !           428: 1158, 1160, 1162, 1164, 1168, 1172, 1178, 166,
        !           429: 1204, 1206, 1242, 1244, 1248, 1284, 1286, 166,
        !           430: 1290, 1292, 1294, 1296, 166, 1298, 1300, 1302,
        !           431: 1328, 1334, 166, 1360, 1366, 166, 1392, 1418,
        !           432: 1444, 166, 1446, 1448, 1450, 166, 1476, 1478,
        !           433: 1480, 1506, 1508, 1510, 1536, 1538, 1564, 1566,
        !           434: 1568 
        !           435: };
        !           436: unsigned int yyact[1570] = {
        !           437: 0x2, 0x147, 0x201b, 0x104, 0x201b, 0x105, 0x201b, 0x106,
        !           438: 0x201b, 0x107, 0x201b, 0x108, 0x201b, 0x109, 0x201b, 0x10a,
        !           439: 0x201b, 0x10b, 0x201b, 0x14d, 0x1, YYOTHERS, 0x6, 0x14d,
        !           440: 0x6000, YYOTHERS, 0x201c, YYOTHERS, 0x7, YYEOFVAL, 0x2, 0x147,
        !           441: 0x201b, 0x104, 0x201b, 0x105, 0x201b, 0x106, 0x201b, 0x107,
        !           442: 0x201b, 0x108, 0x201b, 0x109, 0x201b, 0x10a, 0x201b, 0x10b,
        !           443: 0x201b, 0x14d, 0x1, YYOTHERS, 0x2001, YYOTHERS, 0x9, 0x104,
        !           444: 0xa, 0x105, 0xb, 0x106, 0xc, 0x107, 0xd, 0x108,
        !           445: 0xe, 0x109, 0xf, 0x10a, 0x10, 0x10b, 0x11, 0x14d,
        !           446: 0x6000, YYOTHERS, 0x200e, YYOTHERS, 0x4000, YYEOFVAL, 0x6000, YYOTHERS,
        !           447: 0x2002, YYOTHERS, 0x12, 0x101, 0x13, 0x102, 0x14, 0x104,
        !           448: 0x15, 0x10c, 0x16, 0x10d, 0x17, 0x140, 0x18, 0x141,
        !           449: 0x19, 0x142, 0x1a, 0x143, 0x1b, 0x13c, 0x1c, 0x13d,
        !           450: 0x1d, 0x148, 0x1e, 0x149, 0x1f, 0x122, 0x20, 0x144,
        !           451: 0x21, 0x146, 0x22, 0x126, 0x23, 0x14a, 0x24, 0x14b,
        !           452: 0x25, 0x14c, 0x26, 0x12a, 0x27, 0x147, 0x2020, YYOTHERS,
        !           453: 0x12, 0x101, 0x13, 0x102, 0x15, 0x10c, 0x17, 0x140,
        !           454: 0x18, 0x141, 0x19, 0x142, 0x1a, 0x143, 0x1b, 0x13c,
        !           455: 0x1d, 0x148, 0x20, 0x144, 0x21, 0x146, 0x22, 0x126,
        !           456: 0x23, 0x14a, 0x24, 0x14b, 0x25, 0x14c, 0x27, 0x147,
        !           457: 0x2011, YYOTHERS, 0x35, 0x147, 0x2019, YYOTHERS, 0x12, 0x101,
        !           458: 0x13, 0x102, 0x15, 0x10c, 0x17, 0x140, 0x18, 0x141,
        !           459: 0x19, 0x142, 0x1a, 0x143, 0x1b, 0x13c, 0x1d, 0x148,
        !           460: 0x20, 0x144, 0x21, 0x146, 0x22, 0x126, 0x23, 0x14a,
        !           461: 0x24, 0x14b, 0x25, 0x14c, 0x27, 0x147, 0x6000, YYOTHERS,
        !           462: 0x3a, 0x14d, 0x6000, YYOTHERS, 0x3b, 0x14d, 0x35, 0x147,
        !           463: 0x6000, YYOTHERS, 0x35, 0x147, 0x6000, YYOTHERS, 0x200d, YYOTHERS,
        !           464: 0x203e, YYOTHERS, 0x2063, YYOTHERS, 0x3e, 0x14d, 0x6000, YYOTHERS,
        !           465: 0x2039, YYOTHERS, 0x3f, 0x132, 0x2023, YYOTHERS, 0x40, 0x101,
        !           466: 0x41, 0x10c, 0x6000, YYOTHERS, 0x12, 0x101, 0x13, 0x102,
        !           467: 0x15, 0x10c, 0x16, 0x10d, 0x17, 0x140, 0x18, 0x141,
        !           468: 0x19, 0x142, 0x1a, 0x143, 0x1b, 0x13c, 0x1d, 0x148,
        !           469: 0x1e, 0x149, 0x1f, 0x122, 0x20, 0x144, 0x21, 0x146,
        !           470: 0x22, 0x126, 0x23, 0x14a, 0x24, 0x14b, 0x25, 0x14c,
        !           471: 0x26, 0x12a, 0x27, 0x147, 0x6000, YYOTHERS, 0x4e, 0x10d,
        !           472: 0x4f, 0x131, 0x6000, YYOTHERS, 0x204a, YYOTHERS, 0x13, 0x102,
        !           473: 0x56, 0x13c, 0x57, 0x148, 0x23, 0x14a, 0x25, 0x14c,
        !           474: 0x27, 0x147, 0x6000, YYOTHERS, 0x5c, 0x149, 0x2024, YYOTHERS,
        !           475: 0x205c, YYOTHERS, 0x5d, 0x14d, 0x6000, YYOTHERS, 0x5e, 0x138,
        !           476: 0x5f, 0x13b, 0x60, 0x13c, 0x61, 0x149, 0x2035, YYOTHERS,
        !           477: 0x62, 0x138, 0x63, 0x13b, 0x64, 0x13c, 0x65, 0x13d,
        !           478: 0x66, 0x13e, 0x6000, YYOTHERS, 0x67, 0x138, 0x68, 0x13b,
        !           479: 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f,
        !           480: 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135,
        !           481: 0x71, 0x136, 0x72, 0x149, 0x2036, YYOTHERS, 0x73, 0x138,
        !           482: 0x74, 0x13b, 0x75, 0x148, 0x76, 0x149, 0x77, 0x133,
        !           483: 0x6000, YYOTHERS, 0x78, 0x131, 0x201e, YYOTHERS, 0x2021, YYOTHERS,
        !           484: 0x79, 0x131, 0x2010, YYOTHERS, 0x7a, 0x14d, 0x6000, YYOTHERS,
        !           485: 0x5e, 0x138, 0x5f, 0x13b, 0x60, 0x13c, 0x2012, YYOTHERS,
        !           486: 0x62, 0x138, 0x63, 0x13b, 0x64, 0x13c, 0x65, 0x13d,
        !           487: 0x66, 0x13e, 0x2013, YYOTHERS, 0x67, 0x138, 0x68, 0x13b,
        !           488: 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f,
        !           489: 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135,
        !           490: 0x71, 0x136, 0x7b, 0x134, 0x2014, YYOTHERS, 0x73, 0x138,
        !           491: 0x74, 0x13b, 0x75, 0x148, 0x76, 0x149, 0x77, 0x133,
        !           492: 0x2015, YYOTHERS, 0x201a, YYOTHERS, 0x7c, 0x14d, 0x6000, YYOTHERS,
        !           493: 0x7d, 0x131, 0x2017, YYOTHERS, 0x7e, 0x14d, 0x6000, YYOTHERS,
        !           494: 0x7f, 0x14d, 0x6000, YYOTHERS, 0x2008, YYOTHERS, 0x2007, YYOTHERS,
        !           495: 0x80, 0x131, 0x6000, YYOTHERS, 0x81, 0x131, 0x6000, YYOTHERS,
        !           496: 0x200c, YYOTHERS, 0x12, 0x101, 0x13, 0x102, 0x15, 0x10c,
        !           497: 0x82, 0x10d, 0x17, 0x140, 0x18, 0x141, 0x19, 0x142,
        !           498: 0x1a, 0x143, 0x1b, 0x13c, 0x1d, 0x148, 0x1e, 0x149,
        !           499: 0x1f, 0x122, 0x20, 0x144, 0x21, 0x146, 0x22, 0x126,
        !           500: 0x23, 0x14a, 0x24, 0x14b, 0x25, 0x14c, 0x26, 0x12a,
        !           501: 0x27, 0x147, 0x6000, YYOTHERS, 0x2049, YYOTHERS, 0x2048, YYOTHERS,
        !           502: 0x2045, YYOTHERS, 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c,
        !           503: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139,
        !           504: 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136,
        !           505: 0x6000, YYOTHERS, 0x2047, YYOTHERS, 0x2046, YYOTHERS, 0x5e, 0x138,
        !           506: 0x5f, 0x13b, 0x60, 0x13c, 0x6000, YYOTHERS, 0x2069, YYOTHERS,
        !           507: 0x2055, YYOTHERS, 0x201f, YYOTHERS, 0x5e, 0x138, 0x5f, 0x13b,
        !           508: 0x60, 0x13c, 0x84, 0x11e, 0x6000, YYOTHERS, 0x62, 0x138,
        !           509: 0x63, 0x13b, 0x64, 0x13c, 0x65, 0x13d, 0x66, 0x13e,
        !           510: 0x85, 0x11e, 0x6000, YYOTHERS, 0x67, 0x138, 0x68, 0x13b,
        !           511: 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f,
        !           512: 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135,
        !           513: 0x71, 0x136, 0x86, 0x11e, 0x6000, YYOTHERS, 0x73, 0x138,
        !           514: 0x74, 0x13b, 0x75, 0x148, 0x87, 0x11e, 0x76, 0x149,
        !           515: 0x77, 0x133, 0x6000, YYOTHERS, 0x88, 0x131, 0x89, 0x120,
        !           516: 0x6000, YYOTHERS, 0x8a, 0x10d, 0x6000, YYOTHERS, 0x5e, 0x138,
        !           517: 0x5f, 0x13b, 0x60, 0x13c, 0x2038, YYOTHERS, 0x67, 0x138,
        !           518: 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e,
        !           519: 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137,
        !           520: 0x70, 0x135, 0x71, 0x136, 0x2037, YYOTHERS, 0x2057, YYOTHERS,
        !           521: 0x2056, YYOTHERS, 0x2062, YYOTHERS, 0x2061, YYOTHERS, 0x13, 0x102,
        !           522: 0x56, 0x13c, 0x8b, 0x148, 0x25, 0x14c, 0x6000, YYOTHERS,
        !           523: 0x13, 0x102, 0x56, 0x13c, 0x57, 0x148, 0x23, 0x14a,
        !           524: 0x25, 0x14c, 0x27, 0x147, 0x6000, YYOTHERS, 0x205b, YYOTHERS,
        !           525: 0x205a, YYOTHERS, 0x206b, YYOTHERS, 0x206a, YYOTHERS, 0x200b, YYOTHERS,
        !           526: 0x94, 0x10d, 0x95, 0x131, 0x6000, YYOTHERS, 0xa7, 0x10d,
        !           527: 0xa8, 0x131, 0x6000, YYOTHERS, 0xa9, 0x148, 0x23, 0x14a,
        !           528: 0x27, 0x147, 0x6000, YYOTHERS, 0xa9, 0x148, 0x23, 0x14a,
        !           529: 0x27, 0x147, 0x6000, YYOTHERS, 0x12, 0x101, 0x13, 0x102,
        !           530: 0x15, 0x10c, 0x16, 0x10d, 0x17, 0x140, 0x18, 0x141,
        !           531: 0x19, 0x142, 0x1a, 0x143, 0x1b, 0x13c, 0x1c, 0x13d,
        !           532: 0x1d, 0x148, 0x1e, 0x149, 0x1f, 0x122, 0x20, 0x144,
        !           533: 0x21, 0x146, 0x22, 0x126, 0x23, 0x14a, 0x24, 0x14b,
        !           534: 0x25, 0x14c, 0x26, 0x12a, 0x27, 0x147, 0x2020, YYOTHERS,
        !           535: 0x200a, YYOTHERS, 0x2003, YYOTHERS, 0x2004, YYOTHERS, 0x2009, YYOTHERS,
        !           536: 0x2023, YYOTHERS, 0x2022, YYOTHERS, 0x203a, YYOTHERS, 0x2064, YYOTHERS,
        !           537: 0x203f, YYOTHERS, 0x205d, YYOTHERS, 0x12, 0x101, 0x13, 0x102,
        !           538: 0x15, 0x10c, 0xb5, 0x10d, 0x17, 0x140, 0x18, 0x141,
        !           539: 0x19, 0x142, 0x1a, 0x143, 0x1b, 0x13c, 0x1d, 0x148,
        !           540: 0x20, 0x144, 0x21, 0x146, 0x22, 0x126, 0x23, 0x14a,
        !           541: 0x24, 0x14b, 0x25, 0x14c, 0x27, 0x147, 0x6000, YYOTHERS,
        !           542: 0x2026, YYOTHERS, 0xb7, 0x131, 0x6000, YYOTHERS, 0x63, 0x13b,
        !           543: 0x64, 0x13c, 0x65, 0x13d, 0x66, 0x13e, 0x85, 0x11e,
        !           544: 0x6000, YYOTHERS, 0x74, 0x13b, 0x75, 0x148, 0x87, 0x11e,
        !           545: 0x6000, YYOTHERS, 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c,
        !           546: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139,
        !           547: 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136,
        !           548: 0xb8, 0x120, 0x6000, YYOTHERS, 0x5f, 0x13b, 0x60, 0x13c,
        !           549: 0x2041, YYOTHERS, 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f,
        !           550: 0x203b, YYOTHERS, 0x2040, YYOTHERS, 0x6a, 0x13d, 0x6b, 0x13e,
        !           551: 0x6c, 0x13f, 0x203c, YYOTHERS, 0xb9, 0x131, 0xba, 0x120,
        !           552: 0x6000, YYOTHERS, 0xbb, 0x10d, 0x6000, YYOTHERS, 0x63, 0x13b,
        !           553: 0x64, 0x13c, 0x65, 0x13d, 0x66, 0x13e, 0x2044, YYOTHERS,
        !           554: 0x65, 0x13d, 0x66, 0x13e, 0x2065, YYOTHERS, 0x65, 0x13d,
        !           555: 0x66, 0x13e, 0x2066, YYOTHERS, 0x2067, YYOTHERS, 0x2068, YYOTHERS,
        !           556: 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e,
        !           557: 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a, 0x2042, YYOTHERS,
        !           558: 0x203d, YYOTHERS, 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f,
        !           559: 0x204b, YYOTHERS, 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f,
        !           560: 0x204c, YYOTHERS, 0x204d, YYOTHERS, 0x204e, YYOTHERS, 0x204f, YYOTHERS,
        !           561: 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e,
        !           562: 0x6c, 0x13f, 0x2050, YYOTHERS, 0x68, 0x13b, 0x69, 0x13c,
        !           563: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x2051, YYOTHERS,
        !           564: 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d,
        !           565: 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a,
        !           566: 0x2052, YYOTHERS, 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c,
        !           567: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139,
        !           568: 0x6e, 0x13a, 0x6f, 0x137, 0x71, 0x136, 0x2053, YYOTHERS,
        !           569: 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d,
        !           570: 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a,
        !           571: 0x6f, 0x137, 0x2054, YYOTHERS, 0xbc, 0x131, 0xbd, 0x120,
        !           572: 0x6000, YYOTHERS, 0xbe, 0x10d, 0x6000, YYOTHERS, 0x74, 0x13b,
        !           573: 0x75, 0x148, 0x2043, YYOTHERS, 0x75, 0x148, 0x205e, YYOTHERS,
        !           574: 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d,
        !           575: 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a,
        !           576: 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136, 0xbf, 0x131,
        !           577: 0xc0, 0x11e, 0x6000, YYOTHERS, 0x67, 0x138, 0x68, 0x13b,
        !           578: 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f,
        !           579: 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135,
        !           580: 0x71, 0x136, 0xc1, 0x120, 0x6000, YYOTHERS, 0x74, 0x13b,
        !           581: 0x75, 0x148, 0x2059, YYOTHERS, 0x201d, YYOTHERS, 0x200f, YYOTHERS,
        !           582: 0x2016, YYOTHERS, 0x2018, YYOTHERS, 0xc2, 0x14d, 0x6000, YYOTHERS,
        !           583: 0xc3, 0x14d, 0x6000, YYOTHERS, 0xc4, 0x131, 0xc5, 0x120,
        !           584: 0x6000, YYOTHERS, 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c,
        !           585: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139,
        !           586: 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136,
        !           587: 0xc6, 0x120, 0x6000, YYOTHERS, 0x2025, YYOTHERS, 0x12, 0x101,
        !           588: 0x13, 0x102, 0x15, 0x10c, 0xc8, 0x10d, 0x17, 0x140,
        !           589: 0x18, 0x141, 0x19, 0x142, 0x1a, 0x143, 0x1b, 0x13c,
        !           590: 0x1d, 0x148, 0x20, 0x144, 0x21, 0x146, 0x22, 0x126,
        !           591: 0x23, 0x14a, 0x24, 0x14b, 0x25, 0x14c, 0x27, 0x147,
        !           592: 0x6000, YYOTHERS, 0x2030, YYOTHERS, 0xca, 0x131, 0x6000, YYOTHERS,
        !           593: 0x12, 0x101, 0x13, 0x102, 0x15, 0x10c, 0xcb, 0x10d,
        !           594: 0x17, 0x140, 0x18, 0x141, 0x19, 0x142, 0x1a, 0x143,
        !           595: 0x1b, 0x13c, 0x1d, 0x148, 0x20, 0x144, 0x21, 0x146,
        !           596: 0x22, 0x126, 0x23, 0x14a, 0x24, 0x14b, 0x25, 0x14c,
        !           597: 0x27, 0x147, 0x6000, YYOTHERS, 0x202b, YYOTHERS, 0xcd, 0x131,
        !           598: 0x6000, YYOTHERS, 0x2060, YYOTHERS, 0x2058, YYOTHERS, 0x2005, YYOTHERS,
        !           599: 0x2006, YYOTHERS, 0x2029, YYOTHERS, 0x2027, YYOTHERS, 0x67, 0x138,
        !           600: 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e,
        !           601: 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137,
        !           602: 0x70, 0x135, 0x71, 0x136, 0xd0, 0x120, 0x6000, YYOTHERS,
        !           603: 0xd1, 0x131, 0xd2, 0x120, 0x6000, YYOTHERS, 0x67, 0x138,
        !           604: 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e,
        !           605: 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137,
        !           606: 0x70, 0x135, 0x71, 0x136, 0xd3, 0x120, 0x6000, YYOTHERS,
        !           607: 0xd5, 0x131, 0xd6, 0x120, 0x6000, YYOTHERS, 0x67, 0x138,
        !           608: 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e,
        !           609: 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137,
        !           610: 0x70, 0x135, 0x71, 0x136, 0xd7, 0x120, 0x6000, YYOTHERS,
        !           611: 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d,
        !           612: 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a,
        !           613: 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136, 0xd9, 0x11e,
        !           614: 0x6000, YYOTHERS, 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c,
        !           615: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139,
        !           616: 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136,
        !           617: 0xda, 0x120, 0x6000, YYOTHERS, 0x2028, YYOTHERS, 0x2033, YYOTHERS,
        !           618: 0x2031, YYOTHERS, 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c,
        !           619: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139,
        !           620: 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136,
        !           621: 0xdc, 0x120, 0x6000, YYOTHERS, 0x202e, YYOTHERS, 0x202c, YYOTHERS,
        !           622: 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d,
        !           623: 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a,
        !           624: 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136, 0xde, 0x120,
        !           625: 0x6000, YYOTHERS, 0x205f, YYOTHERS, 0x202a, YYOTHERS, 0x67, 0x138,
        !           626: 0x68, 0x13b, 0x69, 0x13c, 0x6a, 0x13d, 0x6b, 0x13e,
        !           627: 0x6c, 0x13f, 0x6d, 0x139, 0x6e, 0x13a, 0x6f, 0x137,
        !           628: 0x70, 0x135, 0x71, 0x136, 0xdf, 0x120, 0x6000, YYOTHERS,
        !           629: 0x2032, YYOTHERS, 0x67, 0x138, 0x68, 0x13b, 0x69, 0x13c,
        !           630: 0x6a, 0x13d, 0x6b, 0x13e, 0x6c, 0x13f, 0x6d, 0x139,
        !           631: 0x6e, 0x13a, 0x6f, 0x137, 0x70, 0x135, 0x71, 0x136,
        !           632: 0xe0, 0x120, 0x6000, YYOTHERS, 0x202d, YYOTHERS, 0x2034, YYOTHERS,
        !           633: 0x202f, YYOTHERS 
        !           634: };
        !           635: 
        !           636: 
        !           637: #define YYNOCHAR (-1000)
        !           638: #define        yyerrok yyerrflag=0
        !           639: #define        yyclearin       yylval=YYNOCHAR
        !           640: int yystack[YYMAXDEPTH];
        !           641: YYSTYPE yyvstack[YYMAXDEPTH], *yyv;
        !           642: int yychar;
        !           643: 
        !           644: #ifdef YYDEBUG
        !           645: int yydebug = 1;       /* No sir, not in the BSS */
        !           646: #include <stdio.h>
        !           647: #endif
        !           648: 
        !           649: short yyerrflag;
        !           650: int *yys;
        !           651: 
        !           652: yyparse()
        !           653: {
        !           654:        register YYSTYPE *yypvt;
        !           655:        int act;
        !           656:        register unsigned *ip, yystate;
        !           657:        int pno;
        !           658:        yystate = 0;
        !           659:        yychar = YYNOCHAR;
        !           660:        yyv = &yyvstack[-1];
        !           661:        yys = &yystack[-1];
        !           662: 
        !           663: stack:
        !           664:        if( ++yys >= &yystack[YYMAXDEPTH] ) {
        !           665:                write(2, "Stack overflow\n", 15);
        !           666:                exit(1);
        !           667:        }
        !           668:        *yys = yystate;
        !           669:        *++yyv = yyval;
        !           670: #ifdef YYDEBUG
        !           671:        if( yydebug )
        !           672:                fprintf(stdout, "Stack state %d, char %d\n", yystate, yychar);
        !           673: #endif
        !           674: 
        !           675: read:
        !           676:        ip = &yyact[yypa[yystate]];
        !           677:        if( ip[1] != YYNOCHAR ) {
        !           678:                if( yychar == YYNOCHAR ) {
        !           679:                        yychar = yylex();
        !           680: #ifdef YYDEBUG
        !           681:                        if( yydebug )
        !           682:                                fprintf(stdout, "lex read char %d, val %d\n", yychar, yylval);
        !           683: #endif
        !           684:                }
        !           685:                while (ip[1]!=YYNOCHAR) {
        !           686:                        if (ip[1]==yychar)
        !           687:                                break;
        !           688:                        ip += 2;
        !           689:                }
        !           690:        }
        !           691:        act = ip[0];
        !           692:        switch( act>>YYACTSH ) {
        !           693:        case YYSHIFTACT:
        !           694:                if( ip[1]==YYNOCHAR )
        !           695:                        goto YYerract;
        !           696:                if( yychar != -1 )
        !           697:                        yychar = YYNOCHAR; /* dont throw away EOF */
        !           698:                yystate = act&YYAMASK;
        !           699:                yyval = yylval;
        !           700: #ifdef YYDEBUG
        !           701:                if( yydebug )
        !           702:                        fprintf(stdout, "shift %d\n", yystate);
        !           703: #endif
        !           704:                if( yyerrflag )
        !           705:                        --yyerrflag;
        !           706:                goto stack;
        !           707: 
        !           708:        case YYACCEPTACT:
        !           709: #ifdef YYDEBUG
        !           710:                if( yydebug )
        !           711:                        fprintf(stdout, "accept\n");
        !           712: #endif
        !           713:                return(0);
        !           714: 
        !           715:        case YYERRACT:
        !           716:        YYerract:
        !           717:                switch (yyerrflag) {
        !           718:                case 0:
        !           719:                        yyerror("Syntax error");
        !           720: 
        !           721:                case 1:
        !           722:                case 2:
        !           723: 
        !           724:                        yyerrflag = 3;
        !           725:                        while( yys >= & yystack[0] ) {
        !           726:                                ip = &yyact[yypa[*yys]];
        !           727:                                while( ip[1]!=YYNOCHAR )
        !           728:                                        ip += 2;
        !           729:                                if( (*ip&~YYAMASK) == (YYSHIFTACT<<YYACTSH) ) {
        !           730:                                        yystate = *ip&YYAMASK;
        !           731:                                        goto stack;
        !           732:                                }
        !           733: #ifdef YYDEBUG
        !           734:                                if( yydebug )
        !           735:                                        fprintf(stderr, "error recovery leaves state %d, uncovers %d\n", *yys, yys[-1]);
        !           736: #endif
        !           737:                                yys--;
        !           738:                                yyv--;
        !           739:                        }
        !           740: #ifdef YYDEBUG
        !           741:                        if( yydebug )
        !           742:                                fprintf(stderr, "no shift on error; abort\n");
        !           743: #endif
        !           744:                        return(1);
        !           745: 
        !           746:                case 3:
        !           747: #ifdef YYDEBUG
        !           748:                        if( yydebug )
        !           749:                                fprintf(stderr, "Error recovery clobbers char %o\n", yychar);
        !           750: #endif
        !           751:                        if( yychar==YYEOFVAL )
        !           752:                                return(1);
        !           753:                        yychar = YYNOCHAR;
        !           754:                        goto read;
        !           755:                }
        !           756: 
        !           757:        case YYREDACT:
        !           758:                pno = act&YYAMASK;
        !           759: #ifdef YYDEBUG
        !           760:                if( yydebug )
        !           761:                        fprintf(stdout, "reduce %d\n", pno);
        !           762: #endif
        !           763:                yypvt = yyv;
        !           764:                yyv -= yypn[pno];
        !           765:                yys -= yypn[pno];
        !           766:                yyval = yyv[1];
        !           767:                switch(pno) {
        !           768: 
        !           769: case 3: {
        !           770: 
        !           771: #line 352 "asm.y"
        !           772:  /* assembler command with parms */
        !           773:                docmd(yypvt[-3].p, yypvt[-2].o, yypvt[-1].p); }break;
        !           774: 
        !           775: case 4: {
        !           776: 
        !           777: #line 354 "asm.y"
        !           778:  /* a command with string parms */
        !           779:                docmd(yypvt[-3].p, yypvt[-2].o, yypvt[-1].p); }break;
        !           780: 
        !           781: case 5: {
        !           782: 
        !           783: #line 356 "asm.y"
        !           784:  /* command with a name & an expr */
        !           785:                ecmd(yypvt[-5].p, yypvt[-4].o, yypvt[-3].p, yypvt[-1].d); }break;
        !           786: 
        !           787: case 6: {
        !           788: 
        !           789: #line 359 "asm.y"
        !           790: 
        !           791:                ecmd(yypvt[-5].p, yypvt[-4].o, yypvt[-3].p, yypvt[-1].d); }break;
        !           792: 
        !           793: case 7: {
        !           794: 
        !           795: #line 361 "asm.y"
        !           796: 
        !           797:                ecmd(yypvt[-2].p, yypvt[-1].o, NULL, NULL); }break;
        !           798: 
        !           799: case 8: {
        !           800: 
        !           801: #line 363 "asm.y"
        !           802:        /* assembler command takes no parms */
        !           803:                docmd(yypvt[-2].p, yypvt[-1].o, (parm *)NULL); }break;
        !           804: 
        !           805: case 9: {
        !           806: 
        !           807: #line 365 "asm.y"
        !           808:  /* assembler command with data parm */
        !           809:                ncmd(yypvt[-3].p, yypvt[-2].o, yypvt[-1].d); }break;
        !           810: 
        !           811: case 10: {
        !           812: 
        !           813: #line 367 "asm.y"
        !           814:  /* data list */
        !           815:                dcmd(yypvt[-3].p, yypvt[-2].o, yypvt[-1].d); }break;
        !           816: 
        !           817: case 11: {
        !           818: 
        !           819: #line 369 "asm.y"
        !           820:        /* opcode operands */
        !           821:                buildind(yypvt[-3].p, yypvt[-2].o, yypvt[-1].e); }break;
        !           822: 
        !           823: case 12: {
        !           824: 
        !           825: #line 371 "asm.y"
        !           826:        /* built by rep instr */
        !           827:                buildind(yypvt[-3].p, yypvt[-2].o, NULL);
        !           828:                buildind(NULL, yypvt[-1].o, NULL ); }break;
        !           829: 
        !           830: case 13: {
        !           831: 
        !           832: #line 374 "asm.y"
        !           833:        /* label alone on line */
        !           834:                buildlab(yypvt[-1].p); }break;
        !           835: 
        !           836: case 14: {
        !           837: 
        !           838: #line 376 "asm.y"
        !           839:        /* syntax error */
        !           840:                if (bcnt > 0)
        !           841:                        unmatched('[');
        !           842:                if (bcnt < 0)
        !           843:                        unmatched(']');
        !           844:                if (pcnt > 0)
        !           845:                        unmatched('(');
        !           846:                if (pcnt < 0)
        !           847:                        unmatched(')');
        !           848:                yyerrok; }break;
        !           849: 
        !           850: case 15: {
        !           851: 
        !           852: #line 387 "asm.y"
        !           853: 
        !           854:                yyval.d = yypvt[-2].d;
        !           855:                yyval.d->next = yypvt[0].d; }break;
        !           856: 
        !           857: case 16: {
        !           858: 
        !           859: #line 390 "asm.y"
        !           860: 
        !           861:                yyval.d = yypvt[0].d; }break;
        !           862: 
        !           863: case 17: {
        !           864: 
        !           865: #line 392 "asm.y"
        !           866: 
        !           867:                yyval.d = NULL; }break;
        !           868: 
        !           869: case 18: {
        !           870: 
        !           871: #line 395 "asm.y"
        !           872: 
        !           873:                yyval.d = gitem('y');
        !           874:                yyval.d->d.y  = yypvt[0].s; }break;
        !           875: 
        !           876: case 19: {
        !           877: 
        !           878: #line 398 "asm.y"
        !           879: 
        !           880:                yyval.d = gitem('d');
        !           881:                yyval.d->d.d = yypvt[0].dbl; }break;
        !           882: 
        !           883: case 20: {
        !           884: 
        !           885: #line 401 "asm.y"
        !           886: 
        !           887:                yyval.d = gitem('l');
        !           888:                yyval.d->d.l = yypvt[0].val; }break;
        !           889: 
        !           890: case 21: {
        !           891: 
        !           892: #line 404 "asm.y"
        !           893: 
        !           894:                yyval.d = gitem('s');
        !           895:                yyval.d->d.s = yypvt[0].t; }break;
        !           896: 
        !           897: case 22: {
        !           898: 
        !           899: #line 407 "asm.y"
        !           900: 
        !           901:                yyval.d = yypvt[0].d;
        !           902:                yyval.d->count = yypvt[-2].val; }break;
        !           903: 
        !           904: case 23: {
        !           905: 
        !           906: #line 411 "asm.y"
        !           907:                /* start parm list */
        !           908:                yyval.p = yypvt[0].p; }break;
        !           909: 
        !           910: case 24: {
        !           911: 
        !           912: #line 413 "asm.y"
        !           913:        /* chain parm list */
        !           914:                yyval.p = yypvt[-2].p;
        !           915:                yyval.p->next = yypvt[0].p; }break;
        !           916: 
        !           917: case 25: {
        !           918: 
        !           919: #line 416 "asm.y"
        !           920: 
        !           921:                yyval.p = NULL; }break;
        !           922: 
        !           923: case 26: {
        !           924: 
        !           925: #line 419 "asm.y"
        !           926:                /* start a parm */
        !           927:                yyval.p = (parm *)gcpy(yypvt[0].t, offset(parm, str)); }break;
        !           928: 
        !           929: case 27: {
        !           930: 
        !           931: #line 422 "asm.y"
        !           932:  
        !           933:                yyval.p = NULL; }break;
        !           934: 
        !           935: case 28: {
        !           936: 
        !           937: #line 424 "asm.y"
        !           938: 
        !           939:                yyval.p = (parm *)gcpy(yypvt[0].t, offset(parm, str)); }break;
        !           940: 
        !           941: case 29: {
        !           942: 
        !           943: #line 428 "asm.y"
        !           944: 
        !           945:                yyval.e = yypvt[-2].e;
        !           946:                yyval.e->next = yypvt[0].e; }break;
        !           947: 
        !           948: case 30: {
        !           949: 
        !           950: #line 431 "asm.y"
        !           951: 
        !           952:                yyval.e = yypvt[0].e; }break;
        !           953: 
        !           954: case 31: {
        !           955: 
        !           956: #line 433 "asm.y"
        !           957: 
        !           958:                lflags |= A_INDIR;
        !           959:                yyval.e = yypvt[0].e; }break;
        !           960: 
        !           961: case 32: {
        !           962: 
        !           963: #line 436 "asm.y"
        !           964: 
        !           965:                yyval.e = NULL; }break;
        !           966: 
        !           967: case 33: {
        !           968: 
        !           969: #line 439 "asm.y"
        !           970: 
        !           971:        yyval.e->sg = -1;
        !           972:        yyval.e = yypvt[0].e; }break;
        !           973: 
        !           974: case 34: {
        !           975: 
        !           976: #line 442 "asm.y"
        !           977: 
        !           978:                yyval.e = yypvt[0].e;
        !           979:                if (yypvt[-2].s->flag != SEG_REG)
        !           980:                        regerror(yypvt[-2].s);
        !           981:                yyval.e->sg = yypvt[-2].s->loc; }break;
        !           982: 
        !           983: case 35: {
        !           984: 
        !           985: #line 449 "asm.y"
        !           986: 
        !           987:                yyval.e = qbild(0L, T_R, yypvt[0].s, NULL, 0L, NULL); }break;
        !           988: 
        !           989: case 36: {
        !           990: 
        !           991: #line 452 "asm.y"
        !           992: 
        !           993:                yyval.e = fbild(0L);    }break;
        !           994: 
        !           995: case 37: {
        !           996: 
        !           997: #line 455 "asm.y"
        !           998: 
        !           999:                yyval.e = fbild(yypvt[-1].val); }break;
        !          1000: 
        !          1001: case 38: {
        !          1002: 
        !          1003: #line 458 "asm.y"
        !          1004: 
        !          1005:                yyval.e = qbild(0L, T_RI, yypvt[-1].s, NULL, 0L, NULL); }break;
        !          1006: 
        !          1007: case 39: {
        !          1008: 
        !          1009: #line 461 "asm.y"
        !          1010: 
        !          1011:                yyval.e = qbild(0L, T_RIS, yypvt[-3].s, NULL, yypvt[-1].val, NULL); }break;
        !          1012: 
        !          1013: case 40: {
        !          1014: 
        !          1015: #line 464 "asm.y"
        !          1016: 
        !          1017:                yyval.e = qbild(0L, T_RIS, yypvt[-3].s, NULL, yypvt[-1].val, NULL); }break;
        !          1018: 
        !          1019: case 41: {
        !          1020: 
        !          1021: #line 467 "asm.y"
        !          1022: 
        !          1023:                yyval.e = qbild(0L, T_RIX, yypvt[-3].s, yypvt[-1].s, 0L, NULL); }break;
        !          1024: 
        !          1025: case 42: {
        !          1026: 
        !          1027: #line 470 "asm.y"
        !          1028: 
        !          1029:                yyval.e = qbild(0L, T_RIXS, yypvt[-5].s, yypvt[-3].s, yypvt[-1].val, NULL); }break;
        !          1030: 
        !          1031: case 43: {
        !          1032: 
        !          1033: #line 473 "asm.y"
        !          1034: 
        !          1035:                yyval.e = qbild(yypvt[-3].val, T_RID, yypvt[-1].s, NULL, 0L, NULL); }break;
        !          1036: 
        !          1037: case 44: {
        !          1038: 
        !          1039: #line 476 "asm.y"
        !          1040: 
        !          1041:                yyval.e = qbild(yypvt[-5].val, T_RIDS, yypvt[-3].s, NULL, yypvt[-1].val, NULL); }break;
        !          1042: 
        !          1043: case 45: {
        !          1044: 
        !          1045: #line 479 "asm.y"
        !          1046: 
        !          1047:                yyval.e = qbild(yypvt[-6].val, T_RIDS, yypvt[-3].s, NULL, yypvt[-1].val, NULL); }break;
        !          1048: 
        !          1049: case 46: {
        !          1050: 
        !          1051: #line 482 "asm.y"
        !          1052: 
        !          1053:                yyval.e = qbild(yypvt[-5].val, T_RIXD, yypvt[-3].s, yypvt[-1].s, 0L, NULL); }break;
        !          1054: 
        !          1055: case 47: {
        !          1056: 
        !          1057: #line 485 "asm.y"
        !          1058: 
        !          1059:                yyval.e = qbild(yypvt[-7].val, T_RIXDS, yypvt[-5].s, yypvt[-3].s, yypvt[-1].val, NULL); }break;
        !          1060: 
        !          1061: case 48: {
        !          1062: 
        !          1063: #line 488 "asm.y"
        !          1064: 
        !          1065:                yyval.e = qbild(yypvt[-3].s->loc, T_RID, yypvt[-1].s, NULL, 0L, yypvt[-3].s); }break;
        !          1066: 
        !          1067: case 49: {
        !          1068: 
        !          1069: #line 491 "asm.y"
        !          1070: 
        !          1071:                yyval.e = qbild(yypvt[-5].s->loc, T_RIDS, yypvt[-3].s, NULL, yypvt[-1].val, yypvt[-5].s); }break;
        !          1072: 
        !          1073: case 50: {
        !          1074: 
        !          1075: #line 494 "asm.y"
        !          1076: 
        !          1077:                yyval.e = qbild(yypvt[-6].s->loc, T_RIDS, yypvt[-3].s, NULL, yypvt[-1].val, yypvt[-6].s); }break;
        !          1078: 
        !          1079: case 51: {
        !          1080: 
        !          1081: #line 497 "asm.y"
        !          1082: 
        !          1083:                yyval.e = qbild(yypvt[-5].s->loc, T_RIXD, yypvt[-3].s, yypvt[-1].s, 0L, yypvt[-5].s); }break;
        !          1084: 
        !          1085: case 52: {
        !          1086: 
        !          1087: #line 500 "asm.y"
        !          1088: 
        !          1089:                yyval.e = qbild(yypvt[-7].s->loc, T_RIXDS, yypvt[-5].s, yypvt[-3].s, yypvt[-1].val, yypvt[-7].s); }break;
        !          1090: 
        !          1091: case 53: {
        !          1092: 
        !          1093: #line 503 "asm.y"
        !          1094: 
        !          1095:                yyval.e = qbild(yypvt[0].s->loc, T_D, NULL, NULL, 0L, yypvt[0].s); }break;
        !          1096: 
        !          1097: case 54: {
        !          1098: 
        !          1099: #line 506 "asm.y"
        !          1100: 
        !          1101:                yyval.e = qbild(yypvt[0].val, T_D, NULL, NULL, 0L, NULL); }break;
        !          1102: 
        !          1103: case 55: {
        !          1104: 
        !          1105: #line 509 "asm.y"
        !          1106: 
        !          1107:                yyval.e = setImm(yypvt[0].val, (sym *)NULL); }break;
        !          1108: 
        !          1109: case 56: {
        !          1110: 
        !          1111: #line 512 "asm.y"
        !          1112: 
        !          1113:                yyval.e = setImm(yypvt[0].s->loc, yypvt[0].s); }break;
        !          1114: 
        !          1115: case 57: {
        !          1116: 
        !          1117: #line 518 "asm.y"
        !          1118:  yyval.s = yypvt[0].s; }break;
        !          1119: 
        !          1120: case 58: {
        !          1121: 
        !          1122: #line 519 "asm.y"
        !          1123:  yyval.s=yypvt[-1].s; }break;
        !          1124: 
        !          1125: case 59: {
        !          1126: 
        !          1127: #line 520 "asm.y"
        !          1128:  yyval.s = copySym(yypvt[-2].s); yyval.s->loc += yypvt[0].val; }break;
        !          1129: 
        !          1130: case 60: {
        !          1131: 
        !          1132: #line 521 "asm.y"
        !          1133:  yyval.s = copySym(yypvt[-2].s); yyval.s->loc -= yypvt[0].val; }break;
        !          1134: 
        !          1135: case 61: {
        !          1136: 
        !          1137: #line 522 "asm.y"
        !          1138:  yyval.s = copySym(yypvt[0].s); yyval.s->loc += yypvt[-2].val; }break;
        !          1139: 
        !          1140: case 62: {
        !          1141: 
        !          1142: #line 525 "asm.y"
        !          1143: 
        !          1144:                yyval.val = yypvt[0].val; }break;
        !          1145: 
        !          1146: case 63: {
        !          1147: 
        !          1148: #line 527 "asm.y"
        !          1149: 
        !          1150:                yyval.val = yypvt[-1].val; }break;
        !          1151: 
        !          1152: case 64: {
        !          1153: 
        !          1154: #line 529 "asm.y"
        !          1155: 
        !          1156:                ckseg(yypvt[-2].s, yypvt[0].s); yyval.val = yypvt[-2].s->loc - yypvt[0].s->loc; }break;
        !          1157: 
        !          1158: case 65: {
        !          1159: 
        !          1160: #line 531 "asm.y"
        !          1161: 
        !          1162:                ckseg(yypvt[-2].s, yypvt[0].s); yyval.val = compare((int)yypvt[-1].val, yypvt[-2].s->loc - yypvt[0].s->loc); }break;
        !          1163: 
        !          1164: case 66: {
        !          1165: 
        !          1166: #line 533 "asm.y"
        !          1167: 
        !          1168:                yyval.val = compare((int)yypvt[-1].val, yypvt[-2].val - yypvt[0].val); }break;
        !          1169: 
        !          1170: case 67: {
        !          1171: 
        !          1172: #line 535 "asm.y"
        !          1173: 
        !          1174:                yyval.val = compare((int)yypvt[-1].val, (long)strcmp(yypvt[-2].t, yypvt[0].t)); }break;
        !          1175: 
        !          1176: case 68: {
        !          1177: 
        !          1178: #line 537 "asm.y"
        !          1179: 
        !          1180:                yyval.val = fcompare((int)yypvt[-1].val, yypvt[-2].dbl - yypvt[0].dbl); }break;
        !          1181: 
        !          1182: case 69: {
        !          1183: 
        !          1184: #line 540 "asm.y"
        !          1185: 
        !          1186:                yyval.val = yypvt[0].s->size; }break;
        !          1187: 
        !          1188: case 70: {
        !          1189: 
        !          1190: #line 543 "asm.y"
        !          1191: 
        !          1192:                yyval.val = yypvt[0].s->loc; }break;
        !          1193: 
        !          1194: case 71: {
        !          1195: 
        !          1196: #line 546 "asm.y"
        !          1197: 
        !          1198:                yyval.val = yypvt[0].s->sg + 1; }break;
        !          1199: 
        !          1200: case 72: {
        !          1201: 
        !          1202: #line 549 "asm.y"
        !          1203: 
        !          1204:                yyval.val = yypvt[0].s->statement && (statement >= yypvt[0].s->statement); }break;
        !          1205: 
        !          1206: case 73: {
        !          1207: 
        !          1208: #line 551 "asm.y"
        !          1209: 
        !          1210:                yyval.val = 1; }break;
        !          1211: 
        !          1212: case 74: {
        !          1213: 
        !          1214: #line 553 "asm.y"
        !          1215: 
        !          1216:                yyval.val = parmCt(); }break;
        !          1217: 
        !          1218: case 75: {
        !          1219: 
        !          1220: #line 556 "asm.y"
        !          1221: 
        !          1222:                yyval.val = yypvt[-2].val + yypvt[0].val; }break;
        !          1223: 
        !          1224: case 76: {
        !          1225: 
        !          1226: #line 558 "asm.y"
        !          1227: 
        !          1228:                yyval.val = yypvt[-2].val - yypvt[0].val; }break;
        !          1229: 
        !          1230: case 77: {
        !          1231: 
        !          1232: #line 560 "asm.y"
        !          1233: 
        !          1234:                yyval.val = yypvt[-2].val * yypvt[0].val; }break;
        !          1235: 
        !          1236: case 78: {
        !          1237: 
        !          1238: #line 562 "asm.y"
        !          1239: 
        !          1240:                yyval.val = yypvt[-2].val / yypvt[0].val; }break;
        !          1241: 
        !          1242: case 79: {
        !          1243: 
        !          1244: #line 564 "asm.y"
        !          1245: 
        !          1246:                yyval.val = yypvt[-2].val % yypvt[0].val; }break;
        !          1247: 
        !          1248: case 80: {
        !          1249: 
        !          1250: #line 567 "asm.y"
        !          1251: 
        !          1252:                yyval.val = yypvt[-2].val << yypvt[0].val; }break;
        !          1253: 
        !          1254: case 81: {
        !          1255: 
        !          1256: #line 569 "asm.y"
        !          1257: 
        !          1258:                yyval.val = yypvt[-2].val >> yypvt[0].val; }break;
        !          1259: 
        !          1260: case 82: {
        !          1261: 
        !          1262: #line 573 "asm.y"
        !          1263: 
        !          1264:                yyval.val = yypvt[-2].val & yypvt[0].val; }break;
        !          1265: 
        !          1266: case 83: {
        !          1267: 
        !          1268: #line 575 "asm.y"
        !          1269: 
        !          1270:                yyval.val = yypvt[-2].val | yypvt[0].val; }break;
        !          1271: 
        !          1272: case 84: {
        !          1273: 
        !          1274: #line 577 "asm.y"
        !          1275: 
        !          1276:                yyval.val = yypvt[-2].val ^ yypvt[0].val; }break;
        !          1277: 
        !          1278: case 85: {
        !          1279: 
        !          1280: #line 579 "asm.y"
        !          1281: 
        !          1282:                yyval.val = - yypvt[0].val; }break;
        !          1283: 
        !          1284: case 86: {
        !          1285: 
        !          1286: #line 581 "asm.y"
        !          1287: 
        !          1288:                yyval.val = !yypvt[0].val; }break;
        !          1289: 
        !          1290: case 87: {
        !          1291: 
        !          1292: #line 583 "asm.y"
        !          1293: 
        !          1294:                yyval.val = ~yypvt[0].val; }break;
        !          1295: 
        !          1296: case 88: {
        !          1297: 
        !          1298: #line 586 "asm.y"
        !          1299: 
        !          1300:                yyval.val = (yypvt[-1].val > strlen(yypvt[-3].t)) ? 0 : yypvt[-3].t[(short)yypvt[-1].val]; }break;
        !          1301: 
        !          1302: case 89: {
        !          1303: 
        !          1304: #line 588 "asm.y"
        !          1305: 
        !          1306:                yyval.val = stringSearch(yypvt[-2].t, yypvt[0].t); }break;
        !          1307: 
        !          1308: case 90: {
        !          1309: 
        !          1310: #line 590 "asm.y"
        !          1311: 
        !          1312:                yyval.val = atol(yypvt[0].t); }break;
        !          1313: 
        !          1314: case 91: {
        !          1315: 
        !          1316: #line 592 "asm.y"
        !          1317: 
        !          1318:                yyval.val = yypvt[0].dbl; }break;
        !          1319: 
        !          1320: case 92: {
        !          1321: 
        !          1322: #line 595 "asm.y"
        !          1323: 
        !          1324:                yyval.t = gcpy(yypvt[0].t, 0); }break;
        !          1325: 
        !          1326: case 93: {
        !          1327: 
        !          1328: #line 597 "asm.y"
        !          1329: 
        !          1330:                yyval.t = yypvt[-1].t; }break;
        !          1331: 
        !          1332: case 94: {
        !          1333: 
        !          1334: #line 599 "asm.y"
        !          1335: 
        !          1336:                yyval.t = concat(yypvt[-2].t, yypvt[0].t); }break;
        !          1337: 
        !          1338: case 95: {
        !          1339: 
        !          1340: #line 601 "asm.y"
        !          1341: 
        !          1342:                yyval.t = substr(yypvt[-5].t, yypvt[-3].val, yypvt[-1].val); }break;
        !          1343: 
        !          1344: case 96: {
        !          1345: 
        !          1346: #line 603 "asm.y"
        !          1347: 
        !          1348:                yyval.t = substr(yypvt[-3].t, yypvt[-1].val, strlen(yypvt[-3].t) - yypvt[-1].val); }break;
        !          1349: 
        !          1350: case 97: {
        !          1351: 
        !          1352: #line 605 "asm.y"
        !          1353: 
        !          1354:                yyval.t = galloc(12);
        !          1355:                sprintf(yyval.t, "%ld", yypvt[0].val); }break;
        !          1356: 
        !          1357: case 98: {
        !          1358: 
        !          1359: #line 608 "asm.y"
        !          1360: 
        !          1361:                yyval.t = galloc(20);
        !          1362:                sprintf(yyval.t, "%g", yypvt[0].dbl); }break;
        !          1363: 
        !          1364: case 99: {
        !          1365: 
        !          1366: #line 613 "asm.y"
        !          1367: 
        !          1368:                yyval.dbl = yypvt[0].dbl; }break;
        !          1369: 
        !          1370: case 100: {
        !          1371: 
        !          1372: #line 615 "asm.y"
        !          1373: 
        !          1374:                yyval.dbl = yypvt[-1].dbl; }break;
        !          1375: 
        !          1376: case 101: {
        !          1377: 
        !          1378: #line 617 "asm.y"
        !          1379: 
        !          1380:                yyval.dbl = yypvt[-2].dbl + yypvt[0].dbl; }break;
        !          1381: 
        !          1382: case 102: {
        !          1383: 
        !          1384: #line 619 "asm.y"
        !          1385: 
        !          1386:                yyval.dbl = yypvt[-2].dbl - yypvt[0].dbl; }break;
        !          1387: 
        !          1388: case 103: {
        !          1389: 
        !          1390: #line 621 "asm.y"
        !          1391: 
        !          1392:                yyval.dbl = yypvt[-2].dbl * yypvt[0].dbl; }break;
        !          1393: 
        !          1394: case 104: {
        !          1395: 
        !          1396: #line 623 "asm.y"
        !          1397: 
        !          1398:                yyval.dbl = yypvt[-2].dbl / yypvt[0].dbl; }break;
        !          1399: 
        !          1400: case 105: {
        !          1401: 
        !          1402: #line 625 "asm.y"
        !          1403: 
        !          1404:                yyval.dbl = - yypvt[0].dbl; }break;
        !          1405: 
        !          1406: case 106: {
        !          1407: 
        !          1408: #line 627 "asm.y"
        !          1409: 
        !          1410:                yyval.dbl = strtod(yypvt[0].t, (char **)NULL); }break;
        !          1411: 
        !          1412: case 107: {
        !          1413: 
        !          1414: #line 629 "asm.y"
        !          1415: 
        !          1416:                yyval.dbl = yypvt[0].val; }break;
        !          1417: 
        !          1418:                }
        !          1419:                ip = &yygo[ yypgo[yypdnt[pno]] ];
        !          1420:                while( *ip!=*yys && *ip!=YYNOCHAR )
        !          1421:                        ip += 2;
        !          1422:                yystate = ip[1];
        !          1423:                goto stack;
        !          1424:        }
        !          1425: }
        !          1426: 
        !          1427: 
        !          1428: 
        !          1429: 

unix.superglobalmegacorp.com

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