# define CSETLIT 257 # define EOFX 258 # define IDENT 259 # define INTLIT 260 # define REALLIT 261 # define STRINGLIT 262 # define BREAK 263 # define BY 264 # define CASE 265 # define CREATE 266 # define DEFAULT 267 # define DO 268 # define ELSE 269 # define END 270 # define EVERY 271 # define FAIL 272 # define GLOBAL 273 # define IF 274 # define INITIAL 275 # define LINK 276 # define LOCAL 277 # define NEXT 278 # define NOT 279 # define OF 280 # define PROCEDURE 281 # define RECORD 282 # define REPEAT 283 # define RETURN 284 # define STATIC 285 # define SUSPEND 286 # define THEN 287 # define TO 288 # define UNTIL 289 # define WHILE 290 # define ASSIGN 291 # define AT 292 # define AUGACT 293 # define AUGAND 294 # define AUGEQ 295 # define AUGEQV 296 # define AUGGE 297 # define AUGGT 298 # define AUGLE 299 # define AUGLT 300 # define AUGNE 301 # define AUGNEQV 302 # define AUGSEQ 303 # define AUGSGE 304 # define AUGSGT 305 # define AUGSLE 306 # define AUGSLT 307 # define AUGSNE 308 # define BACKSLASH 309 # define BANG 310 # define BAR 311 # define CARET 312 # define CARETASGN 313 # define COLON 314 # define COMMA 315 # define CONCAT 316 # define CONCATASGN 317 # define CONJUNC 318 # define DIFF 319 # define DIFFASGN 320 # define DOT 321 # define EQUIV 322 # define INTER 323 # define INTERASGN 324 # define LBRACE 325 # define LBRACK 326 # define LCONCAT 327 # define LCONCATASGN 328 # define LEXEQ 329 # define LEXGE 330 # define LEXGT 331 # define LEXLE 332 # define LEXLT 333 # define LEXNE 334 # define LPAREN 335 # define MCOLON 336 # define MINUS 337 # define MINUSASGN 338 # define MOD 339 # define MODASGN 340 # define NOTEQUIV 341 # define NUMEQ 342 # define NUMGE 343 # define NUMGT 344 # define NUMLE 345 # define NUMLT 346 # define NUMNE 347 # define PCOLON 348 # define PLUS 349 # define PLUSASGN 350 # define QMARK 351 # define RBRACE 352 # define RBRACK 353 # define REVASSIGN 354 # define REVSWAP 355 # define RPAREN 356 # define SCANASGN 357 # define SEMICOL 358 # define SLASH 359 # define SLASHASGN 360 # define STAR 361 # define STARASGN 362 # define SWAP 363 # define TILDE 364 # define UNION 365 # define UNIONASGN 366 # line 138 "expanded.g" #include "..\h\config.h" #include "tproto.h" #include "trans.h" #include "tsym.h" #include "tree.h" #include "..\h\keyword.h" #define YYSTYPE nodeptr #define YYMAXDEPTH 500 extern int fncargs[]; int idflag; int id_cnt; int key_num; #define yyclearin yychar = -1 #define yyerrok yyerrflag = 0 extern int yychar; extern short yyerrflag; #ifndef YYMAXDEPTH #define YYMAXDEPTH 150 #endif #ifndef YYSTYPE #define YYSTYPE int #endif YYSTYPE yylval, yyval; # define YYERRCODE 256 # line 431 "expanded.g" short yyexca[] ={ -1, 1, 0, -1, -2, 0, -1, 18, 358, 35, -2, 33, -1, 103, 358, 35, -2, 33, -1, 109, 358, 35, -2, 33, }; # define YYNPROD 196 # define YYLAST 784 short yyact[]={ 32, 88, 163, 78, 85, 86, 87, 80, 167, 93, 77, 343, 110, 348, 220, 96, 89, 303, 92, 349, 165, 18, 79, 45, 169, 109, 335, 97, 90, 314, 91, 301, 162, 95, 94, 301, 44, 301, 302, 110, 345, 319, 111, 325, 168, 177, 166, 342, 164, 175, 174, 340, 317, 67, 50, 46, 55, 316, 222, 176, 47, 102, 84, 51, 331, 49, 63, 56, 110, 82, 83, 48, 326, 61, 346, 304, 300, 310, 62, 81, 324, 58, 350, 160, 321, 66, 59, 220, 110, 309, 306, 60, 351, 52, 161, 65, 110, 308, 336, 35, 110, 305, 220, 54, 307, 53, 323, 100, 57, 64, 32, 88, 206, 78, 85, 86, 87, 80, 322, 93, 77, 110, 315, 17, 318, 96, 89, 110, 92, 108, 99, 22, 79, 45, 23, 172, 210, 97, 90, 110, 91, 311, 110, 95, 94, 299, 44, 110, 105, 209, 106, 110, 171, 173, 101, 170, 26, 3, 107, 38, 31, 21, 320, 67, 50, 46, 55, 98, 341, 25, 47, 204, 84, 51, 28, 49, 63, 56, 2, 82, 83, 48, 15, 61, 12, 296, 76, 13, 62, 81, 75, 58, 14, 10, 74, 66, 59, 73, 72, 40, 71, 60, 70, 52, 69, 65, 295, 68, 39, 43, 41, 36, 34, 54, 104, 53, 4, 312, 57, 64, 32, 88, 24, 78, 85, 86, 87, 80, 103, 93, 77, 12, 27, 11, 13, 96, 89, 223, 92, 14, 10, 16, 79, 45, 263, 264, 19, 97, 90, 20, 91, 9, 8, 95, 94, 208, 44, 7, 6, 5, 1, 0, 221, 0, 0, 0, 0, 0, 0, 0, 224, 229, 226, 67, 50, 46, 55, 0, 225, 0, 47, 0, 84, 51, 228, 49, 63, 56, 0, 82, 83, 48, 0, 61, 0, 0, 0, 0, 62, 81, 0, 58, 0, 0, 0, 66, 59, 0, 0, 0, 0, 60, 0, 52, 0, 65, 0, 0, 0, 0, 279, 280, 0, 54, 0, 53, 0, 0, 57, 64, 88, 0, 78, 85, 86, 87, 80, 0, 93, 77, 0, 0, 0, 0, 96, 89, 0, 92, 298, 0, 0, 79, 45, 0, 0, 0, 97, 90, 0, 91, 0, 0, 95, 94, 0, 44, 285, 286, 287, 288, 289, 281, 282, 283, 284, 0, 0, 0, 0, 0, 0, 0, 67, 50, 46, 55, 30, 0, 0, 47, 313, 84, 51, 0, 49, 63, 56, 352, 82, 83, 48, 0, 61, 0, 0, 0, 0, 62, 81, 0, 58, 0, 0, 0, 66, 59, 328, 0, 337, 0, 60, 0, 52, 0, 65, 0, 0, 0, 0, 0, 0, 0, 54, 0, 53, 0, 144, 57, 64, 113, 0, 143, 142, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 29, 0, 0, 0, 126, 0, 0, 202, 116, 0, 0, 118, 0, 0, 0, 123, 0, 33, 0, 117, 0, 213, 214, 215, 216, 217, 218, 219, 0, 121, 0, 125, 37, 0, 0, 227, 0, 0, 0, 0, 0, 120, 0, 0, 145, 115, 114, 0, 141, 0, 0, 124, 0, 122, 112, 158, 0, 119, 0, 0, 42, 0, 146, 147, 148, 149, 150, 151, 0, 0, 0, 0, 0, 0, 159, 152, 153, 154, 155, 156, 157, 203, 205, 207, 205, 0, 0, 0, 0, 0, 0, 211, 212, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 293, 297, 205, 0, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 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, 290, 291, 292, 329, 330, 0, 332, 333, 334, 0, 0, 0, 0, 0, 0, 0, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 344, 0, 0, 0, 0, 0, 0, 0, 0, 347, 0, 0, 0, 0, 0, 0, 0, 0, 344, 353, 354, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 327, 0, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339 }; short yypact[]={ -99,-1000, -42,-1000,-1000,-1000,-1000,-1000,-1000,-1000, -1000,-235,-1000,-128,-1000, -89,-103,-1000, -36,-129, -208,-1000,-1000,-1000,-105,-1000,-274,-127,-141,-333, -250,-309,-1000,-1000, 148,-1000, 190,-233,-317,-315, -1000,-157,-1000,-276, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,-1000,-1000, -1000,-1000,-1000,-1000,-1000,-1000,-1000, -36,-1000,-1000, -36, -36, -36, -36,-123,-1000,-1000,-1000,-1000,-1000, -36, -36, -36, -36, -36, -36, -36, -36,-213,-1000, -128,-277,-129, -36,-129, -36,-1000,-1000,-1000, -36, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, -36,-146, -36,-114,-1000,-1000, -1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000, -1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000,-1000, -1000,-1000,-250,-1000,-280,-1000,-314,-341,-278,-1000, -1000,-1000,-1000,-167,-197,-176,-171,-179,-191,-250, -118,-1000,-129,-327,-213,-148,-301,-306,-1000,-309, -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,-140,-1000,-233,-233,-233,-233,-233, -233,-233,-233,-233,-233,-233,-233,-233,-233,-317, -317,-315,-315,-315,-315,-1000,-1000,-1000,-1000,-1000, -1000,-1000,-1000,-312,-230,-1000,-272,-1000,-284,-1000, -1000, -36,-1000, -36,-1000, -36, -36,-261, -36, -36, -36,-1000,-330,-228,-1000,-1000,-1000,-1000, 73,-1000, -36,-1000,-1000,-1000,-1000, -36,-1000,-1000,-1000,-250, -218,-256,-250,-250,-250,-1000,-313,-1000,-279,-1000, -36,-339,-1000,-232,-222,-1000,-1000,-250,-1000,-256, -36, -36,-1000,-250,-250 }; short yypgo[]={ 0, 260, 178, 259, 258, 257, 252, 251, 249, 161, 246, 167, 241, 237, 233, 232, 228, 174, 222, 217, 214, 386, 457, 160, 474, 212, 99, 211, 489, 159, 208, 199, 210, 517, 209, 207, 204, 202, 200, 198, 197, 194, 190, 186, 171, 112, 185, 168, 47, 162 }; short yyr1[]={ 0, 1, 2, 2, 3, 3, 3, 3, 7, 8, 8, 9, 9, 10, 6, 12, 4, 13, 13, 5, 18, 14, 19, 19, 19, 11, 11, 15, 15, 20, 20, 16, 16, 17, 17, 22, 22, 21, 21, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28, 28, 28, 29, 29, 29, 29, 29, 30, 30, 30, 30, 30, 31, 31, 32, 32, 32, 32, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 40, 40, 41, 41, 42, 42, 43, 37, 37, 37, 37, 38, 38, 39, 47, 47, 48, 48, 44, 44, 46, 46, 35, 35, 35, 35, 36, 49, 49, 49, 45, 45, 1, 5, 21 }; short yyr2[]={ 0, 2, 0, 2, 1, 1, 1, 1, 2, 1, 3, 1, 1, 0, 3, 0, 6, 0, 1, 6, 0, 6, 0, 1, 3, 1, 3, 0, 4, 1, 1, 0, 3, 0, 3, 0, 1, 1, 3, 1, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 5, 1, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 1, 3, 3, 3, 3, 1, 3, 3, 3, 3, 1, 3, 1, 3, 3, 3, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 3, 3, 3, 4, 3, 4, 4, 3, 2, 2, 2, 4, 2, 4, 2, 4, 2, 1, 2, 2, 4, 4, 6, 6, 1, 3, 3, 3, 1, 3, 1, 3, 1, 1, 1, 1, 6, 1, 1, 1, 1, 3, 3, 4, 1 }; short yychk[]={ -1000, -1, -2, 256, 258, -3, -4, -5, -6, -7, 282, -14, 273, 276, 281, -2, -12, 358, 256, -10, -8, -9, 259, 262, -18, 258, 259, -15, -17, -22, -21, -23, 256, -24, -25, -26, -27, -28, -29, -30, -31, -32, -33, -34, 292, 279, 311, 316, 327, 321, 310, 319, 349, 361, 359, 312, 323, 364, 337, 342, 347, 329, 334, 322, 365, 351, 341, 309, -35, -36, -37, -38, -39, -40, -41, -42, -43, 266, 259, 278, 263, 335, 325, 326, 318, 260, 261, 262, 257, 272, 284, 286, 274, 265, 290, 289, 271, 283, -11, 259, 315, 259, 335, -16, -20, 275, 277, 285, 270, 358, 318, 351, 363, 291, 355, 354, 317, 328, 320, 366, 350, 338, 362, 324, 360, 340, 313, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 357, 294, 293, 288, 311, 329, 330, 331, 332, 333, 334, 342, 343, 344, 345, 346, 347, 322, 341, 316, 327, 349, 319, 365, 337, 361, 323, 359, 339, 312, 309, 292, 310, 326, 325, 335, 321, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -21, -22, -44, -22, -45, -22, -44, 272, 259, -22, -22, -21, -21, -21, -21, -21, -21, -21, 315, -9, 335, -13, -11, -17, -11, -21, -17, -23, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -26, -26, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -29, -29, -30, -30, -30, -30, -31, -31, -31, -31, -31, -33, -33, -33, -22, -21, 352, -46, -22, -44, 259, 356, 315, 352, 358, 353, 268, 287, 280, 268, 268, 268, 259, -19, -11, 356, 270, 358, 358, 264, 353, -49, 314, 348, 336, 352, 315, 356, -22, -45, -21, -21, 325, -21, -21, -21, 356, 326, -26, -21, -22, 269, -47, -48, 267, -21, 353, 353, -21, 352, 358, 314, 314, -48, -21, -21 }; short yydef[]={ 2, -2, 0, 2, 1, 3, 4, 5, 6, 7, 15, 0, 13, 0, 20, 0, 0, 27, -2, 0, 8, 9, 11, 12, 0, 193, 0, 31, 0, 0, 36, 37, 195, 39, 41, 74, 77, 79, 94, 97, 102, 107, 109, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 138, 139, 140, 141, 142, 143, 144, 145, 146, 0, 148, 149, 35, 35, 35, 35, 0, 183, 184, 185, 186, 168, 35, 35, 0, 0, 0, 0, 0, 0, 14, 25, 0, 0, 17, -2, 0, 0, 29, 30, 194, -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, 35, 35, 35, 0, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 147, 150, 0, 179, 0, 191, 0, 159, 160, 169, 170, 36, 0, 0, 161, 163, 165, 167, 0, 10, 22, 0, 18, 0, 0, 0, 34, 38, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 75, 78, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 95, 96, 98, 99, 100, 101, 103, 104, 105, 106, 108, 110, 111, 112, 0, 36, 155, 0, 181, 0, 158, 151, 35, 152, 35, 153, 0, 0, 0, 0, 0, 0, 26, 0, 23, 16, 19, 28, 32, 0, 154, 0, 188, 189, 190, 156, 35, 157, 180, 192, 171, 172, 0, 162, 164, 166, 21, 0, 76, 0, 182, 0, 0, 175, 0, 0, 24, 187, 173, 174, 0, 0, 0, 176, 177, 178 }; #ifndef lint static char yaccpar_sccsid[] = "@(#)yaccpar 4.1 (Berkeley) 2/11/83"; #endif # define YYFLAG -1000 # define YYERROR goto yyerrlab # define YYACCEPT return(0) # define YYABORT return(1) /* parser for yacc output */ #ifdef YYDEBUG int yydebug = 0; /* 1 for debugging */ #endif YYSTYPE yyv[YYMAXDEPTH]; /* where the values are stored */ int yychar = -1; /* current input token number */ int yynerrs = 0; /* number of errors */ short yyerrflag = 0; /* error recovery flag */ yyparse() { short yys[YYMAXDEPTH]; short yyj, yym; register YYSTYPE *yypvt; register short yystate, *yyps, yyn; register YYSTYPE *yypv; register short *yyxi; yystate = 0; yychar = -1; yynerrs = 0; yyerrflag = 0; yyps= &yys[-1]; yypv= &yyv[-1]; yystack: /* put a state and value onto the stack */ #ifdef YYDEBUG if( yydebug ) printf( "state %d, char 0%o\n", yystate, yychar ); #endif if( ++yyps> &yys[YYMAXDEPTH] ) { tsyserr( "parse stack overflow" ); return(1); } *yyps = yystate; ++yypv; *yypv = yyval; yynewstate: yyn = yypact[yystate]; if( yyn<= YYFLAG ) goto yydefault; /* simple state */ if( yychar<0 ) if( (yychar=yylex())<0 ) yychar=0; if( (yyn += yychar)<0 || yyn >= YYLAST ) goto yydefault; if( yychk[ yyn=yyact[ yyn ] ] == yychar ){ /* valid shift */ yychar = -1; yyval = yylval; yystate = yyn; if( yyerrflag > 0 ) --yyerrflag; goto yystack; } yydefault: /* default state action */ if( (yyn=yydef[yystate]) == -2 ) { if( yychar<0 ) if( (yychar=yylex())<0 ) yychar = 0; /* look through exception table */ for( yyxi=yyexca; (*yyxi!= (-1)) || (yyxi[1]!=yystate) ; yyxi += 2 ) ; /* VOID */ while( *(yyxi+=2) >= 0 ){ if( *yyxi == yychar ) break; } if( (yyn = yyxi[1]) < 0 ) return(0); /* accept */ } if( yyn == 0 ){ /* error */ /* error ... attempt to resume parsing */ switch( yyerrflag ){ case 0: /* brand new error */ yyerror( yychar, yylval, yystate ); yyerrlab: ++yynerrs; case 1: case 2: /* incompletely recovered error ... try again */ yyerrflag = 3; /* find a state where "error" is a legal shift action */ while ( yyps >= yys ) { yyn = yypact[*yyps] + YYERRCODE; if( yyn>= 0 && yyn < YYLAST && yychk[yyact[yyn]] == YYERRCODE ){ yystate = yyact[yyn]; /* simulate a shift of "error" */ goto yystack; } yyn = yypact[*yyps]; /* the current yyps has no shift onn "error", pop stack */ #ifdef YYDEBUG if( yydebug ) printf( "error recovery pops state %d, uncovers %d\n", *yyps, yyps[-1] ); #endif --yyps; --yypv; } /* there is no state on the stack with an error shift ... abort */ yyabort: return(1); case 3: /* no shift yet; clobber input char */ #ifdef YYDEBUG if( yydebug ) printf( "error recovery discards char %d\n", yychar ); #endif if( yychar == 0 ) goto yyabort; /* don't discard EOF, quit */ yychar = -1; goto yynewstate; /* try again in the same state */ } } /* reduction by production yyn */ #ifdef YYDEBUG if( yydebug ) printf("reduce %d\n",yyn); #endif yyps -= yyr2[yyn]; yypvt = yypv; yypv -= yyr2[yyn]; yyval = yypv[1]; yym=yyn; /* consult goto table to find next state */ yyn = yyr1[yyn]; yyj = yypgo[yyn] + *yyps + 1; if( yyj>=YYLAST || yychk[ yystate = yyact[yyj] ] != -yyn ) yystate = yyact[yypgo[yyn]]; switch(yym){ case 1: # line 161 "expanded.g" {gout(globfile);} break; case 4: # line 166 "expanded.g" {if (!nocode) rout(globfile, Str0(yypvt[-0])); nocode = 0; loc_init();} break; case 5: # line 170 "expanded.g" {if (!nocode) codegen(yypvt[-0]); nocode = 0; treeinit(); loc_init();} break; case 6: # line 175 "expanded.g" {;} break; case 7: # line 176 "expanded.g" {;} break; case 8: # line 178 "expanded.g" {;} break; case 10: # line 181 "expanded.g" {;} break; case 11: # line 183 "expanded.g" {addlfile(Str0(yypvt[-0]));} break; case 12: # line 184 "expanded.g" {addlfile(Str0(yypvt[-0]));} break; case 13: # line 186 "expanded.g" {idflag = F_Global;} break; case 14: # line 186 "expanded.g" {;} break; case 15: # line 188 "expanded.g" {idflag = F_Argument;} break; case 16: # line 188 "expanded.g" { install(Str0(yypvt[-3]),F_Record|F_Global,id_cnt); yyval = yypvt[-3]; } break; case 17: # line 193 "expanded.g" {id_cnt = 0;} break; case 18: # line 194 "expanded.g" {;} break; case 19: # line 196 "expanded.g" { yyval = tree6(N_Proc,yypvt[-5],yypvt[-5],yypvt[-2],yypvt[-1],yypvt[-0]); } break; case 20: # line 200 "expanded.g" {idflag = F_Argument;} break; case 21: # line 200 "expanded.g" { yyval = yypvt[-3]; install(Str0(yypvt[-3]),F_Proc|F_Global,id_cnt); } break; case 22: # line 205 "expanded.g" {id_cnt = 0;} break; case 23: # line 206 "expanded.g" {;} break; case 24: # line 207 "expanded.g" {id_cnt = -id_cnt;} break; case 25: # line 210 "expanded.g" { install(Str0(yypvt[-0]),idflag,0); id_cnt = 1; } break; case 26: # line 214 "expanded.g" { install(Str0(yypvt[-0]),idflag,0); ++id_cnt; } break; case 27: # line 219 "expanded.g" {;} break; case 28: # line 220 "expanded.g" {;} break; case 29: # line 222 "expanded.g" {idflag = F_Dynamic;} break; case 30: # line 223 "expanded.g" {idflag = F_Static;} break; case 31: # line 225 "expanded.g" {yyval = tree1(N_Empty) ;} break; case 32: # line 226 "expanded.g" {yyval = yypvt[-1];} break; case 33: # line 228 "expanded.g" {yyval = tree1(N_Empty) ;} break; case 34: # line 229 "expanded.g" {yyval = tree4(N_Slist,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 35: # line 231 "expanded.g" {yyval = tree1(N_Empty) ;} break; case 38: # line 235 "expanded.g" {yyval = tree5(N_Conj,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 40: # line 238 "expanded.g" {yyval = tree5(N_Scan,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 42: # line 241 "expanded.g" case 43: # line 242 "expanded.g" case 44: # line 243 "expanded.g" case 45: # line 244 "expanded.g" {yyval = tree5(N_Binop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 46: # line 245 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 47: # line 246 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 48: # line 247 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 49: # line 248 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 50: # line 249 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 51: # line 250 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 52: # line 251 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 53: # line 252 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 54: # line 253 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 55: # line 254 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 56: # line 255 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 57: # line 256 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 58: # line 257 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 59: # line 258 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 60: # line 259 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 61: # line 260 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 62: # line 261 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 63: # line 262 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 64: # line 263 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 65: # line 264 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 66: # line 265 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 67: # line 266 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 68: # line 267 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 69: # line 268 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 70: # line 269 "expanded.g" {yyval = tree5(N_Augop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 71: # line 270 "expanded.g" {yyval = tree5(N_Scan,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 72: # line 271 "expanded.g" {yyval = tree5(N_Conj,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 73: # line 272 "expanded.g" {yyval = tree5(N_Activat,yypvt[-1],yypvt[-1],yypvt[-0],yypvt[-2]) ;} break; case 75: # line 275 "expanded.g" {yyval = tree4(N_To,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 76: # line 276 "expanded.g" {yyval = tree5(N_ToBy,yypvt[-3],yypvt[-4],yypvt[-2],yypvt[-0]) ;} break; case 78: # line 279 "expanded.g" {yyval = tree4(N_Alt,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 80: # line 282 "expanded.g" case 81: # line 283 "expanded.g" case 82: # line 284 "expanded.g" case 83: # line 285 "expanded.g" case 84: # line 286 "expanded.g" case 85: # line 287 "expanded.g" case 86: # line 288 "expanded.g" case 87: # line 289 "expanded.g" case 88: # line 290 "expanded.g" case 89: # line 291 "expanded.g" case 90: # line 292 "expanded.g" case 91: # line 293 "expanded.g" case 92: # line 294 "expanded.g" case 93: # line 295 "expanded.g" case 95: # line 298 "expanded.g" case 96: # line 299 "expanded.g" case 98: # line 302 "expanded.g" case 99: # line 303 "expanded.g" case 100: # line 304 "expanded.g" case 101: # line 305 "expanded.g" case 103: # line 308 "expanded.g" case 104: # line 309 "expanded.g" case 105: # line 310 "expanded.g" case 106: # line 311 "expanded.g" case 108: # line 314 "expanded.g" {yyval = tree5(N_Binop,yypvt[-1],yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 110: # line 317 "expanded.g" {yyval = tree4(N_Limit,yypvt[-2],yypvt[-2],yypvt[-0]) ;} break; case 111: # line 318 "expanded.g" {yyval = tree5(N_Activat,yypvt[-1],yypvt[-1],yypvt[-0],yypvt[-2]) ;} break; case 112: # line 319 "expanded.g" {yyval = tree4(N_Apply,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 114: # line 322 "expanded.g" {yyval = tree5(N_Activat,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break; case 115: # line 323 "expanded.g" {yyval = tree3(N_Not,yypvt[-0],yypvt[-0]) ;} break; case 116: # line 324 "expanded.g" {yyval = tree3(N_Bar,yypvt[-0],yypvt[-0]) ;} break; case 117: # line 325 "expanded.g" {yyval = tree3(N_Bar,yypvt[-0],yypvt[-0]) ;} break; case 118: # line 326 "expanded.g" {yyval = tree3(N_Bar,yypvt[-0],yypvt[-0]) ;} break; case 119: # line 327 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 120: # line 328 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 121: # line 329 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 122: # line 330 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 123: # line 331 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 124: # line 332 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 125: # line 333 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 126: # line 334 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 127: # line 335 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 128: # line 336 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 129: # line 337 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 130: # line 338 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 131: # line 339 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 132: # line 340 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 133: # line 341 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 134: # line 342 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 135: # line 343 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 136: # line 344 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 137: # line 345 "expanded.g" {yyval = tree4(N_Unop,yypvt[-1],yypvt[-1],yypvt[-0]);} break; case 147: # line 355 "expanded.g" {yyval = tree3(N_Create,yypvt[-1],yypvt[-0]) ;} break; case 148: # line 356 "expanded.g" {Val0(yypvt[-0]) = putloc(Str0(yypvt[-0]),0);} break; case 149: # line 357 "expanded.g" {yyval = tree2(N_Next,yypvt[-0]) ;} break; case 150: # line 358 "expanded.g" {yyval = tree3(N_Break,yypvt[-1],yypvt[-0]) ;} break; case 151: # line 359 "expanded.g" {if ((yypvt[-1])->n_type == N_Elist) yyval = tree4(N_Invok,yypvt[-2],tree1(N_Empty) ,yypvt[-1]); else yyval = yypvt[-1];} break; case 152: # line 363 "expanded.g" {yyval = yypvt[-1];} break; case 153: # line 364 "expanded.g" {yyval = tree3(N_List,yypvt[-2],yypvt[-1]) ;} break; case 154: # line 365 "expanded.g" {yyval = tree5(N_Binop,yypvt[-2],yypvt[-2],yypvt[-3],yypvt[-1]);} break; case 155: # line 366 "expanded.g" {yyval = tree4(N_Invok,yypvt[-1],yypvt[-2], tree3(N_List,yypvt[-1],tree1(N_Empty) )) ;} break; case 156: # line 368 "expanded.g" {yyval = tree4(N_Invok,yypvt[-2],yypvt[-3],tree3(N_List,yypvt[-2],yypvt[-1])) ;} break; case 157: # line 370 "expanded.g" {yyval = tree4(N_Invok,yypvt[-2],yypvt[-3],yypvt[-1]) ;} break; case 158: # line 371 "expanded.g" {yyval = tree4(N_Field,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 159: # line 372 "expanded.g" {yyval = int_leaf(N_Key,yypvt[-1],K_FAIL) ;} break; case 160: # line 373 "expanded.g" {if ((key_num = klookup(Str0(yypvt[-0]))) == 0) tfatal("invalid keyword",Str0(yypvt[-0])); yyval = int_leaf(N_Key,yypvt[-1],key_num);} break; case 161: # line 377 "expanded.g" {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) );} break; case 162: # line 378 "expanded.g" {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break; case 163: # line 380 "expanded.g" {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break; case 164: # line 381 "expanded.g" {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break; case 165: # line 383 "expanded.g" {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break; case 166: # line 384 "expanded.g" {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break; case 167: # line 386 "expanded.g" {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break; case 168: # line 388 "expanded.g" {yyval = tree4(N_Ret,yypvt[-0],yypvt[-0],tree1(N_Empty) ) ;} break; case 169: # line 389 "expanded.g" {yyval = tree4(N_Ret,yypvt[-1],yypvt[-1],yypvt[-0]) ;} break; case 170: # line 390 "expanded.g" {yyval = tree5(N_Loop,yypvt[-1],yypvt[-1],yypvt[-0],tree1(N_Empty) ) ;} break; case 171: # line 391 "expanded.g" {yyval = tree5(N_Loop,yypvt[-3],yypvt[-3],yypvt[-2],yypvt[-0]) ;} break; case 172: # line 393 "expanded.g" {yyval = tree5(N_If,yypvt[-3],yypvt[-2],yypvt[-0],tree1(N_Empty) ) ;} break; case 173: # line 394 "expanded.g" {yyval = tree5(N_If,yypvt[-5],yypvt[-4],yypvt[-2],yypvt[-0]) ;} break; case 174: # line 396 "expanded.g" {yyval = tree4(N_Case,yypvt[-5],yypvt[-4],yypvt[-1]) ;} break; case 176: # line 399 "expanded.g" {yyval = tree4(N_Clist,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 177: # line 401 "expanded.g" {yyval = tree4(N_Ccls,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 178: # line 402 "expanded.g" {yyval = tree4(N_Ccls,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; case 180: # line 405 "expanded.g" {yyval = tree4(N_Elist,yypvt[-1],yypvt[-2],yypvt[-0]);} break; case 181: # line 407 "expanded.g" { yyval = tree3(N_Create,yypvt[-0],yypvt[-0]) ; } break; case 182: # line 410 "expanded.g" { yyval = tree4(N_Elist,yypvt[-1],yypvt[-2],tree3(N_Create,yypvt[-1],yypvt[-0])); } break; case 183: # line 414 "expanded.g" {Val0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_IntLit,0);} break; case 184: # line 415 "expanded.g" {Val0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_RealLit,0);} break; case 185: # line 416 "expanded.g" {Val0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_StrLit,(int)Val1(yypvt[-0]));} break; case 186: # line 417 "expanded.g" {Val0(yypvt[-0]) = putlit(Str0(yypvt[-0]),F_CsetLit,(int)Val1(yypvt[-0]));} break; case 187: # line 419 "expanded.g" {yyval = tree6(N_Sect,yypvt[-2],yypvt[-2],yypvt[-5],yypvt[-3],yypvt[-1]) ;} break; case 188: # line 421 "expanded.g" {yyval = yypvt[-0];} break; case 189: # line 422 "expanded.g" {yyval = yypvt[-0];} break; case 190: # line 423 "expanded.g" {yyval = yypvt[-0];} break; case 192: # line 426 "expanded.g" {yyval = tree4(N_Slist,yypvt[-1],yypvt[-2],yypvt[-0]) ;} break; } goto yystack; /* stack new state and value */ }