home *** CD-ROM | disk | FTP | other *** search
- # define IDENT 257
- # define INTLIT 258
- # define REALLIT 259
- # define STRINGLIT 260
- # define CSETLIT 261
- # define EOFX 262
- # define BREAK 263
- # define BY 264
- # define CASE 265
- # define CREATE 266
- # define DEFAULT 267
- # define DO 268
- # define DYNAMIC 269
- # define ELSE 270
- # define END 271
- # define EVERY 272
- # define FAIL 273
- # define GLOBAL 274
- # define IF 275
- # define INITIAL 276
- # define INVOCABLE 277
- # define LINK 278
- # define LOCAL 279
- # define NEXT 280
- # define NOT 281
- # define OF 282
- # define PROCEDURE 283
- # define RECORD 284
- # define REPEAT 285
- # define RETURN 286
- # define STATIC 287
- # define SUSPEND 288
- # define THEN 289
- # define TO 290
- # define UNTIL 291
- # define WHILE 292
- # define BANG 293
- # define MOD 294
- # define AUGMOD 295
- # define AND 296
- # define AUGAND 297
- # define STAR 298
- # define AUGSTAR 299
- # define INTER 300
- # define AUGINTER 301
- # define PLUS 302
- # define AUGPLUS 303
- # define UNION 304
- # define AUGUNION 305
- # define MINUS 306
- # define AUGMINUS 307
- # define DIFF 308
- # define AUGDIFF 309
- # define DOT 310
- # define SLASH 311
- # define AUGSLASH 312
- # define ASSIGN 313
- # define SWAP 314
- # define NMLT 315
- # define AUGNMLT 316
- # define REVASSIGN 317
- # define REVSWAP 318
- # define SLT 319
- # define AUGSLT 320
- # define SLE 321
- # define AUGSLE 322
- # define NMLE 323
- # define AUGNMLE 324
- # define NMEQ 325
- # define AUGNMEQ 326
- # define SEQ 327
- # define AUGSEQ 328
- # define EQUIV 329
- # define AUGEQUIV 330
- # define NMGT 331
- # define AUGNMGT 332
- # define NMGE 333
- # define AUGNMGE 334
- # define SGT 335
- # define AUGSGT 336
- # define SGE 337
- # define AUGSGE 338
- # define QMARK 339
- # define AUGQMARK 340
- # define AT 341
- # define AUGAT 342
- # define BACKSLASH 343
- # define CARET 344
- # define AUGCARET 345
- # define BAR 346
- # define CONCAT 347
- # define AUGCONCAT 348
- # define LCONCAT 349
- # define AUGLCONCAT 350
- # define TILDE 351
- # define NMNE 352
- # define AUGNMNE 353
- # define SNE 354
- # define AUGSNE 355
- # define NEQUIV 356
- # define AUGNEQUIV 357
- # define LPAREN 358
- # define RPAREN 359
- # define PCOLON 360
- # define COMMA 361
- # define MCOLON 362
- # define COLON 363
- # define SEMICOL 364
- # define LBRACK 365
- # define RBRACK 366
- # define LBRACE 367
- # define RBRACE 368
-
- # line 143 "expanded.g"
- #include "::h:gsupport.h"
- #include "tlex.h"
- #include "trans.h"
- #include "tsym.h"
- #include "tree.h"
- #include "tcode.h"
- #include "tproto.h"
- #define YYSTYPE nodeptr
- #define YYMAXDEPTH 500
- int idflag;
-
-
-
- #define yyclearin yychar = -1
- #define yyerrok yyerrflag = 0
- extern int yychar;
- extern int yyerrflag;
- #ifndef YYMAXDEPTH
- #define YYMAXDEPTH 150
- #endif
- #ifndef YYSTYPE
- #define YYSTYPE int
- #endif
- YYSTYPE yylval, yyval;
- # define YYERRCODE 256
-
- # line 424 "expanded.g"
-
- int yyexca[] ={
- -1, 0,
- 262, 2,
- 274, 2,
- 277, 2,
- 278, 2,
- 283, 2,
- 284, 2,
- -2, 0,
- -1, 1,
- 0, -1,
- -2, 0,
- -1, 20,
- 271, 41,
- 364, 43,
- -2, 0,
- -1, 86,
- 264, 43,
- 268, 43,
- 270, 43,
- 282, 43,
- 289, 43,
- 290, 43,
- 294, 43,
- 295, 43,
- 297, 43,
- 299, 43,
- 301, 43,
- 303, 43,
- 305, 43,
- 307, 43,
- 309, 43,
- 312, 43,
- 313, 43,
- 314, 43,
- 315, 43,
- 316, 43,
- 317, 43,
- 318, 43,
- 319, 43,
- 320, 43,
- 321, 43,
- 322, 43,
- 323, 43,
- 324, 43,
- 326, 43,
- 328, 43,
- 330, 43,
- 331, 43,
- 332, 43,
- 333, 43,
- 334, 43,
- 335, 43,
- 336, 43,
- 337, 43,
- 338, 43,
- 340, 43,
- 342, 43,
- 345, 43,
- 348, 43,
- 350, 43,
- 353, 43,
- 355, 43,
- 357, 43,
- 359, 43,
- 360, 43,
- 361, 43,
- 362, 43,
- 363, 43,
- 364, 43,
- 366, 43,
- 368, 43,
- -2, 0,
- -1, 87,
- 359, 43,
- 361, 43,
- -2, 0,
- -1, 88,
- 364, 43,
- 368, 43,
- -2, 0,
- -1, 89,
- 361, 43,
- 366, 43,
- -2, 0,
- -1, 96,
- 264, 43,
- 268, 43,
- 270, 43,
- 282, 43,
- 289, 43,
- 290, 43,
- 294, 43,
- 295, 43,
- 297, 43,
- 299, 43,
- 301, 43,
- 303, 43,
- 305, 43,
- 307, 43,
- 309, 43,
- 312, 43,
- 313, 43,
- 314, 43,
- 315, 43,
- 316, 43,
- 317, 43,
- 318, 43,
- 319, 43,
- 320, 43,
- 321, 43,
- 322, 43,
- 323, 43,
- 324, 43,
- 326, 43,
- 328, 43,
- 330, 43,
- 331, 43,
- 332, 43,
- 333, 43,
- 334, 43,
- 335, 43,
- 336, 43,
- 337, 43,
- 338, 43,
- 340, 43,
- 342, 43,
- 345, 43,
- 348, 43,
- 350, 43,
- 353, 43,
- 355, 43,
- 357, 43,
- 359, 43,
- 360, 43,
- 361, 43,
- 362, 43,
- 363, 43,
- 364, 43,
- 366, 43,
- 368, 43,
- -2, 0,
- -1, 97,
- 264, 43,
- 268, 43,
- 270, 43,
- 282, 43,
- 289, 43,
- 290, 43,
- 294, 43,
- 295, 43,
- 297, 43,
- 299, 43,
- 301, 43,
- 303, 43,
- 305, 43,
- 307, 43,
- 309, 43,
- 312, 43,
- 313, 43,
- 314, 43,
- 315, 43,
- 316, 43,
- 317, 43,
- 318, 43,
- 319, 43,
- 320, 43,
- 321, 43,
- 322, 43,
- 323, 43,
- 324, 43,
- 326, 43,
- 328, 43,
- 330, 43,
- 331, 43,
- 332, 43,
- 333, 43,
- 334, 43,
- 335, 43,
- 336, 43,
- 337, 43,
- 338, 43,
- 340, 43,
- 342, 43,
- 345, 43,
- 348, 43,
- 350, 43,
- 353, 43,
- 355, 43,
- 357, 43,
- 359, 43,
- 360, 43,
- 361, 43,
- 362, 43,
- 363, 43,
- 364, 43,
- 366, 43,
- 368, 43,
- -2, 0,
- -1, 111,
- 271, 41,
- 364, 43,
- -2, 0,
- -1, 118,
- 271, 41,
- 364, 43,
- -2, 0,
- -1, 183,
- 361, 43,
- 366, 43,
- -2, 0,
- -1, 184,
- 361, 43,
- -2, 0,
- -1, 185,
- 359, 43,
- 361, 43,
- -2, 0,
- -1, 312,
- 359, 43,
- 361, 43,
- 366, 43,
- -2, 0,
- -1, 314,
- 364, 43,
- 368, 43,
- -2, 0,
- -1, 336,
- 361, 43,
- 368, 43,
- -2, 0,
- };
- # define YYNPROD 204
- # define YYLAST 743
- int yyact[]={
-
- 38, 84, 91, 92, 93, 94, 336, 86, 186, 99,
- 83, 360, 313, 335, 119, 359, 102, 95, 342, 98,
- 356, 312, 312, 20, 85, 51, 330, 315, 314, 103,
- 96, 119, 97, 118, 229, 101, 100, 56, 347, 119,
- 90, 119, 59, 361, 62, 108, 58, 337, 70, 312,
- 64, 311, 57, 312, 55, 60, 185, 229, 229, 353,
- 327, 107, 106, 183, 346, 184, 325, 233, 110, 65,
- 169, 67, 170, 69, 215, 120, 171, 182, 173, 317,
- 174, 351, 172, 71, 357, 50, 119, 73, 61, 119,
- 52, 53, 326, 54, 219, 63, 66, 117, 68, 328,
- 72, 232, 87, 333, 329, 334, 332, 119, 362, 89,
- 218, 88, 306, 38, 84, 91, 92, 93, 94, 321,
- 86, 41, 99, 83, 354, 181, 320, 180, 179, 102,
- 95, 19, 98, 105, 319, 178, 316, 85, 51, 175,
- 322, 176, 103, 96, 318, 97, 310, 119, 101, 100,
- 56, 30, 177, 90, 119, 59, 18, 62, 119, 58,
- 3, 70, 119, 64, 119, 57, 37, 55, 60, 116,
- 28, 24, 34, 29, 25, 27, 113, 104, 331, 114,
- 352, 2, 65, 307, 67, 17, 69, 115, 82, 81,
- 80, 79, 78, 23, 36, 77, 71, 76, 50, 75,
- 73, 61, 74, 52, 53, 49, 54, 46, 63, 66,
- 47, 68, 213, 72, 42, 87, 38, 84, 91, 92,
- 93, 94, 89, 86, 88, 99, 83, 40, 112, 323,
- 109, 111, 102, 95, 33, 98, 12, 234, 32, 21,
- 85, 51, 26, 22, 10, 103, 96, 9, 97, 8,
- 7, 101, 100, 56, 6, 5, 90, 1, 59, 0,
- 62, 0, 58, 0, 70, 0, 64, 0, 57, 0,
- 55, 60, 0, 0, 0, 274, 275, 0, 211, 0,
- 0, 0, 0, 231, 236, 65, 240, 67, 235, 69,
- 237, 239, 222, 223, 224, 225, 226, 227, 228, 71,
- 230, 50, 217, 73, 61, 0, 52, 53, 238, 54,
- 0, 63, 66, 0, 68, 0, 72, 0, 87, 0,
- 84, 91, 92, 93, 94, 89, 86, 88, 99, 83,
- 44, 0, 0, 0, 0, 102, 95, 0, 98, 0,
- 0, 0, 0, 85, 51, 0, 45, 0, 103, 96,
- 0, 97, 0, 0, 101, 100, 56, 0, 0, 90,
- 31, 59, 0, 62, 0, 58, 0, 70, 0, 64,
- 0, 57, 13, 55, 60, 15, 14, 0, 305, 4,
- 0, 16, 11, 296, 297, 298, 299, 300, 65, 339,
- 67, 13, 69, 0, 15, 14, 304, 0, 309, 0,
- 16, 11, 71, 0, 50, 214, 73, 61, 0, 52,
- 53, 324, 54, 0, 63, 66, 0, 68, 153, 72,
- 363, 87, 0, 134, 0, 151, 35, 131, 89, 132,
- 88, 129, 0, 128, 0, 130, 0, 127, 0, 0,
- 133, 122, 121, 0, 141, 124, 123, 0, 148, 165,
- 147, 348, 140, 159, 136, 158, 144, 164, 137, 161,
- 139, 155, 138, 167, 146, 163, 145, 162, 150, 157,
- 152, 156, 39, 135, 43, 0, 125, 0, 126, 0,
- 154, 142, 0, 149, 0, 143, 166, 0, 160, 0,
- 168, 0, 212, 0, 216, 0, 0, 0, 0, 0,
- 290, 291, 220, 221, 0, 0, 0, 48, 0, 0,
- 0, 340, 341, 0, 343, 344, 345, 35, 292, 293,
- 294, 295, 0, 0, 35, 0, 349, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 355, 0, 0,
- 0, 0, 0, 0, 0, 0, 358, 0, 0, 0,
- 0, 0, 0, 0, 0, 355, 364, 365, 187, 188,
- 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
- 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
- 209, 210, 0, 0, 0, 0, 0, 0, 0, 0,
- 308, 0, 0, 241, 242, 243, 244, 245, 246, 247,
- 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
- 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
- 268, 269, 270, 271, 272, 273, 0, 0, 0, 0,
- 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
- 286, 287, 288, 289, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 301, 302,
- 303, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 338, 0,
- 216, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 350 };
- int yypact[]={
-
- -96, -1000, 117, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
- -1000, -101, -233, -1000, -86, -87, -106, 98, -1000, -1000,
- -40, -124, -299, -1000, -1000, -1000, -300, -1000, -1000, -318,
- -1000, -1000, -290, -100, -174, -331, -207, -264, -1000, -1000,
- 128, -1000, 134, -277, -226, -159, -1000, -216, -1000, -302,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, -1000, -1000, -1000, -1000, -1000, -1000,
- -1000, -1000, -1000, -40, -1000, -1000, -40, -40, -40, -40,
- -163, -1000, -1000, -1000, -1000, -1000, -40, -40, -40, -40,
- -40, -40, -40, -40, -303, -1000, -86, -87, -157, -291,
- -124, -40, -124, -40, -1000, -1000, -1000, -1000, -40, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, -40, -256, -40, -111, -1000, -1000, -1000,
- -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
- -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
- -1000, -207, -1000, -308, -1000, -356, -336, -339, -1000, -1000,
- -1000, -1000, -132, -210, -138, -134, -142, -149, -207, -117,
- -1000, -1000, -1000, -124, -293, -303, -179, -304, -265, -1000,
- -264, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
- -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
- -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
- -1000, -1000, -1000, -1000, -160, -1000, -277, -277, -277, -277,
- -277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
- -226, -226, -159, -159, -159, -159, -1000, -1000, -1000, -1000,
- -1000, -1000, -1000, -1000, -340, -257, -1000, -355, -1000, -312,
- -1000, -1000, -40, -1000, -40, -1000, -40, -40, -349, -40,
- -40, -40, -1000, -295, -327, -1000, -1000, -1000, -1000, 63,
- -1000, -40, -1000, -1000, -1000, -1000, -40, -1000, -1000, -1000,
- -207, -189, -143, -207, -207, -207, -1000, -346, -1000, -282,
- -1000, -40, -353, -1000, -320, -255, -1000, -1000, -207, -1000,
- -143, -40, -40, -1000, -207, -207 };
- int yypgo[]={
-
- 0, 257, 181, 255, 254, 250, 249, 247, 244, 243,
- 193, 242, 175, 239, 177, 238, 237, 236, 234, 231,
- 172, 230, 229, 228, 194, 405, 166, 472, 227, 121,
- 214, 474, 330, 346, 207, 210, 507, 205, 202, 199,
- 197, 195, 192, 191, 190, 189, 188, 212, 74, 183,
- 180, 59, 178 };
- int yyr1[]={
-
- 0, 1, 2, 2, 3, 3, 3, 3, 3, 7,
- 9, 9, 10, 10, 8, 11, 11, 12, 12, 12,
- 13, 6, 15, 4, 16, 16, 5, 21, 17, 22,
- 22, 22, 14, 14, 18, 18, 23, 23, 23, 19,
- 19, 20, 20, 25, 25, 24, 24, 26, 26, 27,
- 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
- 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
- 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
- 27, 27, 28, 28, 28, 29, 29, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 31, 31, 31, 32, 32, 32, 32, 32,
- 33, 33, 33, 33, 33, 34, 34, 35, 35, 35,
- 35, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37, 37, 43,
- 43, 44, 44, 45, 45, 46, 40, 40, 40, 40,
- 41, 41, 42, 50, 50, 51, 51, 47, 47, 49,
- 49, 38, 38, 38, 38, 39, 52, 52, 52, 48,
- 48, 1, 5, 24 };
- int yyr2[]={
-
- 0, 5, 0, 4, 3, 3, 3, 3, 3, 5,
- 2, 7, 3, 3, 5, 2, 7, 3, 3, 7,
- 1, 7, 1, 13, 1, 3, 13, 1, 13, 1,
- 3, 7, 3, 7, 1, 9, 3, 3, 3, 1,
- 7, 1, 7, 1, 2, 2, 7, 2, 7, 2,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 2, 7, 11, 2, 7, 2, 7, 7,
- 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 2, 7, 7, 2, 7, 7, 7, 7,
- 2, 7, 7, 7, 7, 2, 7, 2, 7, 7,
- 7, 2, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5, 5, 5, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 5, 3, 3, 5, 7,
- 7, 7, 9, 7, 9, 9, 7, 5, 5, 5,
- 9, 5, 9, 5, 9, 5, 3, 5, 5, 9,
- 9, 13, 13, 2, 7, 7, 7, 3, 7, 3,
- 7, 3, 3, 3, 3, 13, 3, 3, 3, 2,
- 7, 6, 8, 2 };
- int yychk[]={
-
- -1000, -1, -2, 256, 262, -3, -4, -5, -6, -7,
- -8, 284, -17, 274, 278, 277, 283, -2, 257, 364,
- 256, -13, -9, -10, 257, 260, -11, -12, 257, 260,
- 257, 262, -15, -18, -20, -25, -24, -26, 256, -27,
- -28, -29, -30, -31, -32, -33, -34, -35, -36, -37,
- 341, 281, 346, 347, 349, 310, 293, 308, 302, 298,
- 311, 344, 300, 351, 306, 325, 352, 327, 354, 329,
- 304, 339, 356, 343, -38, -39, -40, -41, -42, -43,
- -44, -45, -46, 266, 257, 280, 263, 358, 367, 365,
- 296, 258, 259, 260, 261, 273, 286, 288, 275, 265,
- 292, 291, 272, 285, -14, 257, 361, 361, 363, -21,
- 358, -19, -23, 276, 279, 287, 269, 271, 364, 296,
- 339, 314, 313, 318, 317, 348, 350, 309, 305, 303,
- 307, 299, 301, 312, 295, 345, 326, 330, 334, 332,
- 324, 316, 353, 357, 328, 338, 336, 322, 320, 355,
- 340, 297, 342, 290, 346, 327, 337, 335, 321, 319,
- 354, 325, 333, 331, 323, 315, 352, 329, 356, 347,
- 349, 302, 308, 304, 306, 298, 300, 311, 294, 344,
- 343, 341, 293, 365, 367, 358, 310, -36, -36, -36,
- -36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
- -36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
- -36, -24, -25, -47, -25, -48, -25, -47, 273, 257,
- -25, -25, -24, -24, -24, -24, -24, -24, -24, 361,
- -10, -12, 258, 358, -16, -14, -20, -14, -24, -20,
- -26, -27, -27, -27, -27, -27, -27, -27, -27, -27,
- -27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
- -27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
- -27, -27, -27, -27, -29, -29, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -32, -32, -33, -33, -33, -33, -34, -34, -34, -34,
- -34, -36, -36, -36, -47, -24, 368, -49, -25, -47,
- 257, 359, 361, 368, 364, 366, 268, 289, 282, 268,
- 268, 268, 257, -22, -14, 359, 271, 364, 364, 264,
- 366, -52, 363, 360, 362, 368, 361, 359, -25, -48,
- -24, -24, 367, -24, -24, -24, 359, 365, -29, -24,
- -25, 270, -50, -51, 267, -24, 366, 366, -24, 368,
- 364, 363, 363, -51, -24, -24 };
- int yydef[]={
-
- -2, -2, 0, 2, 1, 3, 4, 5, 6, 7,
- 8, 0, 0, 20, 0, 0, 0, 0, 22, 34,
- -2, 0, 9, 10, 12, 13, 14, 15, 17, 18,
- 27, 201, 0, 39, 0, 0, 44, 45, 203, 47,
- 49, 82, 85, 87, 102, 105, 110, 115, 117, 121,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 146, 147, 148, 149, 150, 151,
- 152, 153, 154, 0, 156, 157, -2, -2, -2, -2,
- 0, 191, 192, 193, 194, 176, -2, -2, 0, 0,
- 0, 0, 0, 0, 21, 32, 0, 0, 0, 0,
- 24, -2, 0, 0, 36, 37, 38, 202, -2, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, -2, -2, -2, 0, 122, 123, 124,
- 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
- 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
- 145, 155, 158, 0, 187, 0, 199, 0, 167, 168,
- 177, 178, 44, 0, 0, 169, 171, 173, 175, 0,
- 11, 16, 19, 29, 0, 25, 0, 0, 0, 42,
- 46, 48, 50, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
- 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
- 78, 79, 80, 81, 83, 86, 88, 89, 90, 91,
- 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
- 103, 104, 106, 107, 108, 109, 111, 112, 113, 114,
- 116, 118, 119, 120, 0, 44, 163, 0, 189, 0,
- 166, 159, -2, 160, -2, 161, 0, 0, 0, 0,
- 0, 0, 33, 0, 30, 23, 26, 35, 40, 0,
- 162, 0, 196, 197, 198, 164, -2, 165, 188, 200,
- 179, 180, 0, 170, 172, 174, 28, 0, 84, 0,
- 190, 0, 0, 183, 0, 0, 31, 195, 181, 182,
- 0, 0, 0, 184, 185, 186 };
- typedef struct { char *t_name; int t_val; } yytoktype;
- #ifndef YYDEBUG
- # define YYDEBUG 0 /* don't allow debugging */
- #endif
-
- #if YYDEBUG
-
- yytoktype yytoks[] =
- {
- "IDENT", 257,
- "INTLIT", 258,
- "REALLIT", 259,
- "STRINGLIT", 260,
- "CSETLIT", 261,
- "EOFX", 262,
- "BREAK", 263,
- "BY", 264,
- "CASE", 265,
- "CREATE", 266,
- "DEFAULT", 267,
- "DO", 268,
- "DYNAMIC", 269,
- "ELSE", 270,
- "END", 271,
- "EVERY", 272,
- "FAIL", 273,
- "GLOBAL", 274,
- "IF", 275,
- "INITIAL", 276,
- "INVOCABLE", 277,
- "LINK", 278,
- "LOCAL", 279,
- "NEXT", 280,
- "NOT", 281,
- "OF", 282,
- "PROCEDURE", 283,
- "RECORD", 284,
- "REPEAT", 285,
- "RETURN", 286,
- "STATIC", 287,
- "SUSPEND", 288,
- "THEN", 289,
- "TO", 290,
- "UNTIL", 291,
- "WHILE", 292,
- "BANG", 293,
- "MOD", 294,
- "AUGMOD", 295,
- "AND", 296,
- "AUGAND", 297,
- "STAR", 298,
- "AUGSTAR", 299,
- "INTER", 300,
- "AUGINTER", 301,
- "PLUS", 302,
- "AUGPLUS", 303,
- "UNION", 304,
- "AUGUNION", 305,
- "MINUS", 306,
- "AUGMINUS", 307,
- "DIFF", 308,
- "AUGDIFF", 309,
- "DOT", 310,
- "SLASH", 311,
- "AUGSLASH", 312,
- "ASSIGN", 313,
- "SWAP", 314,
- "NMLT", 315,
- "AUGNMLT", 316,
- "REVASSIGN", 317,
- "REVSWAP", 318,
- "SLT", 319,
- "AUGSLT", 320,
- "SLE", 321,
- "AUGSLE", 322,
- "NMLE", 323,
- "AUGNMLE", 324,
- "NMEQ", 325,
- "AUGNMEQ", 326,
- "SEQ", 327,
- "AUGSEQ", 328,
- "EQUIV", 329,
- "AUGEQUIV", 330,
- "NMGT", 331,
- "AUGNMGT", 332,
- "NMGE", 333,
- "AUGNMGE", 334,
- "SGT", 335,
- "AUGSGT", 336,
- "SGE", 337,
- "AUGSGE", 338,
- "QMARK", 339,
- "AUGQMARK", 340,
- "AT", 341,
- "AUGAT", 342,
- "BACKSLASH", 343,
- "CARET", 344,
- "AUGCARET", 345,
- "BAR", 346,
- "CONCAT", 347,
- "AUGCONCAT", 348,
- "LCONCAT", 349,
- "AUGLCONCAT", 350,
- "TILDE", 351,
- "NMNE", 352,
- "AUGNMNE", 353,
- "SNE", 354,
- "AUGSNE", 355,
- "NEQUIV", 356,
- "AUGNEQUIV", 357,
- "LPAREN", 358,
- "RPAREN", 359,
- "PCOLON", 360,
- "COMMA", 361,
- "MCOLON", 362,
- "COLON", 363,
- "SEMICOL", 364,
- "LBRACK", 365,
- "RBRACK", 366,
- "LBRACE", 367,
- "RBRACE", 368,
- "-unknown-", -1 /* ends search */
- };
-
- char * yyreds[] =
- {
- "-no such reduction-",
- "program : decls EOFX",
- "decls : /* empty */",
- "decls : decls decl",
- "decl : record",
- "decl : proc",
- "decl : global",
- "decl : link",
- "decl : invocable",
- "link : LINK lnklist",
- "lnklist : lnkfile",
- "lnklist : lnklist COMMA lnkfile",
- "lnkfile : IDENT",
- "lnkfile : STRINGLIT",
- "invocable : INVOCABLE invoclist",
- "invoclist : invocop",
- "invoclist : invoclist COMMA invocop",
- "invocop : IDENT",
- "invocop : STRINGLIT",
- "invocop : STRINGLIT COLON INTLIT",
- "global : GLOBAL",
- "global : GLOBAL idlist",
- "record : RECORD IDENT",
- "record : RECORD IDENT LPAREN fldlist RPAREN",
- "fldlist : /* empty */",
- "fldlist : idlist",
- "proc : prochead SEMICOL locals initial procbody END",
- "prochead : PROCEDURE IDENT",
- "prochead : PROCEDURE IDENT LPAREN arglist RPAREN",
- "arglist : /* empty */",
- "arglist : idlist",
- "arglist : idlist LBRACK RBRACK",
- "idlist : IDENT",
- "idlist : idlist COMMA IDENT",
- "locals : /* empty */",
- "locals : locals retention idlist SEMICOL",
- "retention : LOCAL",
- "retention : STATIC",
- "retention : DYNAMIC",
- "initial : /* empty */",
- "initial : INITIAL expr SEMICOL",
- "procbody : /* empty */",
- "procbody : nexpr SEMICOL procbody",
- "nexpr : /* empty */",
- "nexpr : expr",
- "expr : expr1a",
- "expr : expr AND expr1a",
- "expr1a : expr1",
- "expr1a : expr1a QMARK expr1",
- "expr1 : expr2",
- "expr1 : expr2 SWAP expr1",
- "expr1 : expr2 ASSIGN expr1",
- "expr1 : expr2 REVSWAP expr1",
- "expr1 : expr2 REVASSIGN expr1",
- "expr1 : expr2 AUGCONCAT expr1",
- "expr1 : expr2 AUGLCONCAT expr1",
- "expr1 : expr2 AUGDIFF expr1",
- "expr1 : expr2 AUGUNION expr1",
- "expr1 : expr2 AUGPLUS expr1",
- "expr1 : expr2 AUGMINUS expr1",
- "expr1 : expr2 AUGSTAR expr1",
- "expr1 : expr2 AUGINTER expr1",
- "expr1 : expr2 AUGSLASH expr1",
- "expr1 : expr2 AUGMOD expr1",
- "expr1 : expr2 AUGCARET expr1",
- "expr1 : expr2 AUGNMEQ expr1",
- "expr1 : expr2 AUGEQUIV expr1",
- "expr1 : expr2 AUGNMGE expr1",
- "expr1 : expr2 AUGNMGT expr1",
- "expr1 : expr2 AUGNMLE expr1",
- "expr1 : expr2 AUGNMLT expr1",
- "expr1 : expr2 AUGNMNE expr1",
- "expr1 : expr2 AUGNEQUIV expr1",
- "expr1 : expr2 AUGSEQ expr1",
- "expr1 : expr2 AUGSGE expr1",
- "expr1 : expr2 AUGSGT expr1",
- "expr1 : expr2 AUGSLE expr1",
- "expr1 : expr2 AUGSLT expr1",
- "expr1 : expr2 AUGSNE expr1",
- "expr1 : expr2 AUGQMARK expr1",
- "expr1 : expr2 AUGAND expr1",
- "expr1 : expr2 AUGAT expr1",
- "expr2 : expr3",
- "expr2 : expr2 TO expr3",
- "expr2 : expr2 TO expr3 BY expr3",
- "expr3 : expr4",
- "expr3 : expr4 BAR expr3",
- "expr4 : expr5",
- "expr4 : expr4 SEQ expr5",
- "expr4 : expr4 SGE expr5",
- "expr4 : expr4 SGT expr5",
- "expr4 : expr4 SLE expr5",
- "expr4 : expr4 SLT expr5",
- "expr4 : expr4 SNE expr5",
- "expr4 : expr4 NMEQ expr5",
- "expr4 : expr4 NMGE expr5",
- "expr4 : expr4 NMGT expr5",
- "expr4 : expr4 NMLE expr5",
- "expr4 : expr4 NMLT expr5",
- "expr4 : expr4 NMNE expr5",
- "expr4 : expr4 EQUIV expr5",
- "expr4 : expr4 NEQUIV expr5",
- "expr5 : expr6",
- "expr5 : expr5 CONCAT expr6",
- "expr5 : expr5 LCONCAT expr6",
- "expr6 : expr7",
- "expr6 : expr6 PLUS expr7",
- "expr6 : expr6 DIFF expr7",
- "expr6 : expr6 UNION expr7",
- "expr6 : expr6 MINUS expr7",
- "expr7 : expr8",
- "expr7 : expr7 STAR expr8",
- "expr7 : expr7 INTER expr8",
- "expr7 : expr7 SLASH expr8",
- "expr7 : expr7 MOD expr8",
- "expr8 : expr9",
- "expr8 : expr9 CARET expr8",
- "expr9 : expr10",
- "expr9 : expr9 BACKSLASH expr10",
- "expr9 : expr9 AT expr10",
- "expr9 : expr9 BANG expr10",
- "expr10 : expr11",
- "expr10 : AT expr10",
- "expr10 : NOT expr10",
- "expr10 : BAR expr10",
- "expr10 : CONCAT expr10",
- "expr10 : LCONCAT expr10",
- "expr10 : DOT expr10",
- "expr10 : BANG expr10",
- "expr10 : DIFF expr10",
- "expr10 : PLUS expr10",
- "expr10 : STAR expr10",
- "expr10 : SLASH expr10",
- "expr10 : CARET expr10",
- "expr10 : INTER expr10",
- "expr10 : TILDE expr10",
- "expr10 : MINUS expr10",
- "expr10 : NMEQ expr10",
- "expr10 : NMNE expr10",
- "expr10 : SEQ expr10",
- "expr10 : SNE expr10",
- "expr10 : EQUIV expr10",
- "expr10 : UNION expr10",
- "expr10 : QMARK expr10",
- "expr10 : NEQUIV expr10",
- "expr10 : BACKSLASH expr10",
- "expr11 : literal",
- "expr11 : section",
- "expr11 : return",
- "expr11 : if",
- "expr11 : case",
- "expr11 : while",
- "expr11 : until",
- "expr11 : every",
- "expr11 : repeat",
- "expr11 : CREATE expr",
- "expr11 : IDENT",
- "expr11 : NEXT",
- "expr11 : BREAK nexpr",
- "expr11 : LPAREN exprlist RPAREN",
- "expr11 : LBRACE compound RBRACE",
- "expr11 : LBRACK exprlist RBRACK",
- "expr11 : expr11 LBRACK exprlist RBRACK",
- "expr11 : expr11 LBRACE RBRACE",
- "expr11 : expr11 LBRACE pdcolist RBRACE",
- "expr11 : expr11 LPAREN exprlist RPAREN",
- "expr11 : expr11 DOT IDENT",
- "expr11 : AND FAIL",
- "expr11 : AND IDENT",
- "while : WHILE expr",
- "while : WHILE expr DO expr",
- "until : UNTIL expr",
- "until : UNTIL expr DO expr",
- "every : EVERY expr",
- "every : EVERY expr DO expr",
- "repeat : REPEAT expr",
- "return : FAIL",
- "return : RETURN nexpr",
- "return : SUSPEND nexpr",
- "return : SUSPEND expr DO expr",
- "if : IF expr THEN expr",
- "if : IF expr THEN expr ELSE expr",
- "case : CASE expr OF LBRACE caselist RBRACE",
- "caselist : cclause",
- "caselist : caselist SEMICOL cclause",
- "cclause : DEFAULT COLON expr",
- "cclause : expr COLON expr",
- "exprlist : nexpr",
- "exprlist : exprlist COMMA nexpr",
- "pdcolist : nexpr",
- "pdcolist : pdcolist COMMA nexpr",
- "literal : INTLIT",
- "literal : REALLIT",
- "literal : STRINGLIT",
- "literal : CSETLIT",
- "section : expr11 LBRACK expr sectop expr RBRACK",
- "sectop : COLON",
- "sectop : PCOLON",
- "sectop : MCOLON",
- "compound : nexpr",
- "compound : nexpr SEMICOL compound",
- "program : error decls EOFX",
- "proc : prochead error procbody END",
- "expr : error",
- };
- #endif
- #line 1 "/usr/lib/yaccpar"
- /* @(#)yaccpar 1.10 89/04/04 SMI; from S5R3 1.10 */
-
- /*
- ** Skeleton parser driver for yacc output
- */
-
- /*
- ** yacc user known macros and defines
- */
- #define YYERROR goto yyerrlab
- #define YYACCEPT { free(yys); free(yyv); return(0); }
- #define YYABORT { free(yys); free(yyv); return(1); }
- #define YYBACKUP( newtoken, newvalue )\
- {\
- if ( yychar >= 0 || ( yyr2[ yytmp ] >> 1 ) != 1 )\
- {\
- tsyserr("parser: syntax error - cannot backup" );\
- goto yyerrlab;\
- }\
- yychar = newtoken;\
- yystate = *yyps;\
- yylval = newvalue;\
- goto yynewstate;\
- }
- #define YYRECOVERING() (!!yyerrflag)
- #ifndef YYDEBUG
- # define YYDEBUG 1 /* make debugging available */
- #endif
-
- /*
- ** user known globals
- */
- int yydebug; /* set to 1 to get debugging */
-
- /*
- ** driver internal defines
- */
- #define YYFLAG (-1000)
-
- /*
- ** static variables used by the parser
- */
- static YYSTYPE *yyv; /* value stack */
- static int *yys; /* state stack */
-
- static YYSTYPE *yypv; /* top of value stack */
- static int *yyps; /* top of state stack */
-
- static int yystate; /* current state */
- static int yytmp; /* extra var (lasts between blocks) */
-
- int yynerrs; /* number of errors */
-
- int yyerrflag; /* error recovery flag */
- int yychar; /* current input token number */
-
-
- /*
- ** yyparse - return 0 if worked, 1 if syntax error not recovered from
- */
- int
- yyparse()
- {
- register YYSTYPE *yypvt; /* top of value stack for $vars */
- unsigned yymaxdepth = YYMAXDEPTH;
-
- /*
- ** Initialize externals - yyparse may be called more than once
- */
- yyv = (YYSTYPE*)malloc(yymaxdepth*sizeof(YYSTYPE));
- yys = (int*)malloc(yymaxdepth*sizeof(int));
- if (!yyv || !yys)
- {
- tsyserr("parser: out of memory" );
- return(1);
- }
- yypv = &yyv[-1];
- yyps = &yys[-1];
- yystate = 0;
- yytmp = 0;
- yynerrs = 0;
- yyerrflag = 0;
- yychar = -1;
-
- goto yystack;
- {
- register YYSTYPE *yy_pv; /* top of value stack */
- register int *yy_ps; /* top of state stack */
- register int yy_state; /* current state */
- register int yy_n; /* internal state number info */
-
- /*
- ** get globals into registers.
- ** branch to here only if YYBACKUP was called.
- */
- yynewstate:
- yy_pv = yypv;
- yy_ps = yyps;
- yy_state = yystate;
- goto yy_newstate;
-
- /*
- ** get globals into registers.
- ** either we just started, or we just finished a reduction
- */
- yystack:
- yy_pv = yypv;
- yy_ps = yyps;
- yy_state = yystate;
-
- /*
- ** top of for (;;) loop while no reductions done
- */
- yy_stack:
- /*
- ** put a state and value onto the stacks
- */
- #if YYDEBUG
- /*
- ** if debugging, look up token value in list of value vs.
- ** name pairs. 0 and negative (-1) are special values.
- ** Note: linear search is used since time is not a real
- ** consideration while debugging.
- */
- if ( yydebug )
- {
- register int yy_i;
-
- (void)printf( "State %d, token ", yy_state );
- if ( yychar == 0 )
- (void)printf( "end-of-file\n" );
- else if ( yychar < 0 )
- (void)printf( "-none-\n" );
- else
- {
- for ( yy_i = 0; yytoks[yy_i].t_val >= 0;
- yy_i++ )
- {
- if ( yytoks[yy_i].t_val == yychar )
- break;
- }
- (void)printf( "%s\n", yytoks[yy_i].t_name );
- }
- }
- #endif
- if ( ++yy_ps >= &yys[ yymaxdepth ] ) /* room on stack? */
- {
- /*
- ** reallocate and recover. Note that pointers
- ** have to be reset, or bad things will happen
- */
- int yyps_index = (yy_ps - yys);
- int yypv_index = (yy_pv - yyv);
- int yypvt_index = (yypvt - yyv);
- yymaxdepth += YYMAXDEPTH;
- yyv = (YYSTYPE*)realloc((char*)yyv,
- yymaxdepth * sizeof(YYSTYPE));
- yys = (int*)realloc((char*)yys,
- yymaxdepth * sizeof(int));
- if (!yyv || !yys)
- {
- tsyserr("parse stack overflow" );
- return(1);
- }
- yy_ps = yys + yyps_index;
- yy_pv = yyv + yypv_index;
- yypvt = yyv + yypvt_index;
- }
- *yy_ps = yy_state;
- *++yy_pv = yyval;
-
- /*
- ** we have a new state - find out what to do
- */
- yy_newstate:
- if ( ( yy_n = yypact[ yy_state ] ) <= YYFLAG )
- goto yydefault; /* simple state */
- #if YYDEBUG
- /*
- ** if debugging, need to mark whether new token grabbed
- */
- yytmp = yychar < 0;
- #endif
- if ( ( yychar < 0 ) && ( ( yychar = yylex() ) < 0 ) )
- yychar = 0; /* reached EOF */
- #if YYDEBUG
- if ( yydebug && yytmp )
- {
- register int yy_i;
-
- (void)printf( "Received token " );
- if ( yychar == 0 )
- (void)printf( "end-of-file\n" );
- else if ( yychar < 0 )
- (void)printf( "-none-\n" );
- else
- {
- for ( yy_i = 0; yytoks[yy_i].t_val >= 0;
- yy_i++ )
- {
- if ( yytoks[yy_i].t_val == yychar )
- break;
- }
- (void)printf( "%s\n", yytoks[yy_i].t_name );
- }
- }
- #endif
- if ( ( ( yy_n += yychar ) < 0 ) || ( yy_n >= YYLAST ) )
- goto yydefault;
- if ( yychk[ yy_n = yyact[ yy_n ] ] == yychar ) /*valid shift*/
- {
- yychar = -1;
- yyval = yylval;
- yy_state = yy_n;
- if ( yyerrflag > 0 )
- yyerrflag--;
- goto yy_stack;
- }
-
- yydefault:
- if ( ( yy_n = yydef[ yy_state ] ) == -2 )
- {
- #if YYDEBUG
- yytmp = yychar < 0;
- #endif
- if ( ( yychar < 0 ) && ( ( yychar = yylex() ) < 0 ) )
- yychar = 0; /* reached EOF */
- #if YYDEBUG
- if ( yydebug && yytmp )
- {
- register int yy_i;
-
- (void)printf( "Received token " );
- if ( yychar == 0 )
- (void)printf( "end-of-file\n" );
- else if ( yychar < 0 )
- (void)printf( "-none-\n" );
- else
- {
- for ( yy_i = 0;
- yytoks[yy_i].t_val >= 0;
- yy_i++ )
- {
- if ( yytoks[yy_i].t_val
- == yychar )
- {
- break;
- }
- }
- (void)printf( "%s\n", yytoks[yy_i].t_name );
- }
- }
- #endif
- /*
- ** look through exception table
- */
- {
- register int *yyxi = yyexca;
-
- while ( ( *yyxi != -1 ) ||
- ( yyxi[1] != yy_state ) )
- {
- yyxi += 2;
- }
- while ( ( *(yyxi += 2) >= 0 ) &&
- ( *yyxi != yychar ) )
- ;
- if ( ( yy_n = yyxi[1] ) < 0 )
- YYACCEPT;
- }
- }
-
- /*
- ** check for syntax error
- */
- if ( yy_n == 0 ) /* have an error */
- {
- /* no worry about speed here! */
- switch ( yyerrflag )
- {
- case 0: /* new error */
- yyerror(yychar, yylval, yy_state );
- goto skip_init;
- yyerrlab:
- /*
- ** get globals into registers.
- ** we have a user generated syntax type error
- */
- yy_pv = yypv;
- yy_ps = yyps;
- yy_state = yystate;
- yynerrs++;
- skip_init:
- case 1:
- case 2: /* incompletely recovered error */
- /* try again... */
- yyerrflag = 3;
- /*
- ** find state where "error" is a legal
- ** shift action
- */
- while ( yy_ps >= yys )
- {
- yy_n = yypact[ *yy_ps ] + YYERRCODE;
- if ( yy_n >= 0 && yy_n < YYLAST &&
- yychk[yyact[yy_n]] == YYERRCODE) {
- /*
- ** simulate shift of "error"
- */
- yy_state = yyact[ yy_n ];
- goto yy_stack;
- }
- /*
- ** current state has no shift on
- ** "error", pop stack
- */
- #if YYDEBUG
- # define _POP_ "Error recovery pops state %d, uncovers state %d\n"
- if ( yydebug )
- (void)printf( _POP_, *yy_ps,
- yy_ps[-1] );
- # undef _POP_
- #endif
- yy_ps--;
- yy_pv--;
- }
- /*
- ** there is no state on stack with "error" as
- ** a valid shift. give up.
- */
- YYABORT;
- case 3: /* no shift yet; eat a token */
- #if YYDEBUG
- /*
- ** if debugging, look up token in list of
- ** pairs. 0 and negative shouldn't occur,
- ** but since timing doesn't matter when
- ** debugging, it doesn't hurt to leave the
- ** tests here.
- */
- if ( yydebug )
- {
- register int yy_i;
-
- (void)printf( "Error recovery discards " );
- if ( yychar == 0 )
- (void)printf( "token end-of-file\n" );
- else if ( yychar < 0 )
- (void)printf( "token -none-\n" );
- else
- {
- for ( yy_i = 0;
- yytoks[yy_i].t_val >= 0;
- yy_i++ )
- {
- if ( yytoks[yy_i].t_val
- == yychar )
- {
- break;
- }
- }
- (void)printf( "token %s\n",
- yytoks[yy_i].t_name );
- }
- }
- #endif
- if ( yychar == 0 ) /* reached EOF. quit */
- YYABORT;
- yychar = -1;
- goto yy_newstate;
- }
- }/* end if ( yy_n == 0 ) */
- /*
- ** reduction by production yy_n
- ** put stack tops, etc. so things right after switch
- */
- #if YYDEBUG
- /*
- ** if debugging, print the string that is the user's
- ** specification of the reduction which is just about
- ** to be done.
- */
- if ( yydebug )
- (void)printf( "Reduce by (%d) \"%s\"\n",
- yy_n, yyreds[ yy_n ] );
- #endif
- yytmp = yy_n; /* value to switch over */
- yypvt = yy_pv; /* $vars top of value stack */
- /*
- ** Look in goto table for next state
- ** Sorry about using yy_state here as temporary
- ** register variable, but why not, if it works...
- ** If yyr2[ yy_n ] doesn't have the low order bit
- ** set, then there is no action to be done for
- ** this reduction. So, no saving & unsaving of
- ** registers done. The only difference between the
- ** code just after the if and the body of the if is
- ** the goto yy_stack in the body. This way the test
- ** can be made before the choice of what to do is needed.
- */
- {
- /* length of production doubled with extra bit */
- register int yy_len = yyr2[ yy_n ];
-
- if ( !( yy_len & 01 ) )
- {
- yy_len >>= 1;
- yyval = ( yy_pv -= yy_len )[1]; /* $$ = $1 */
- yy_state = yypgo[ yy_n = yyr1[ yy_n ] ] +
- *( yy_ps -= yy_len ) + 1;
- if ( yy_state >= YYLAST ||
- yychk[ yy_state =
- yyact[ yy_state ] ] != -yy_n )
- {
- yy_state = yyact[ yypgo[ yy_n ] ];
- }
- goto yy_stack;
- }
- yy_len >>= 1;
- yyval = ( yy_pv -= yy_len )[1]; /* $$ = $1 */
- yy_state = yypgo[ yy_n = yyr1[ yy_n ] ] +
- *( yy_ps -= yy_len ) + 1;
- if ( yy_state >= YYLAST ||
- yychk[ yy_state = yyact[ yy_state ] ] != -yy_n )
- {
- yy_state = yyact[ yypgo[ yy_n ] ];
- }
- }
- /* save until reenter driver code */
- yystate = yy_state;
- yyps = yy_ps;
- yypv = yy_pv;
- }
- /*
- ** code supplied by user is placed in this switch
- */
- switch( yytmp )
- {
-
- case 1:
- # line 160 "expanded.g"
- {;} break;
- case 4:
- # line 165 "expanded.g"
- {;} break;
- case 5:
- # line 166 "expanded.g"
- {proc_lst->tree = yypvt[-0] ;} break;
- case 6:
- # line 167 "expanded.g"
- {;} break;
- case 7:
- # line 168 "expanded.g"
- {;} break;
- case 8:
- # line 169 "expanded.g"
- {} break;
- case 9:
- # line 171 "expanded.g"
- {;} break;
- case 11:
- # line 174 "expanded.g"
- {;} break;
- case 12:
- # line 176 "expanded.g"
- {lnkdcl(Str0(yypvt[-0])); ;} break;
- case 13:
- # line 177 "expanded.g"
- {lnkdcl(Str0(yypvt[-0])); ;} break;
- case 14:
- # line 179 "expanded.g"
- {;} break;
- case 16:
- # line 182 "expanded.g"
- {;} break;
- case 17:
- # line 184 "expanded.g"
- {invoc_grp(Str0(yypvt[-0])); ;} break;
- case 18:
- # line 185 "expanded.g"
- {invocbl(yypvt[-0], -1); ;} break;
- case 19:
- # line 186 "expanded.g"
- {invocbl(yypvt[-2], atoi(Str0(yypvt[-0]))); ;} break;
- case 20:
- # line 188 "expanded.g"
- {idflag = F_Global ;} break;
- case 21:
- # line 188 "expanded.g"
- {;} break;
- case 22:
- # line 190 "expanded.g"
- {init_rec(Str0(yypvt[-0])); idflag = F_Field ;} break;
- case 23:
- # line 190 "expanded.g"
- {
- ;
- } break;
- case 24:
- # line 194 "expanded.g"
- {;} break;
- case 25:
- # line 195 "expanded.g"
- {;} break;
- case 26:
- # line 197 "expanded.g"
- {
- yyval = tree6(N_Proc,yypvt[-5],yypvt[-5],yypvt[-2],yypvt[-1],yypvt[-0]) ;
- } break;
- case 27:
- # line 201 "expanded.g"
- {init_proc(Str0(yypvt[-0])); idflag = F_Argument ;} break;
- case 28:
- # line 201 "expanded.g"
- {
- ;
- } break;
- case 29:
- # line 205 "expanded.g"
- {;} break;
- case 30:
- # line 206 "expanded.g"
- {;} break;
- case 31:
- # line 207 "expanded.g"
- {proc_lst->nargs = -proc_lst->nargs ;} break;
- case 32:
- # line 210 "expanded.g"
- {
- install(Str0(yypvt[-0]),idflag) ;
- } break;
- case 33:
- # line 213 "expanded.g"
- {
- install(Str0(yypvt[-0]),idflag) ;
- } break;
- case 34:
- # line 217 "expanded.g"
- {;} break;
- case 35:
- # line 218 "expanded.g"
- {;} break;
- case 36:
- # line 220 "expanded.g"
- {idflag = F_Dynamic ;} break;
- case 37:
- # line 221 "expanded.g"
- {idflag = F_Static ;} break;
- case 38:
- # line 222 "expanded.g"
- {idflag = F_Dynamic ;} break;
- case 39:
- # line 224 "expanded.g"
- {yyval = tree1(N_Empty) ;} break;
- case 40:
- # line 225 "expanded.g"
- {yyval = yypvt[-1] ;} break;
- case 41:
- # line 227 "expanded.g"
- {yyval = tree1(N_Empty) ;} break;
- case 42:
- # line 228 "expanded.g"
- {yyval = tree4(N_Slist,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 43:
- # line 230 "expanded.g"
- {yyval = tree1(N_Empty) ;} break;
- case 46:
- # line 234 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 48:
- # line 237 "expanded.g"
- {yyval = tree5(N_Scan,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 50:
- # line 240 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 51:
- # line 241 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 52:
- # line 242 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 53:
- # line 243 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 54:
- # line 244 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 55:
- # line 245 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 56:
- # line 246 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 57:
- # line 247 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 58:
- # line 248 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 59:
- # line 249 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 60:
- # line 250 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 61:
- # line 251 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 62:
- # line 252 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 63:
- # line 253 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 64:
- # line 254 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 65:
- # line 255 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 66:
- # line 256 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 67:
- # line 257 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 68:
- # line 258 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 69:
- # line 259 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 70:
- # line 260 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 71:
- # line 261 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 72:
- # line 262 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 73:
- # line 263 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 74:
- # line 264 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 75:
- # line 265 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 76:
- # line 266 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 77:
- # line 267 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 78:
- # line 268 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 79:
- # line 269 "expanded.g"
- {yyval = tree5(N_Scan,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 80:
- # line 270 "expanded.g"
- {yyval = aug_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 81:
- # line 271 "expanded.g"
- {yyval = tree5(N_Activat,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 83:
- # line 274 "expanded.g"
- {yyval = to_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 84:
- # line 275 "expanded.g"
- {yyval = toby_nd(yypvt[-3],yypvt[-4],yypvt[-2],yypvt[-0]) ;} break;
- case 86:
- # line 278 "expanded.g"
- {yyval = tree4(N_Alt,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 88:
- # line 281 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 89:
- # line 282 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 90:
- # line 283 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 91:
- # line 284 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 92:
- # line 285 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 93:
- # line 286 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 94:
- # line 287 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 95:
- # line 288 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 96:
- # line 289 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 97:
- # line 290 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 98:
- # line 291 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 99:
- # line 292 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 100:
- # line 293 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 101:
- # line 294 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 103:
- # line 297 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 104:
- # line 298 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 106:
- # line 301 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 107:
- # line 302 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 108:
- # line 303 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 109:
- # line 304 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 111:
- # line 307 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 112:
- # line 308 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 113:
- # line 309 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 114:
- # line 310 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 116:
- # line 313 "expanded.g"
- {yyval = binary_nd(yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 118:
- # line 316 "expanded.g"
- {yyval = tree4(N_Limit,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 119:
- # line 317 "expanded.g"
- {yyval = tree5(N_Activat,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 120:
- # line 318 "expanded.g"
- {yyval = tree4(N_Apply,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 122:
- # line 321 "expanded.g"
- {yyval = tree5(N_Activat,yypvt[-1],yypvt[-1],tree1(N_Empty) ,yypvt[-0]) ;} break;
- case 123:
- # line 322 "expanded.g"
- {yyval = tree3(N_Not,yypvt[-0],yypvt[-0]) ;} break;
- case 124:
- # line 323 "expanded.g"
- {yyval = tree3(N_Bar,yypvt[-0],yypvt[-0]) ;} break;
- case 125:
- # line 324 "expanded.g"
- {yyval = tree3(N_Bar,yypvt[-0],yypvt[-0]) ;} break;
- case 126:
- # line 325 "expanded.g"
- {yyval = tree3(N_Bar,yypvt[-0],yypvt[-0]) ;} break;
- case 127:
- # line 326 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 128:
- # line 327 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 129:
- # line 328 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 130:
- # line 329 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 131:
- # line 330 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 132:
- # line 331 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 133:
- # line 332 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 134:
- # line 333 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 135:
- # line 334 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 136:
- # line 335 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 137:
- # line 336 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 138:
- # line 337 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 139:
- # line 338 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 140:
- # line 339 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 141:
- # line 340 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 142:
- # line 341 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 143:
- # line 342 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 144:
- # line 343 "expanded.g"
- {yyval = MultiUnary(yypvt[-1],yypvt[-0]) ;} break;
- case 145:
- # line 344 "expanded.g"
- {yyval = unary_nd(yypvt[-1],yypvt[-0]) ;} break;
- case 155:
- # line 355 "expanded.g"
- {yyval = tree3(N_Create,yypvt[-1],yypvt[-0]); proc_lst->has_coexpr = 1; ;} break;
- case 156:
- # line 356 "expanded.g"
- {LSym0(yypvt[-0]) = putloc(Str0(yypvt[-0]),0) ;} break;
- case 157:
- # line 357 "expanded.g"
- {yyval = tree2(N_Next,yypvt[-0]) ;} break;
- case 158:
- # line 358 "expanded.g"
- {yyval = tree3(N_Break,yypvt[-1],yypvt[-0]) ;} break;
- case 159:
- # line 359 "expanded.g"
- {if ((yypvt[-1])->n_type == N_Elist) yyval = invk_nd(yypvt[-2],tree1(N_Empty) ,yypvt[-1]); else yyval = yypvt[-1] ;} break;
- case 160:
- # line 360 "expanded.g"
- {yyval = yypvt[-1] ;} break;
- case 161:
- # line 361 "expanded.g"
- {yyval = list_nd(yypvt[-2],yypvt[-1]) ;} break;
- case 162:
- # line 362 "expanded.g"
- {yyval = buildarray(yypvt[-3],yypvt[-2],yypvt[-1]) ;} break;
- case 163:
- # line 363 "expanded.g"
- {yyval = invk_nd(yypvt[-1],yypvt[-2],list_nd(yypvt[-1],tree1(N_Empty) )) ;} break;
- case 164:
- # line 364 "expanded.g"
- {yyval = invk_nd(yypvt[-2],yypvt[-3],list_nd(yypvt[-2],yypvt[-1])) ;} break;
- case 165:
- # line 365 "expanded.g"
- {yyval = invk_nd(yypvt[-2],yypvt[-3],yypvt[-1]) ;} break;
- case 166:
- # line 366 "expanded.g"
- {yyval = tree4(N_Field,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 167:
- # line 367 "expanded.g"
- {yyval = key_leaf(yypvt[-1],spec_str("fail")) ;} break;
- case 168:
- # line 368 "expanded.g"
- {yyval = key_leaf(yypvt[-1],Str0(yypvt[-0])) ;} break;
- case 169:
- # line 370 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break;
- case 170:
- # line 371 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break;
- case 171:
- # line 373 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break;
- case 172:
- # line 374 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break;
- case 173:
- # line 376 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break;
- case 174:
- # line 377 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break;
- case 175:
- # line 379 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break;
- case 176:
- # line 381 "expanded.g"
- {yyval = tree4(N_Ret,yypvt[-0],yypvt[-0],tree1(N_Empty) ) ;} break;
- case 177:
- # line 382 "expanded.g"
- {yyval = tree4(N_Ret,yypvt[-1],yypvt[-1],yypvt[-0]) ;} break;
- case 178:
- # line 383 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break;
- case 179:
- # line 384 "expanded.g"
- {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break;
- case 180:
- # line 386 "expanded.g"
- {yyval = tree5(N_If,yypvt[-3],yypvt[-2],yypvt[-0],tree1(N_Empty) ) ;} break;
- case 181:
- # line 387 "expanded.g"
- {yyval = tree5(N_If,yypvt[-5],yypvt[-4],yypvt[-2],yypvt[-0]) ;} break;
- case 182:
- # line 389 "expanded.g"
- {yyval = case_nd(yypvt[-5],yypvt[-4],yypvt[-1]) ;} break;
- case 184:
- # line 392 "expanded.g"
- {yyval = tree4(N_Clist,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 185:
- # line 394 "expanded.g"
- {yyval = tree4(N_Ccls,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 186:
- # line 395 "expanded.g"
- {yyval = tree4(N_Ccls,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- case 187:
- # line 397 "expanded.g"
- {yyval = yypvt[-0]; ;} break;
- case 188:
- # line 398 "expanded.g"
- {yyval = tree4(N_Elist,yypvt[-1],yypvt[-2],yypvt[-0]); ;} break;
- case 189:
- # line 400 "expanded.g"
- {
- yyval = tree3(N_Create,yypvt[-0],yypvt[-0]); proc_lst->has_coexpr = 1; ;
- } break;
- case 190:
- # line 403 "expanded.g"
- {
- yyval =tree4(N_Elist,yypvt[-1],yypvt[-2],tree3(N_Create,yypvt[-1],yypvt[-0])); proc_lst->has_coexpr = 1; ;
- } break;
- case 191:
- # line 407 "expanded.g"
- {CSym0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_IntLit,0) ;} break;
- case 192:
- # line 408 "expanded.g"
- {CSym0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_RealLit,0) ;} break;
- case 193:
- # line 409 "expanded.g"
- {CSym0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_StrLit,(int)Val1(yypvt[-0])) ;} break;
- case 194:
- # line 410 "expanded.g"
- {CSym0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_CsetLit,(int)Val1(yypvt[-0])) ;} break;
- case 195:
- # line 412 "expanded.g"
- {yyval = sect_nd(yypvt[-2],yypvt[-5],yypvt[-3],yypvt[-1]) ;} break;
- case 196:
- # line 414 "expanded.g"
- {yyval = yypvt[-0] ;} break;
- case 197:
- # line 415 "expanded.g"
- {yyval = yypvt[-0] ;} break;
- case 198:
- # line 416 "expanded.g"
- {yyval = yypvt[-0] ;} break;
- case 200:
- # line 419 "expanded.g"
- {yyval = tree4(N_Slist,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break;
- }
- goto yystack; /* reset registers in driver code */
- }
-