/* A lexical scanner generated by flex */
+#define yy_create_buffer swf4_create_buffer
+#define yy_delete_buffer swf4_delete_buffer
+#define yy_flex_debug swf4_flex_debug
+#define yy_init_buffer swf4_init_buffer
+#define yy_flush_buffer swf4_flush_buffer
+#define yy_load_buffer_state swf4_load_buffer_state
+#define yy_switch_to_buffer swf4_switch_to_buffer
+#define yyin swf4in
+#define yyleng swf4leng
+#define yylex swf4lex
+#define yylineno swf4lineno
+#define yyout swf4out
+#define yyrestart swf4restart
+#define yytext swf4text
+#define yywrap swf4wrap
+#define yyalloc swf4alloc
+#define yyrealloc swf4realloc
+#define yyfree swf4free
+
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
-#define YY_FLEX_SUBMINOR_VERSION 33
+#define YY_FLEX_SUBMINOR_VERSION 35
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
-#if __STDC_VERSION__ >= 199901L
+#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
* if you want the limit (max/min) macros for int types.
#else /* ! __cplusplus */
-#if __STDC__
+/* C99 requires __STDC__ to be defined as 1. */
+#if defined (__STDC__)
#define YY_USE_CONST
-#endif /* __STDC__ */
+#endif /* defined (__STDC__) */
#endif /* ! __cplusplus */
#ifdef YY_USE_CONST
#define unput(c) yyunput( c, (yytext_ptr) )
-/* The following is because we cannot portably get our hands on size_t
- * (without autoconf's help, which isn't available because we want
- * flex-generated scanners to compile on their own).
- */
-
#ifndef YY_TYPEDEF_YY_SIZE_T
#define YY_TYPEDEF_YY_SIZE_T
-typedef unsigned int yy_size_t;
+typedef size_t yy_size_t;
#endif
#ifndef YY_STRUCT_YY_BUFFER_STATE
{ 0,
0, 0, 96, 94, 56, 93, 94, 82, 94, 79,
94, 83, 84, 80, 77, 89, 78, 90, 81, 1,
- 92, 75, 59, 76, 60, 91, 85, 86, 47, 47,
+ 92, 75, 59, 76, 60, 91, 47, 47, 47, 47,
47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
- 47, 47, 47, 47, 47, 87, 94, 88, 93, 64,
+ 47, 47, 47, 85, 86, 87, 94, 88, 93, 64,
0, 52, 50, 0, 65, 0, 53, 51, 0, 67,
57, 69, 58, 70, 74, 0, 54, 48, 55, 68,
48, 2, 1, 61, 63, 62, 0, 47, 47, 47,
1, 2, 5, 6, 1, 1, 1, 7, 8, 9,
10, 11, 12, 13, 14, 15, 16, 17, 18, 17,
17, 17, 17, 17, 17, 17, 17, 19, 20, 21,
- 22, 23, 24, 1, 29, 30, 31, 32, 33, 34,
- 35, 36, 37, 28, 38, 39, 40, 41, 42, 43,
- 44, 45, 46, 47, 48, 49, 50, 51, 52, 28,
- 25, 26, 27, 1, 28, 1, 29, 30, 31, 32,
-
- 33, 34, 35, 36, 37, 28, 38, 39, 40, 41,
- 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
- 52, 28, 53, 54, 55, 1, 1, 1, 1, 1,
+ 22, 23, 24, 1, 25, 26, 27, 28, 29, 30,
+ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+ 41, 42, 43, 44, 45, 46, 47, 48, 49, 34,
+ 50, 51, 52, 1, 34, 1, 53, 54, 55, 56,
+
+ 57, 58, 59, 60, 61, 34, 62, 63, 64, 65,
+ 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
+ 76, 34, 77, 78, 79, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1
} ;
-static yyconst flex_int32_t yy_meta[56] =
+static yyconst flex_int32_t yy_meta[80] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2, 1, 1, 1, 3, 4, 5, 5, 1, 1,
- 1, 2, 1, 1, 1, 1, 1, 6, 6, 6,
+ 1, 2, 1, 1, 6, 6, 6, 6, 6, 6,
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 1,
+ 1, 1, 6, 6, 6, 6, 6, 6, 6, 6,
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 1, 1, 1
+ 6, 6, 6, 6, 6, 6, 1, 1, 1
} ;
static yyconst flex_int16_t yy_base[327] =
{ 0,
- 0, 0, 626, 627, 627, 627, 622, 602, 53, 616,
- 54, 627, 627, 600, 46, 627, 47, 48, 55, 57,
- 627, 627, 599, 598, 597, 627, 627, 627, 602, 44,
- 49, 51, 57, 65, 67, 70, 72, 79, 68, 81,
- 86, 85, 92, 74, 100, 627, 563, 627, 627, 594,
- 121, 132, 627, 612, 627, 114, 136, 627, 611, 627,
- 627, 627, 627, 627, 597, 130, 627, 115, 627, 627,
- 596, 125, 133, 588, 588, 627, 594, 592, 133, 137,
- 138, 139, 591, 141, 60, 140, 143, 144, 145, 147,
- 590, 148, 149, 152, 151, 153, 66, 156, 154, 158,
-
- 155, 161, 159, 181, 173, 166, 170, 171, 177, 188,
- 182, 192, 627, 627, 589, 588, 196, 627, 627, 200,
- 587, 193, 202, 586, 203, 204, 209, 208, 585, 211,
- 210, 214, 584, 212, 216, 215, 219, 583, 217, 221,
- 222, 223, 224, 228, 229, 230, 233, 241, 243, 244,
- 247, 245, 248, 249, 251, 582, 581, 254, 262, 256,
- 267, 268, 580, 270, 275, 271, 272, 277, 278, 279,
- 284, 282, 579, 578, 286, 285, 283, 293, 291, 294,
- 296, 297, 577, 576, 298, 308, 575, 313, 314, 574,
- 305, 315, 317, 318, 573, 320, 319, 326, 323, 329,
-
- 332, 335, 337, 336, 338, 339, 340, 353, 344, 341,
- 347, 351, 355, 356, 362, 572, 359, 571, 367, 566,
- 360, 374, 363, 366, 381, 372, 378, 565, 371, 382,
- 386, 556, 390, 539, 394, 395, 396, 397, 375, 538,
- 398, 400, 401, 402, 405, 406, 408, 412, 537, 413,
- 415, 417, 420, 418, 423, 430, 416, 431, 424, 432,
- 435, 434, 535, 445, 533, 446, 436, 448, 449, 450,
- 451, 456, 458, 459, 460, 455, 461, 530, 471, 465,
- 470, 529, 464, 473, 474, 478, 527, 526, 484, 525,
- 524, 485, 519, 517, 488, 489, 492, 493, 494, 495,
-
- 496, 499, 513, 511, 509, 500, 502, 508, 507, 299,
- 497, 503, 501, 506, 504, 162, 76, 71, 627, 556,
- 562, 567, 570, 573, 577, 580
+ 0, 0, 878, 879, 879, 879, 874, 854, 77, 868,
+ 78, 879, 879, 852, 70, 879, 71, 72, 79, 81,
+ 879, 879, 851, 850, 849, 879, 854, 68, 81, 73,
+ 75, 91, 86, 84, 107, 111, 89, 139, 137, 138,
+ 164, 110, 116, 879, 879, 879, 791, 879, 879, 846,
+ 118, 153, 879, 864, 879, 100, 162, 879, 863, 879,
+ 879, 879, 879, 879, 849, 176, 879, 156, 879, 879,
+ 844, 167, 171, 836, 828, 879, 817, 815, 183, 184,
+ 185, 191, 814, 195, 198, 200, 201, 206, 202, 207,
+ 811, 216, 199, 223, 210, 212, 233, 228, 222, 250,
+
+ 229, 234, 253, 261, 226, 259, 241, 256, 272, 280,
+ 274, 268, 879, 879, 809, 807, 291, 879, 879, 296,
+ 806, 288, 283, 805, 290, 299, 307, 300, 803, 302,
+ 310, 305, 800, 316, 312, 314, 322, 798, 332, 340,
+ 326, 337, 341, 343, 344, 333, 347, 338, 351, 362,
+ 367, 376, 373, 360, 379, 797, 796, 381, 380, 393,
+ 390, 396, 795, 404, 406, 408, 411, 409, 412, 428,
+ 424, 420, 794, 793, 429, 425, 432, 444, 431, 456,
+ 450, 452, 788, 779, 454, 457, 778, 477, 479, 776,
+ 473, 460, 433, 484, 773, 491, 493, 494, 487, 502,
+
+ 503, 504, 463, 506, 512, 508, 521, 517, 513, 525,
+ 522, 533, 531, 535, 540, 769, 545, 753, 551, 712,
+ 549, 562, 550, 546, 101, 564, 577, 676, 563, 580,
+ 582, 675, 585, 670, 579, 574, 587, 592, 567, 648,
+ 598, 602, 607, 609, 603, 608, 625, 615, 645, 626,
+ 610, 635, 638, 611, 639, 641, 653, 637, 664, 643,
+ 667, 642, 612, 668, 529, 672, 678, 647, 669, 684,
+ 686, 693, 691, 695, 703, 696, 706, 497, 705, 701,
+ 719, 465, 711, 726, 715, 729, 439, 436, 723, 421,
+ 388, 731, 372, 353, 735, 737, 734, 740, 746, 741,
+
+ 744, 752, 275, 267, 218, 763, 768, 203, 163, 158,
+ 771, 747, 759, 764, 757, 145, 93, 88, 879, 834,
+ 840, 845, 848, 851, 855, 858
} ;
static yyconst flex_int16_t yy_def[327] =
{ 0,
319, 1, 319, 319, 319, 319, 319, 319, 320, 319,
321, 319, 319, 319, 319, 319, 319, 319, 322, 319,
- 319, 319, 319, 319, 319, 319, 319, 319, 323, 323,
+ 319, 319, 319, 319, 319, 319, 323, 323, 323, 323,
323, 323, 323, 323, 323, 323, 323, 323, 323, 323,
- 323, 323, 323, 323, 323, 319, 319, 319, 319, 319,
+ 323, 323, 323, 319, 319, 319, 319, 319, 319, 319,
320, 320, 319, 320, 319, 321, 321, 319, 321, 319,
319, 319, 319, 319, 319, 322, 319, 319, 319, 319,
324, 319, 319, 319, 319, 319, 325, 323, 323, 323,
319, 319, 319, 319, 319, 319
} ;
-static yyconst flex_int16_t yy_nxt[683] =
+static yyconst flex_int16_t yy_nxt[959] =
{ 0,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 20, 21, 22,
- 23, 24, 25, 26, 27, 4, 28, 29, 29, 30,
- 31, 32, 33, 34, 35, 29, 36, 29, 37, 29,
- 38, 39, 40, 29, 41, 42, 43, 29, 44, 45,
- 29, 29, 46, 47, 48, 52, 57, 61, 53, 77,
- 63, 58, 65, 66, 77, 67, 77, 62, 64, 68,
- 69, 72, 77, 73, 73, 77, 70, 80, 54, 59,
- 77, 77, 77, 77, 81, 77, 77, 77, 79, 77,
- 82, 77, 83, 86, 77, 85, 77, 138, 84, 89,
-
- 77, 77, 111, 91, 93, 127, 87, 77, 90, 88,
- 92, 95, 97, 94, 101, 77, 57, 103, 102, 98,
- 96, 58, 99, 52, 106, 100, 53, 107, 108, 115,
- 66, 104, 105, 109, 52, 112, 110, 53, 57, 59,
- 319, 117, 117, 58, 68, 319, 54, 72, 77, 73,
- 73, 319, 77, 77, 77, 77, 77, 54, 77, 77,
- 77, 59, 77, 77, 77, 122, 77, 77, 77, 77,
- 77, 77, 130, 77, 77, 123, 77, 77, 128, 125,
- 135, 77, 124, 126, 139, 77, 77, 129, 77, 134,
- 141, 131, 77, 132, 133, 142, 77, 77, 137, 140,
-
- 143, 136, 147, 77, 148, 144, 149, 77, 77, 145,
- 150, 151, 117, 117, 156, 77, 152, 77, 77, 77,
- 154, 158, 146, 77, 77, 77, 77, 77, 155, 77,
- 77, 77, 77, 160, 77, 153, 77, 77, 77, 77,
- 159, 163, 162, 77, 77, 77, 169, 170, 77, 161,
- 165, 172, 166, 164, 176, 168, 77, 167, 77, 77,
- 77, 171, 77, 77, 77, 177, 77, 174, 173, 77,
- 175, 77, 180, 179, 178, 186, 184, 77, 181, 182,
- 187, 185, 77, 77, 192, 77, 77, 77, 183, 189,
- 77, 190, 77, 77, 77, 191, 188, 77, 77, 77,
-
- 77, 77, 195, 193, 194, 199, 77, 196, 77, 77,
- 200, 77, 77, 77, 77, 197, 198, 204, 202, 206,
- 77, 209, 205, 77, 201, 211, 207, 203, 77, 77,
- 77, 208, 77, 77, 77, 77, 215, 210, 77, 212,
- 216, 77, 213, 214, 77, 217, 218, 77, 222, 219,
- 77, 77, 77, 77, 77, 77, 77, 221, 223, 77,
- 224, 220, 77, 226, 225, 230, 77, 228, 77, 232,
- 77, 77, 237, 227, 77, 77, 229, 77, 77, 234,
- 231, 77, 77, 233, 241, 235, 77, 77, 236, 77,
- 77, 238, 239, 77, 242, 244, 77, 77, 249, 240,
-
- 243, 77, 246, 250, 247, 77, 251, 245, 248, 77,
- 77, 77, 77, 77, 254, 77, 77, 77, 255, 252,
- 77, 77, 260, 77, 256, 259, 253, 77, 77, 257,
- 77, 77, 77, 77, 263, 77, 267, 265, 77, 77,
- 258, 264, 261, 262, 268, 77, 77, 77, 276, 77,
- 77, 77, 266, 271, 270, 269, 272, 273, 278, 277,
- 77, 77, 274, 77, 77, 77, 77, 284, 275, 280,
- 77, 77, 279, 77, 77, 77, 77, 282, 283, 77,
- 77, 281, 287, 288, 289, 77, 77, 286, 77, 77,
- 290, 291, 285, 77, 298, 294, 292, 296, 297, 77,
-
- 77, 293, 295, 77, 77, 299, 301, 77, 77, 77,
- 77, 77, 77, 302, 77, 77, 77, 77, 77, 77,
- 300, 77, 77, 77, 77, 308, 77, 303, 77, 314,
- 306, 307, 77, 304, 77, 305, 312, 311, 313, 77,
- 77, 77, 77, 316, 77, 77, 309, 310, 77, 315,
- 77, 317, 77, 77, 77, 318, 51, 51, 51, 51,
- 51, 51, 56, 56, 56, 56, 56, 56, 71, 71,
- 71, 77, 71, 78, 78, 78, 116, 116, 116, 121,
- 77, 77, 121, 157, 157, 157, 77, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
-
- 77, 77, 77, 66, 66, 77, 77, 77, 120, 119,
- 118, 66, 66, 319, 319, 114, 113, 77, 76, 75,
- 74, 60, 55, 50, 49, 319, 3, 319, 319, 319,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ 33, 27, 34, 27, 27, 35, 27, 36, 37, 38,
+ 27, 39, 40, 41, 27, 42, 43, 27, 27, 44,
+ 4, 45, 27, 28, 29, 30, 31, 32, 33, 27,
+ 34, 27, 35, 27, 36, 37, 38, 27, 39, 40,
+ 41, 27, 42, 43, 27, 27, 46, 47, 48, 52,
+ 57, 61, 53, 77, 63, 58, 65, 66, 77, 67,
+ 77, 62, 64, 68, 69, 72, 77, 73, 73, 77,
+
+ 70, 77, 57, 77, 77, 80, 77, 58, 77, 79,
+ 85, 83, 81, 91, 89, 86, 77, 84, 249, 82,
+ 52, 92, 77, 53, 90, 77, 77, 54, 59, 87,
+ 97, 77, 88, 80, 111, 93, 79, 85, 83, 95,
+ 81, 91, 89, 86, 84, 94, 82, 112, 92, 96,
+ 59, 90, 77, 77, 77, 52, 87, 97, 53, 88,
+ 77, 101, 111, 93, 57, 102, 103, 95, 54, 58,
+ 115, 66, 94, 77, 98, 112, 96, 99, 77, 77,
+ 100, 104, 105, 117, 117, 72, 319, 73, 73, 101,
+ 68, 319, 106, 102, 103, 107, 108, 319, 77, 77,
+
+ 77, 98, 109, 54, 99, 110, 77, 100, 104, 105,
+ 77, 122, 59, 77, 77, 77, 77, 77, 77, 123,
+ 106, 77, 77, 107, 108, 77, 124, 77, 125, 109,
+ 130, 77, 110, 77, 126, 128, 134, 77, 77, 122,
+ 127, 77, 129, 77, 77, 131, 123, 135, 77, 77,
+ 132, 147, 139, 124, 137, 125, 77, 136, 130, 133,
+ 138, 126, 128, 134, 140, 77, 142, 127, 77, 129,
+ 143, 77, 131, 149, 77, 135, 77, 132, 141, 147,
+ 139, 137, 77, 77, 136, 145, 133, 77, 138, 77,
+ 77, 140, 150, 142, 148, 77, 144, 143, 77, 146,
+
+ 155, 149, 151, 77, 152, 77, 141, 117, 117, 154,
+ 156, 77, 158, 145, 77, 77, 160, 77, 159, 150,
+ 77, 148, 77, 144, 153, 77, 146, 77, 155, 77,
+ 151, 77, 152, 161, 162, 163, 154, 77, 165, 170,
+ 158, 77, 164, 168, 160, 159, 169, 77, 77, 166,
+ 172, 153, 77, 77, 167, 77, 77, 171, 77, 77,
+ 161, 162, 77, 163, 176, 165, 77, 170, 77, 164,
+ 168, 175, 180, 182, 169, 77, 166, 77, 172, 177,
+ 173, 167, 77, 174, 171, 179, 178, 77, 77, 181,
+ 184, 77, 176, 183, 77, 77, 77, 185, 175, 180,
+
+ 182, 187, 186, 77, 188, 77, 177, 173, 77, 191,
+ 174, 77, 179, 178, 189, 190, 181, 192, 184, 77,
+ 183, 77, 193, 77, 77, 185, 77, 77, 194, 187,
+ 186, 188, 195, 199, 196, 77, 77, 191, 200, 77,
+ 77, 189, 190, 77, 77, 192, 77, 77, 77, 197,
+ 193, 77, 198, 204, 77, 201, 194, 205, 206, 77,
+ 195, 199, 196, 207, 202, 77, 200, 77, 209, 77,
+ 221, 77, 77, 203, 210, 77, 197, 208, 77, 198,
+ 77, 204, 201, 211, 205, 216, 206, 230, 77, 215,
+ 207, 202, 77, 213, 77, 214, 209, 221, 212, 77,
+
+ 203, 210, 77, 220, 208, 217, 77, 218, 77, 77,
+ 222, 211, 77, 216, 219, 230, 215, 77, 77, 77,
+ 213, 77, 214, 77, 226, 212, 223, 77, 77, 225,
+ 220, 224, 77, 217, 228, 218, 77, 77, 222, 232,
+ 77, 219, 229, 227, 77, 235, 77, 231, 77, 233,
+ 77, 226, 237, 223, 236, 77, 225, 234, 224, 241,
+ 77, 77, 228, 238, 77, 77, 77, 232, 242, 229,
+ 227, 239, 240, 235, 231, 244, 233, 77, 77, 77,
+ 237, 236, 77, 243, 234, 248, 246, 241, 247, 77,
+ 238, 250, 77, 245, 77, 77, 242, 77, 239, 240,
+
+ 77, 251, 77, 244, 257, 256, 254, 77, 252, 255,
+ 243, 260, 248, 77, 246, 247, 259, 77, 77, 250,
+ 245, 253, 77, 77, 77, 77, 77, 77, 258, 251,
+ 77, 265, 257, 256, 254, 252, 263, 255, 260, 261,
+ 77, 77, 262, 268, 259, 264, 270, 273, 253, 267,
+ 77, 266, 77, 77, 77, 258, 77, 77, 77, 265,
+ 77, 277, 77, 77, 263, 269, 261, 271, 77, 262,
+ 272, 268, 264, 270, 273, 274, 275, 267, 266, 77,
+ 279, 276, 77, 77, 77, 77, 281, 77, 285, 277,
+ 77, 77, 269, 77, 278, 271, 282, 280, 272, 77,
+
+ 283, 77, 274, 275, 286, 284, 77, 279, 77, 276,
+ 77, 77, 287, 281, 288, 285, 77, 289, 77, 290,
+ 77, 77, 278, 291, 282, 280, 77, 77, 283, 296,
+ 77, 286, 295, 284, 77, 292, 294, 298, 77, 293,
+ 287, 77, 288, 297, 77, 289, 77, 290, 302, 77,
+ 77, 291, 77, 301, 299, 77, 77, 296, 300, 77,
+ 295, 77, 77, 292, 294, 298, 293, 77, 77, 306,
+ 303, 297, 77, 308, 77, 307, 302, 304, 77, 77,
+ 305, 301, 299, 77, 77, 300, 77, 311, 77, 309,
+ 315, 77, 310, 77, 77, 312, 306, 303, 316, 314,
+
+ 313, 308, 307, 77, 304, 318, 317, 305, 77, 77,
+ 77, 77, 77, 77, 311, 77, 309, 315, 77, 310,
+ 77, 77, 66, 312, 66, 316, 77, 314, 313, 77,
+ 77, 120, 318, 317, 51, 51, 51, 51, 51, 51,
+ 56, 56, 56, 56, 56, 56, 71, 71, 71, 119,
+ 71, 78, 78, 78, 116, 116, 116, 121, 118, 66,
+ 121, 157, 157, 157, 66, 319, 319, 114, 113, 77,
+ 76, 75, 74, 60, 55, 50, 49, 319, 3, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
+
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
- 319, 319
+ 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
+ 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
+ 319, 319, 319, 319, 319, 319, 319, 319
} ;
-static yyconst flex_int16_t yy_chk[683] =
+static yyconst flex_int16_t yy_chk[959] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 9, 11, 15, 9, 30,
- 17, 11, 18, 18, 31, 19, 32, 15, 17, 19,
- 19, 20, 33, 20, 20, 85, 19, 31, 9, 11,
- 34, 97, 35, 39, 31, 36, 318, 37, 30, 44,
- 31, 317, 32, 34, 38, 33, 40, 97, 32, 35,
-
- 42, 41, 44, 36, 37, 85, 34, 43, 35, 34,
- 36, 38, 39, 37, 41, 45, 56, 42, 41, 40,
- 38, 56, 40, 51, 43, 40, 51, 43, 43, 68,
- 68, 42, 42, 43, 52, 45, 43, 52, 57, 56,
- 66, 72, 72, 57, 66, 66, 51, 73, 79, 73,
- 73, 66, 80, 81, 82, 86, 84, 52, 87, 88,
- 89, 57, 90, 92, 93, 79, 95, 94, 96, 99,
- 101, 98, 88, 100, 103, 80, 102, 316, 86, 82,
- 94, 106, 81, 84, 98, 107, 108, 87, 105, 93,
- 100, 89, 109, 90, 92, 101, 104, 111, 96, 99,
-
- 102, 95, 105, 110, 106, 103, 107, 112, 122, 104,
- 108, 109, 117, 117, 120, 120, 110, 123, 125, 126,
- 111, 122, 104, 128, 127, 131, 130, 134, 112, 132,
- 136, 135, 139, 125, 137, 110, 140, 141, 142, 143,
- 123, 127, 126, 144, 145, 146, 134, 135, 147, 125,
- 130, 137, 131, 128, 142, 132, 148, 131, 149, 150,
- 152, 136, 151, 153, 154, 143, 155, 140, 139, 158,
- 141, 160, 146, 145, 144, 152, 150, 159, 147, 148,
- 153, 151, 161, 162, 160, 164, 166, 167, 149, 155,
- 165, 158, 168, 169, 170, 159, 154, 172, 177, 171,
-
- 176, 175, 164, 161, 162, 168, 179, 165, 178, 180,
- 168, 181, 182, 185, 310, 166, 167, 171, 170, 175,
- 191, 178, 172, 186, 169, 180, 176, 170, 188, 189,
- 192, 177, 193, 194, 197, 196, 185, 179, 199, 180,
- 186, 198, 181, 182, 200, 188, 189, 201, 194, 191,
- 202, 204, 203, 205, 206, 207, 210, 193, 196, 209,
- 197, 192, 211, 199, 198, 203, 212, 201, 208, 205,
- 213, 214, 210, 200, 217, 221, 202, 215, 223, 207,
- 204, 224, 219, 206, 214, 208, 229, 226, 209, 222,
- 239, 211, 212, 227, 215, 219, 225, 230, 225, 213,
-
- 217, 231, 222, 226, 223, 233, 227, 221, 224, 235,
- 236, 237, 238, 241, 231, 242, 243, 244, 233, 229,
- 245, 246, 239, 247, 235, 238, 230, 248, 250, 236,
- 251, 257, 252, 254, 243, 253, 247, 245, 255, 259,
- 237, 244, 241, 242, 248, 256, 258, 260, 257, 262,
- 261, 267, 246, 252, 251, 250, 253, 254, 259, 258,
- 264, 266, 255, 268, 269, 270, 271, 267, 256, 261,
- 276, 272, 260, 273, 274, 275, 277, 264, 266, 283,
- 280, 262, 270, 271, 272, 281, 279, 269, 284, 285,
- 273, 274, 268, 286, 283, 277, 275, 280, 281, 289,
-
- 292, 276, 279, 295, 296, 284, 286, 297, 298, 299,
- 300, 301, 311, 289, 302, 306, 313, 307, 312, 315,
- 285, 314, 309, 308, 305, 299, 304, 292, 303, 311,
- 297, 298, 294, 295, 293, 296, 306, 302, 307, 291,
- 290, 288, 287, 313, 282, 278, 300, 301, 265, 312,
- 263, 314, 249, 240, 234, 315, 320, 320, 320, 320,
- 320, 320, 321, 321, 321, 321, 321, 321, 322, 322,
- 322, 232, 322, 323, 323, 323, 324, 324, 324, 325,
- 228, 220, 325, 326, 326, 326, 218, 216, 195, 190,
- 187, 184, 183, 174, 173, 163, 157, 156, 138, 133,
-
- 129, 124, 121, 116, 115, 91, 83, 78, 77, 75,
- 74, 71, 65, 59, 54, 50, 47, 29, 25, 24,
- 23, 14, 10, 8, 7, 3, 319, 319, 319, 319,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 9,
+ 11, 15, 9, 28, 17, 11, 18, 18, 30, 19,
+ 31, 15, 17, 19, 19, 20, 29, 20, 20, 34,
+
+ 19, 33, 56, 318, 37, 29, 32, 56, 317, 28,
+ 31, 30, 29, 34, 33, 32, 225, 30, 225, 29,
+ 51, 34, 35, 51, 33, 42, 36, 9, 11, 32,
+ 37, 43, 32, 29, 42, 35, 28, 31, 30, 36,
+ 29, 34, 33, 32, 30, 35, 29, 43, 34, 36,
+ 56, 33, 39, 40, 38, 52, 32, 37, 52, 32,
+ 316, 39, 42, 35, 57, 39, 40, 36, 51, 57,
+ 68, 68, 35, 310, 38, 43, 36, 38, 309, 41,
+ 38, 40, 40, 72, 72, 73, 66, 73, 73, 39,
+ 66, 66, 41, 39, 40, 41, 41, 66, 79, 80,
+
+ 81, 38, 41, 52, 38, 41, 82, 38, 40, 40,
+ 84, 79, 57, 85, 93, 86, 87, 89, 308, 80,
+ 41, 88, 90, 41, 41, 95, 81, 96, 82, 41,
+ 88, 92, 41, 305, 84, 86, 93, 99, 94, 79,
+ 85, 105, 87, 98, 101, 89, 80, 94, 97, 102,
+ 90, 105, 98, 81, 96, 82, 107, 95, 88, 92,
+ 97, 84, 86, 93, 99, 100, 101, 85, 103, 87,
+ 102, 108, 89, 107, 106, 94, 104, 90, 100, 105,
+ 98, 96, 304, 112, 95, 104, 92, 109, 97, 111,
+ 303, 99, 108, 101, 106, 110, 103, 102, 123, 104,
+
+ 112, 107, 109, 122, 110, 125, 100, 117, 117, 111,
+ 120, 120, 122, 104, 126, 128, 125, 130, 123, 108,
+ 132, 106, 127, 103, 110, 131, 104, 135, 112, 136,
+ 109, 134, 110, 125, 126, 127, 111, 137, 130, 135,
+ 122, 141, 128, 132, 125, 123, 134, 139, 146, 131,
+ 137, 110, 142, 148, 131, 140, 143, 136, 144, 145,
+ 125, 126, 147, 127, 142, 130, 149, 135, 294, 128,
+ 132, 141, 146, 148, 134, 154, 131, 150, 137, 143,
+ 139, 131, 151, 140, 136, 145, 144, 293, 153, 147,
+ 150, 152, 142, 149, 155, 159, 158, 151, 141, 146,
+
+ 148, 153, 152, 291, 154, 161, 143, 139, 160, 159,
+ 140, 162, 145, 144, 155, 158, 147, 160, 150, 164,
+ 149, 165, 161, 166, 168, 151, 167, 169, 162, 153,
+ 152, 154, 164, 168, 165, 172, 290, 159, 168, 171,
+ 176, 155, 158, 170, 175, 160, 179, 177, 193, 166,
+ 161, 288, 167, 171, 287, 169, 162, 172, 175, 178,
+ 164, 168, 165, 176, 170, 181, 168, 182, 178, 185,
+ 193, 180, 186, 170, 179, 192, 166, 177, 203, 167,
+ 282, 171, 169, 180, 172, 186, 175, 203, 191, 185,
+ 176, 170, 188, 181, 189, 182, 178, 193, 180, 194,
+
+ 170, 179, 199, 192, 177, 188, 196, 189, 197, 198,
+ 194, 180, 278, 186, 191, 203, 185, 200, 201, 202,
+ 181, 204, 182, 206, 199, 180, 196, 205, 209, 198,
+ 192, 197, 208, 188, 201, 189, 207, 211, 194, 205,
+ 210, 191, 202, 200, 265, 208, 213, 204, 212, 206,
+ 214, 199, 210, 196, 209, 215, 198, 207, 197, 214,
+ 217, 224, 201, 211, 221, 223, 219, 205, 215, 202,
+ 200, 212, 213, 208, 204, 219, 206, 222, 229, 226,
+ 210, 209, 239, 217, 207, 224, 222, 214, 223, 236,
+ 211, 226, 227, 221, 235, 230, 215, 231, 212, 213,
+
+ 233, 227, 237, 219, 236, 235, 231, 238, 229, 233,
+ 217, 239, 224, 241, 222, 223, 238, 242, 245, 226,
+ 221, 230, 243, 246, 244, 251, 254, 263, 237, 227,
+ 248, 245, 236, 235, 231, 229, 243, 233, 239, 241,
+ 247, 250, 242, 248, 238, 244, 251, 254, 230, 247,
+ 252, 246, 258, 253, 255, 237, 256, 262, 260, 245,
+ 249, 258, 268, 240, 243, 250, 241, 252, 257, 242,
+ 253, 248, 244, 251, 254, 255, 256, 247, 246, 259,
+ 260, 257, 261, 264, 269, 234, 262, 266, 268, 258,
+ 232, 228, 250, 267, 259, 252, 264, 261, 253, 270,
+
+ 266, 271, 255, 256, 269, 267, 273, 260, 272, 257,
+ 274, 276, 270, 262, 271, 268, 280, 272, 275, 273,
+ 279, 277, 259, 274, 264, 261, 283, 220, 266, 280,
+ 285, 269, 279, 267, 281, 275, 277, 283, 289, 276,
+ 270, 284, 271, 281, 286, 272, 292, 273, 289, 297,
+ 295, 274, 296, 286, 284, 298, 300, 280, 285, 301,
+ 279, 299, 312, 275, 277, 283, 276, 302, 218, 297,
+ 292, 281, 315, 299, 313, 298, 289, 295, 306, 314,
+ 296, 286, 284, 307, 216, 285, 311, 302, 195, 300,
+ 312, 190, 301, 187, 184, 306, 297, 292, 313, 311,
+
+ 307, 299, 298, 183, 295, 315, 314, 296, 174, 173,
+ 163, 157, 156, 138, 302, 133, 300, 312, 129, 301,
+ 124, 121, 116, 306, 115, 313, 91, 311, 307, 83,
+ 78, 77, 315, 314, 320, 320, 320, 320, 320, 320,
+ 321, 321, 321, 321, 321, 321, 322, 322, 322, 75,
+ 322, 323, 323, 323, 324, 324, 324, 325, 74, 71,
+ 325, 326, 326, 326, 65, 59, 54, 50, 47, 27,
+ 25, 24, 23, 14, 10, 8, 7, 3, 319, 319,
+ 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
+ 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
+
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
- 319, 319
+ 319, 319, 319, 319, 319, 319, 319, 319
} ;
static yy_state_type yy_last_accepting_state;
static void yyunput YY_PROTO(( int c, char *buf_ptr ));
void do_unput4(const char c) { unput(c); }
-#line 797 "lex.swf4.c"
+#line 874 "lex.swf4.c"
#define INITIAL 0
static int yy_init_globals (void );
+/* Accessor methods to globals.
+ These are made visible to non-reentrant scanners for convenience. */
+
+int swf4lex_destroy (void );
+
+int swf4get_debug (void );
+
+void swf4set_debug (int debug_flag );
+
+YY_EXTRA_TYPE swf4get_extra (void );
+
+void swf4set_extra (YY_EXTRA_TYPE user_defined );
+
+FILE *swf4get_in (void );
+
+void swf4set_in (FILE * in_str );
+
+FILE *swf4get_out (void );
+
+void swf4set_out (FILE * out_str );
+
+int swf4get_leng (void );
+
+char *swf4get_text (void );
+
+int swf4get_lineno (void );
+
+void swf4set_lineno (int line_number );
+
/* Macros after this point can all be overridden by user definitions in
* section 1.
*/
/* This used to be an fputs(), but since the string might contain NUL's,
* we now use fwrite().
*/
-#define ECHO (void) fwrite( swf4text, swf4leng, 1, swf4out )
+#define ECHO fwrite( swf4text, swf4leng, 1, swf4out )
#endif
/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
{ \
int c = '*'; \
- size_t n; \
+ int n; \
for ( n = 0; n < max_size && \
(c = getc( swf4in )) != EOF && c != '\n'; ++n ) \
buf[n] = (char) c; \
#line 96 "swf4compiler.flex"
-#line 953 "lex.swf4.c"
+#line 1059 "lex.swf4.c"
if ( !(yy_init) )
{
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
- while ( yy_base[yy_current_state] != 627 );
+ while ( yy_base[yy_current_state] != 879 );
yy_find_action:
yy_act = yy_accept[yy_current_state];
#line 239 "swf4compiler.flex"
ECHO;
YY_BREAK
-#line 1548 "lex.swf4.c"
+#line 1654 "lex.swf4.c"
case YY_STATE_EOF(INITIAL):
yyterminate();
/* Read in more data. */
YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
- (yy_n_chars), num_to_read );
+ (yy_n_chars), (size_t) num_to_read );
YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
}
else
ret_val = EOB_ACT_CONTINUE_SCAN;
+ if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
+ /* Extend the array by 50%, plus the number we really need. */
+ yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
+ YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) swf4realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
+ if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
+ YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
+ }
+
(yy_n_chars) += number_to_move;
YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
(yy_buffer_stack) = (struct yy_buffer_state**)swf4alloc
(num_to_alloc * sizeof(struct yy_buffer_state*)
);
-
+ if ( ! (yy_buffer_stack) )
+ YY_FATAL_ERROR( "out of dynamic memory in swf4ensure_buffer_stack()" );
+
memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
(yy_buffer_stack_max) = num_to_alloc;
((yy_buffer_stack),
num_to_alloc * sizeof(struct yy_buffer_state*)
);
+ if ( ! (yy_buffer_stack) )
+ YY_FATAL_ERROR( "out of dynamic memory in swf4ensure_buffer_stack()" );
/* zero only the new slots.*/
memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
/** Setup the input buffer state to scan a string. The next call to swf4lex() will
* scan from a @e copy of @a str.
- * @param str a NUL-terminated string to scan
+ * @param yystr a NUL-terminated string to scan
*
* @return the newly allocated buffer state object.
* @note If you want to scan bytes that may contain NUL values, then use
-/* A Bison parser, made by GNU Bison 1.875. */
-/* Skeleton parser for Yacc-like parsing with Bison,
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc.
+/* A Bison parser, made by GNU Bison 2.4. */
- This program is free software; you can redistribute it and/or modify
+/* Skeleton implementation for Bison's Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
-
+
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
-
-/* As a special exception, when this file is copied by Bison into a
- Bison output file, you may use that output file without restriction.
- This special exception was added by the Free Software Foundation
- in version 1.24 of Bison. */
-
-/* Written by Richard Stallman by simplifying the original so called
- ``semantic'' parser. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
+
+/* C LALR(1) parser skeleton written by Richard Stallman, by
+ simplifying the original so-called "semantic" parser. */
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
/* Identify Bison output. */
#define YYBISON 1
+/* Bison version. */
+#define YYBISON_VERSION "2.4"
+
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
/* Pure parsers. */
#define YYPURE 0
+/* Push parsers. */
+#define YYPUSH 0
+
+/* Pull parsers. */
+#define YYPULL 1
+
/* Using locations. */
#define YYLSP_NEEDED 0
-/* If NAME_PREFIX is specified substitute the variables and functions
- names. */
-#define yyparse swf4parse
-#define yylex swf4lex
-#define yyerror swf4error
-#define yylval swf4lval
-#define yychar swf4char
-#define yydebug swf4debug
-#define yynerrs swf4nerrs
+/* Substitute the variable and function names. */
+#define yyparse swf4parse
+#define yylex swf4lex
+#define yyerror swf4error
+#define yylval swf4lval
+#define yychar swf4char
+#define yydebug swf4debug
+#define yynerrs swf4nerrs
+
+
+/* Copy the first part of user declarations. */
+
+/* Line 189 of yacc.c */
+#line 5 "swf4compiler.y"
+
+
+#include <time.h>
+#include <string.h>
+#include <stdlib.h>
+#include "compile.h"
+#include "action.h"
+
+#define YYPARSE_PARAM buffer
+
+
+
+/* Line 189 of yacc.c */
+#line 94 "swf4compiler.tab.c"
+
+/* Enabling traces. */
+#ifndef YYDEBUG
+# define YYDEBUG 0
+#endif
+
+/* Enabling verbose error messages. */
+#ifdef YYERROR_VERBOSE
+# undef YYERROR_VERBOSE
+# define YYERROR_VERBOSE 1
+#else
+# define YYERROR_VERBOSE 0
+#endif
+
+/* Enabling the token table. */
+#ifndef YYTOKEN_TABLE
+# define YYTOKEN_TABLE 0
+#endif
/* Tokens. */
NEGATE = 322
};
#endif
-#define BREAK 258
-#define FOR 259
-#define CONTINUE 260
-#define IF 261
-#define ELSE 262
-#define DO 263
-#define WHILE 264
-#define THIS 265
-#define EVAL 266
-#define TIME 267
-#define RANDOM 268
-#define LENGTH 269
-#define INT 270
-#define CONCAT 271
-#define DUPLICATECLIP 272
-#define REMOVECLIP 273
-#define TRACE 274
-#define STARTDRAG 275
-#define STOPDRAG 276
-#define ORD 277
-#define CHR 278
-#define CALLFRAME 279
-#define GETURL 280
-#define GETURL1 281
-#define LOADMOVIE 282
-#define LOADVARIABLES 283
-#define POSTURL 284
-#define SUBSTR 285
-#define GETPROPERTY 286
-#define NEXTFRAME 287
-#define PREVFRAME 288
-#define PLAY 289
-#define STOP 290
-#define TOGGLEQUALITY 291
-#define STOPSOUNDS 292
-#define GOTOFRAME 293
-#define GOTOANDPLAY 294
-#define FRAMELOADED 295
-#define SETTARGET 296
-#define TELLTARGET 297
-#define STRING 298
-#define NUMBER 299
-#define IDENTIFIER 300
-#define PATH 301
-#define GETURL_METHOD 302
-#define EQ 303
-#define LE 304
-#define GE 305
-#define NE 306
-#define LAN 307
-#define LOR 308
-#define INC 309
-#define DEC 310
-#define IEQ 311
-#define DEQ 312
-#define MEQ 313
-#define SEQ 314
-#define STREQ 315
-#define STRNE 316
-#define STRCMP 317
-#define PARENT 318
-#define END 319
-#define UMINUS 320
-#define POSTFIX 321
-#define NEGATE 322
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+{
-/* Copy the first part of user declarations. */
-#line 5 "swf4compiler.y"
+/* Line 214 of yacc.c */
+#line 17 "swf4compiler.y"
+ Buffer action;
+ char *str;
+ SWFActionFunction function;
+ SWFGetUrl2Method getURLMethod;
-#include <time.h>
-#include <string.h>
-#include <stdlib.h>
-#include "compile.h"
-#include "action.h"
-#define YYPARSE_PARAM buffer
+
+/* Line 214 of yacc.c */
+#line 206 "swf4compiler.tab.c"
+} YYSTYPE;
+# define YYSTYPE_IS_TRIVIAL 1
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
+# define YYSTYPE_IS_DECLARED 1
+#endif
+/* Copy the second part of user declarations. */
-/* Enabling traces. */
-#ifndef YYDEBUG
-# define YYDEBUG 0
+
+/* Line 264 of yacc.c */
+#line 218 "swf4compiler.tab.c"
+
+#ifdef short
+# undef short
#endif
-/* Enabling verbose error messages. */
-#ifdef YYERROR_VERBOSE
-# undef YYERROR_VERBOSE
-# define YYERROR_VERBOSE 1
+#ifdef YYTYPE_UINT8
+typedef YYTYPE_UINT8 yytype_uint8;
#else
-# define YYERROR_VERBOSE 0
+typedef unsigned char yytype_uint8;
#endif
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 17 "swf4compiler.y"
-typedef union YYSTYPE {
- Buffer action;
- char *str;
- SWFActionFunction function;
- SWFGetUrl2Method getURLMethod;
-} YYSTYPE;
-/* Line 191 of yacc.c. */
-#line 237 "swf4compiler.tab.c"
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
+#ifdef YYTYPE_INT8
+typedef YYTYPE_INT8 yytype_int8;
+#elif (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+typedef signed char yytype_int8;
+#else
+typedef short int yytype_int8;
#endif
+#ifdef YYTYPE_UINT16
+typedef YYTYPE_UINT16 yytype_uint16;
+#else
+typedef unsigned short int yytype_uint16;
+#endif
+#ifdef YYTYPE_INT16
+typedef YYTYPE_INT16 yytype_int16;
+#else
+typedef short int yytype_int16;
+#endif
-/* Copy the second part of user declarations. */
+#ifndef YYSIZE_T
+# ifdef __SIZE_TYPE__
+# define YYSIZE_T __SIZE_TYPE__
+# elif defined size_t
+# define YYSIZE_T size_t
+# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+# define YYSIZE_T size_t
+# else
+# define YYSIZE_T unsigned int
+# endif
+#endif
+
+#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
+
+#ifndef YY_
+# if YYENABLE_NLS
+# if ENABLE_NLS
+# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
+# define YY_(msgid) dgettext ("bison-runtime", msgid)
+# endif
+# endif
+# ifndef YY_
+# define YY_(msgid) msgid
+# endif
+#endif
+/* Suppress unused-variable warnings by "using" E. */
+#if ! defined lint || defined __GNUC__
+# define YYUSE(e) ((void) (e))
+#else
+# define YYUSE(e) /* empty */
+#endif
-/* Line 214 of yacc.c. */
-#line 249 "swf4compiler.tab.c"
+/* Identity function, used to suppress warnings about constant conditions. */
+#ifndef lint
+# define YYID(n) (n)
+#else
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static int
+YYID (int yyi)
+#else
+static int
+YYID (yyi)
+ int yyi;
+#endif
+{
+ return yyi;
+}
+#endif
-#if ! defined (yyoverflow) || YYERROR_VERBOSE
+#if ! defined yyoverflow || YYERROR_VERBOSE
/* The parser invokes alloca or malloc; define the necessary symbols. */
-# if YYSTACK_USE_ALLOCA
-# define YYSTACK_ALLOC alloca
-# else
-# ifndef YYSTACK_USE_ALLOCA
-# if defined (alloca) || defined (_ALLOCA_H)
-# define YYSTACK_ALLOC alloca
+# ifdef YYSTACK_USE_ALLOCA
+# if YYSTACK_USE_ALLOCA
+# ifdef __GNUC__
+# define YYSTACK_ALLOC __builtin_alloca
+# elif defined __BUILTIN_VA_ARG_INCR
+# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
+# elif defined _AIX
+# define YYSTACK_ALLOC __alloca
+# elif defined _MSC_VER
+# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
+# define alloca _alloca
# else
-# ifdef __GNUC__
-# define YYSTACK_ALLOC __builtin_alloca
+# define YYSTACK_ALLOC alloca
+# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
# endif
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
- /* Pacify GCC's `empty if-body' warning. */
-# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
+ /* Pacify GCC's `empty if-body' warning. */
+# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
+# ifndef YYSTACK_ALLOC_MAXIMUM
+ /* The OS might guarantee only one guard page at the bottom of the stack,
+ and a page size can be as small as 4096 bytes. So we cannot safely
+ invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
+ to allow for a few compiler-allocated temporary stack slots. */
+# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
+# endif
# else
-# if defined (__STDC__) || defined (__cplusplus)
+# define YYSTACK_ALLOC YYMALLOC
+# define YYSTACK_FREE YYFREE
+# ifndef YYSTACK_ALLOC_MAXIMUM
+# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
+# endif
+# if (defined __cplusplus && ! defined _STDLIB_H \
+ && ! ((defined YYMALLOC || defined malloc) \
+ && (defined YYFREE || defined free)))
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
+# endif
+# ifndef YYMALLOC
+# define YYMALLOC malloc
+# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
+# endif
+# endif
+# ifndef YYFREE
+# define YYFREE free
+# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+void free (void *); /* INFRINGES ON USER NAME SPACE */
+# endif
# endif
-# define YYSTACK_ALLOC malloc
-# define YYSTACK_FREE free
# endif
-#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
+#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
-#if (! defined (yyoverflow) \
- && (! defined (__cplusplus) \
- || (YYSTYPE_IS_TRIVIAL)))
+#if (! defined yyoverflow \
+ && (! defined __cplusplus \
+ || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
- short yyss;
- YYSTYPE yyvs;
- };
+ yytype_int16 yyss_alloc;
+ YYSTYPE yyvs_alloc;
+};
/* The size of the maximum gap between one aligned stack and the next. */
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
/* The size of an array large to enough to hold all stacks, each with
N elements. */
# define YYSTACK_BYTES(N) \
- ((N) * (sizeof (short) + sizeof (YYSTYPE)) \
+ ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
+ YYSTACK_GAP_MAXIMUM)
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
-# if 1 < __GNUC__
+# if defined __GNUC__ && 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
# else
# define YYCOPY(To, From, Count) \
do \
{ \
- register YYSIZE_T yyi; \
+ YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
- while (0)
+ while (YYID (0))
# endif
# endif
elements in the stack, and YYPTR gives the new location of the
stack. Advance YYPTR to a properly aligned location for the next
stack. */
-# define YYSTACK_RELOCATE(Stack) \
+# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
do \
{ \
YYSIZE_T yynewbytes; \
- YYCOPY (&yyptr->Stack, Stack, yysize); \
- Stack = &yyptr->Stack; \
+ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
+ Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
- while (0)
-
-#endif
+ while (YYID (0))
-#if defined (__STDC__) || defined (__cplusplus)
- typedef signed char yysigned_char;
-#else
- typedef short yysigned_char;
#endif
-/* YYFINAL -- State number of the termination state. */
+/* YYFINAL -- State number of the termination state. */
#define YYFINAL 108
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 1341
-/* YYNTOKENS -- Number of terminals. */
+/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 86
-/* YYNNTS -- Number of nonterminals. */
+/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 22
-/* YYNRULES -- Number of rules. */
+/* YYNRULES -- Number of rules. */
#define YYNRULES 137
-/* YYNRULES -- Number of states. */
+/* YYNRULES -- Number of states. */
#define YYNSTATES 369
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
#define YYMAXUTOK 322
-#define YYTRANSLATE(YYX) \
+#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
-static const unsigned char yytranslate[] =
+static const yytype_uint8 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
#if YYDEBUG
/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
YYRHS. */
-static const unsigned short yyprhs[] =
+static const yytype_uint16 yyprhs[] =
{
0, 0, 3, 5, 7, 10, 12, 15, 19, 21,
24, 26, 28, 30, 32, 34, 38, 39, 41, 44,
577, 581, 585, 591, 597, 603, 609, 615
};
-/* YYRHS -- A `-1'-separated list of the rules' RHS. */
-static const yysigned_char yyrhs[] =
+/* YYRHS -- A `-1'-separated list of the rules' RHS. */
+static const yytype_int8 yyrhs[] =
{
87, 0, -1, 88, -1, 89, -1, 88, 89, -1,
90, -1, 80, 81, -1, 80, 92, 81, -1, 82,
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
-static const unsigned short yyrline[] =
+static const yytype_uint16 yyrline[] =
{
0, 144, 144, 150, 151, 156, 160, 161, 162, 163,
164, 165, 166, 167, 171, 172, 176, 177, 178, 185,
};
#endif
-#if YYDEBUG || YYERROR_VERBOSE
-/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
- First, the terminals, then, starting at YYNTOKENS, nonterminals. */
+#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
+/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
+ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
- "$end", "error", "$undefined", "BREAK", "FOR", "CONTINUE", "IF", "ELSE",
- "DO", "WHILE", "THIS", "EVAL", "TIME", "RANDOM", "LENGTH", "INT",
- "CONCAT", "DUPLICATECLIP", "REMOVECLIP", "TRACE", "STARTDRAG",
- "STOPDRAG", "ORD", "CHR", "CALLFRAME", "GETURL", "GETURL1", "LOADMOVIE",
- "LOADVARIABLES", "POSTURL", "SUBSTR", "GETPROPERTY", "NEXTFRAME",
- "PREVFRAME", "PLAY", "STOP", "TOGGLEQUALITY", "STOPSOUNDS", "GOTOFRAME",
- "GOTOANDPLAY", "FRAMELOADED", "SETTARGET", "TELLTARGET", "STRING",
- "NUMBER", "IDENTIFIER", "PATH", "GETURL_METHOD", "\"==\"", "\"<=\"",
- "\">=\"", "\"!=\"", "\"&&\"", "\"||\"", "\"++\"", "\"--\"", "\"+=\"",
- "\"/=\"", "\"*=\"", "\"-=\"", "\"===\"", "\"!==\"", "\"<=>\"", "\"..\"",
- "\"end\"", "','", "'='", "'?'", "':'", "'<'", "'>'", "'&'", "'+'",
- "'-'", "'*'", "'/'", "'!'", "UMINUS", "POSTFIX", "NEGATE", "'{'", "'}'",
- "';'", "'('", "')'", "'.'", "$accept", "program", "elems", "elem",
- "stmt", "assign_stmts", "statements", "if_stmt", "expr_opt",
- "iter_stmt", "assign_stmts_opt", "cont_stmt", "break_stmt",
- "void_function_call", "function_call", "pf_expr", "rhs_expr",
- "variable", "sprite", "lhs_expr", "assign_stmt", "expr", 0
+ "$end", "error", "$undefined", "BREAK", "FOR", "CONTINUE", "IF", "ELSE",
+ "DO", "WHILE", "THIS", "EVAL", "TIME", "RANDOM", "LENGTH", "INT",
+ "CONCAT", "DUPLICATECLIP", "REMOVECLIP", "TRACE", "STARTDRAG",
+ "STOPDRAG", "ORD", "CHR", "CALLFRAME", "GETURL", "GETURL1", "LOADMOVIE",
+ "LOADVARIABLES", "POSTURL", "SUBSTR", "GETPROPERTY", "NEXTFRAME",
+ "PREVFRAME", "PLAY", "STOP", "TOGGLEQUALITY", "STOPSOUNDS", "GOTOFRAME",
+ "GOTOANDPLAY", "FRAMELOADED", "SETTARGET", "TELLTARGET", "STRING",
+ "NUMBER", "IDENTIFIER", "PATH", "GETURL_METHOD", "\"==\"", "\"<=\"",
+ "\">=\"", "\"!=\"", "\"&&\"", "\"||\"", "\"++\"", "\"--\"", "\"+=\"",
+ "\"/=\"", "\"*=\"", "\"-=\"", "\"===\"", "\"!==\"", "\"<=>\"", "\"..\"",
+ "\"end\"", "','", "'='", "'?'", "':'", "'<'", "'>'", "'&'", "'+'", "'-'",
+ "'*'", "'/'", "'!'", "UMINUS", "POSTFIX", "NEGATE", "'{'", "'}'", "';'",
+ "'('", "')'", "'.'", "$accept", "program", "elems", "elem", "stmt",
+ "assign_stmts", "statements", "if_stmt", "expr_opt", "iter_stmt",
+ "assign_stmts_opt", "cont_stmt", "break_stmt", "void_function_call",
+ "function_call", "pf_expr", "rhs_expr", "variable", "sprite", "lhs_expr",
+ "assign_stmt", "expr", 0
};
#endif
# ifdef YYPRINT
/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
token YYLEX-NUM. */
-static const unsigned short yytoknum[] =
+static const yytype_uint16 yytoknum[] =
{
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
-static const unsigned char yyr1[] =
+static const yytype_uint8 yyr1[] =
{
0, 86, 87, 88, 88, 89, 90, 90, 90, 90,
90, 90, 90, 90, 91, 91, 92, 92, 92, 93,
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
-static const unsigned char yyr2[] =
+static const yytype_uint8 yyr2[] =
{
0, 2, 1, 1, 2, 1, 2, 3, 1, 2,
1, 1, 1, 1, 1, 3, 0, 1, 2, 10,
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
STATE-NUM when YYTABLE doesn't specify something else to do. Zero
means the default is an error. */
-static const unsigned char yydefact[] =
+static const yytype_uint8 yydefact[] =
{
0, 0, 0, 0, 0, 0, 0, 112, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 74, 19, 22, 0, 0, 0, 0, 50
};
-/* YYDEFGOTO[NTERM-NUM]. */
-static const short yydefgoto[] =
+/* YYDEFGOTO[NTERM-NUM]. */
+static const yytype_int16 yydefgoto[] =
{
-1, 39, 40, 41, 42, 120, 85, 43, 271, 44,
121, 45, 46, 47, 103, 48, 125, 105, 106, 107,
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -70
-static const short yypact[] =
+static const yytype_int16 yypact[] =
{
780, -69, -64, -60, -49, 780, -28, -70, -22, -14,
-2, 3, 4, 11, 13, 17, 19, 20, 23, 25,
};
/* YYPGOTO[NTERM-NUM]. */
-static const short yypgoto[] =
+static const yytype_int16 yypgoto[] =
{
-70, -70, -70, 285, 53, -70, -70, -70, -70, -70,
21, -70, -70, -70, -70, -70, 346, 0, 6, 12,
number is the opposite. If zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */
#define YYTABLE_NINF -121
-static const short yytable[] =
+static const yytype_int16 yytable[] =
{
49, 122, 314, 179, 180, 49, 50, 191, 192, 193,
194, 50, 51, 53, 316, 7, 186, 51, -119, 54,
0, 245
};
-static const short yycheck[] =
+static const yytype_int16 yycheck[] =
{
0, 54, 65, 49, 50, 5, 0, 72, 73, 74,
75, 5, 0, 82, 65, 10, 62, 5, 66, 83,
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
-static const unsigned char yystos[] =
+static const yytype_uint8 yystos[] =
{
0, 3, 4, 5, 6, 8, 9, 10, 17, 18,
19, 20, 21, 24, 25, 26, 27, 28, 32, 33,
107, 84, 90, 90, 65, 107, 65, 107, 84
};
-#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
-# define YYSIZE_T __SIZE_TYPE__
-#endif
-#if ! defined (YYSIZE_T) && defined (size_t)
-# define YYSIZE_T size_t
-#endif
-#if ! defined (YYSIZE_T)
-# if defined (__STDC__) || defined (__cplusplus)
-# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
-# endif
-#endif
-#if ! defined (YYSIZE_T)
-# define YYSIZE_T unsigned int
-#endif
-
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY (-2)
#define YYACCEPT goto yyacceptlab
#define YYABORT goto yyabortlab
-#define YYERROR goto yyerrlab1
+#define YYERROR goto yyerrorlab
/* Like YYERROR except do call yyerror. This remains here temporarily
yychar = (Token); \
yylval = (Value); \
yytoken = YYTRANSLATE (yychar); \
- YYPOPSTACK; \
+ YYPOPSTACK (1); \
goto yybackup; \
} \
else \
- { \
- yyerror ("syntax error: cannot back up");\
+ { \
+ yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
-while (0)
+while (YYID (0))
+
#define YYTERROR 1
#define YYERRCODE 256
-/* YYLLOC_DEFAULT -- Compute the default location (before the actions
- are run). */
+/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
+ If N is 0, then set CURRENT to the empty location which ends
+ the previous symbol: RHS[0] (always defined). */
+
+#define YYRHSLOC(Rhs, K) ((Rhs)[K])
#ifndef YYLLOC_DEFAULT
-# define YYLLOC_DEFAULT(Current, Rhs, N) \
- Current.first_line = Rhs[1].first_line; \
- Current.first_column = Rhs[1].first_column; \
- Current.last_line = Rhs[N].last_line; \
- Current.last_column = Rhs[N].last_column;
+# define YYLLOC_DEFAULT(Current, Rhs, N) \
+ do \
+ if (YYID (N)) \
+ { \
+ (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
+ (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
+ (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
+ (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
+ } \
+ else \
+ { \
+ (Current).first_line = (Current).last_line = \
+ YYRHSLOC (Rhs, 0).last_line; \
+ (Current).first_column = (Current).last_column = \
+ YYRHSLOC (Rhs, 0).last_column; \
+ } \
+ while (YYID (0))
+#endif
+
+
+/* YY_LOCATION_PRINT -- Print the location on the stream.
+ This macro was not mandated originally: define only if we know
+ we won't break user code: when these are the locations we know. */
+
+#ifndef YY_LOCATION_PRINT
+# if YYLTYPE_IS_TRIVIAL
+# define YY_LOCATION_PRINT(File, Loc) \
+ fprintf (File, "%d.%d-%d.%d", \
+ (Loc).first_line, (Loc).first_column, \
+ (Loc).last_line, (Loc).last_column)
+# else
+# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
+# endif
#endif
+
/* YYLEX -- calling `yylex' with the right arguments. */
#ifdef YYLEX_PARAM
do { \
if (yydebug) \
YYFPRINTF Args; \
-} while (0)
+} while (YYID (0))
-# define YYDSYMPRINT(Args) \
-do { \
- if (yydebug) \
- yysymprint Args; \
-} while (0)
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
+do { \
+ if (yydebug) \
+ { \
+ YYFPRINTF (stderr, "%s ", Title); \
+ yy_symbol_print (stderr, \
+ Type, Value); \
+ YYFPRINTF (stderr, "\n"); \
+ } \
+} while (YYID (0))
-# define YYDSYMPRINTF(Title, Token, Value, Location) \
-do { \
- if (yydebug) \
- { \
- YYFPRINTF (stderr, "%s ", Title); \
- yysymprint (stderr, \
- Token, Value); \
- YYFPRINTF (stderr, "\n"); \
- } \
-} while (0)
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_value_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (!yyvaluep)
+ return;
+# ifdef YYPRINT
+ if (yytype < YYNTOKENS)
+ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+# else
+ YYUSE (yyoutput);
+# endif
+ switch (yytype)
+ {
+ default:
+ break;
+ }
+}
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (yytype < YYNTOKENS)
+ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ else
+ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+
+ yy_symbol_value_print (yyoutput, yytype, yyvaluep);
+ YYFPRINTF (yyoutput, ")");
+}
/*------------------------------------------------------------------.
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
-| TOP (cinluded). |
+| TOP (included). |
`------------------------------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
-yy_stack_print (short *bottom, short *top)
+yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
#else
static void
-yy_stack_print (bottom, top)
- short *bottom;
- short *top;
+yy_stack_print (yybottom, yytop)
+ yytype_int16 *yybottom;
+ yytype_int16 *yytop;
#endif
{
YYFPRINTF (stderr, "Stack now");
- for (/* Nothing. */; bottom <= top; ++bottom)
- YYFPRINTF (stderr, " %d", *bottom);
+ for (; yybottom <= yytop; yybottom++)
+ {
+ int yybot = *yybottom;
+ YYFPRINTF (stderr, " %d", yybot);
+ }
YYFPRINTF (stderr, "\n");
}
do { \
if (yydebug) \
yy_stack_print ((Bottom), (Top)); \
-} while (0)
+} while (YYID (0))
/*------------------------------------------------.
| Report that the YYRULE is going to be reduced. |
`------------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
-yy_reduce_print (int yyrule)
+yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
#else
static void
-yy_reduce_print (yyrule)
+yy_reduce_print (yyvsp, yyrule)
+ YYSTYPE *yyvsp;
int yyrule;
#endif
{
+ int yynrhs = yyr2[yyrule];
int yyi;
- unsigned int yylineno = yyrline[yyrule];
- YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
- yyrule - 1, yylineno);
- /* Print the symbols being reduced, and their result. */
- for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
- YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
- YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
+ unsigned long int yylno = yyrline[yyrule];
+ YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
+ yyrule - 1, yylno);
+ /* The symbols being reduced. */
+ for (yyi = 0; yyi < yynrhs; yyi++)
+ {
+ YYFPRINTF (stderr, " $%d = ", yyi + 1);
+ yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
+ &(yyvsp[(yyi + 1) - (yynrhs)])
+ );
+ YYFPRINTF (stderr, "\n");
+ }
}
# define YY_REDUCE_PRINT(Rule) \
do { \
if (yydebug) \
- yy_reduce_print (Rule); \
-} while (0)
+ yy_reduce_print (yyvsp, Rule); \
+} while (YYID (0))
/* Nonzero means print parse trace. It is left uninitialized so that
multiple parsers can coexist. */
int yydebug;
#else /* !YYDEBUG */
# define YYDPRINTF(Args)
-# define YYDSYMPRINT(Args)
-# define YYDSYMPRINTF(Title, Token, Value, Location)
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
# define YY_STACK_PRINT(Bottom, Top)
# define YY_REDUCE_PRINT(Rule)
#endif /* !YYDEBUG */
if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if
- SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
+ YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
evaluated with infinite-precision integer arithmetic. */
-#if YYMAXDEPTH == 0
-# undef YYMAXDEPTH
-#endif
-
#ifndef YYMAXDEPTH
# define YYMAXDEPTH 10000
#endif
#if YYERROR_VERBOSE
# ifndef yystrlen
-# if defined (__GLIBC__) && defined (_STRING_H)
+# if defined __GLIBC__ && defined _STRING_H
# define yystrlen strlen
# else
/* Return the length of YYSTR. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static YYSIZE_T
-# if defined (__STDC__) || defined (__cplusplus)
yystrlen (const char *yystr)
-# else
+#else
+static YYSIZE_T
yystrlen (yystr)
- const char *yystr;
-# endif
+ const char *yystr;
+#endif
{
- register const char *yys = yystr;
-
- while (*yys++ != '\0')
+ YYSIZE_T yylen;
+ for (yylen = 0; yystr[yylen]; yylen++)
continue;
-
- return yys - yystr - 1;
+ return yylen;
}
# endif
# endif
# ifndef yystpcpy
-# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
+# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
# define yystpcpy stpcpy
# else
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
YYDEST. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static char *
-# if defined (__STDC__) || defined (__cplusplus)
yystpcpy (char *yydest, const char *yysrc)
-# else
+#else
+static char *
yystpcpy (yydest, yysrc)
- char *yydest;
- const char *yysrc;
-# endif
+ char *yydest;
+ const char *yysrc;
+#endif
{
- register char *yyd = yydest;
- register const char *yys = yysrc;
+ char *yyd = yydest;
+ const char *yys = yysrc;
while ((*yyd++ = *yys++) != '\0')
continue;
# endif
# endif
-#endif /* !YYERROR_VERBOSE */
+# ifndef yytnamerr
+/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
+ quotes and backslashes, so that it's suitable for yyerror. The
+ heuristic is that double-quoting is unnecessary unless the string
+ contains an apostrophe, a comma, or backslash (other than
+ backslash-backslash). YYSTR is taken from yytname. If YYRES is
+ null, do not copy; instead, return the length of what the result
+ would have been. */
+static YYSIZE_T
+yytnamerr (char *yyres, const char *yystr)
+{
+ if (*yystr == '"')
+ {
+ YYSIZE_T yyn = 0;
+ char const *yyp = yystr;
+
+ for (;;)
+ switch (*++yyp)
+ {
+ case '\'':
+ case ',':
+ goto do_not_strip_quotes;
+
+ case '\\':
+ if (*++yyp != '\\')
+ goto do_not_strip_quotes;
+ /* Fall through. */
+ default:
+ if (yyres)
+ yyres[yyn] = *yyp;
+ yyn++;
+ break;
+
+ case '"':
+ if (yyres)
+ yyres[yyn] = '\0';
+ return yyn;
+ }
+ do_not_strip_quotes: ;
+ }
-\f
+ if (! yyres)
+ return yystrlen (yystr);
-#if YYDEBUG
-/*--------------------------------.
-| Print this symbol on YYOUTPUT. |
-`--------------------------------*/
+ return yystpcpy (yyres, yystr) - yyres;
+}
+# endif
-#if defined (__STDC__) || defined (__cplusplus)
-static void
-yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
-#else
-static void
-yysymprint (yyoutput, yytype, yyvaluep)
- FILE *yyoutput;
- int yytype;
- YYSTYPE *yyvaluep;
-#endif
+/* Copy into YYRESULT an error message about the unexpected token
+ YYCHAR while in state YYSTATE. Return the number of bytes copied,
+ including the terminating null byte. If YYRESULT is null, do not
+ copy anything; just return the number of bytes that would be
+ copied. As a special case, return 0 if an ordinary "syntax error"
+ message will do. Return YYSIZE_MAXIMUM if overflow occurs during
+ size calculation. */
+static YYSIZE_T
+yysyntax_error (char *yyresult, int yystate, int yychar)
{
- /* Pacify ``unused variable'' warnings. */
- (void) yyvaluep;
+ int yyn = yypact[yystate];
- if (yytype < YYNTOKENS)
- {
- YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
-# ifdef YYPRINT
- YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
-# endif
- }
+ if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
+ return 0;
else
- YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
-
- switch (yytype)
{
- default:
- break;
+ int yytype = YYTRANSLATE (yychar);
+ YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
+ YYSIZE_T yysize = yysize0;
+ YYSIZE_T yysize1;
+ int yysize_overflow = 0;
+ enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
+ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
+ int yyx;
+
+# if 0
+ /* This is so xgettext sees the translatable formats that are
+ constructed on the fly. */
+ YY_("syntax error, unexpected %s");
+ YY_("syntax error, unexpected %s, expecting %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
+# endif
+ char *yyfmt;
+ char const *yyf;
+ static char const yyunexpected[] = "syntax error, unexpected %s";
+ static char const yyexpecting[] = ", expecting %s";
+ static char const yyor[] = " or %s";
+ char yyformat[sizeof yyunexpected
+ + sizeof yyexpecting - 1
+ + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
+ * (sizeof yyor - 1))];
+ char const *yyprefix = yyexpecting;
+
+ /* Start YYX at -YYN if negative to avoid negative indexes in
+ YYCHECK. */
+ int yyxbegin = yyn < 0 ? -yyn : 0;
+
+ /* Stay within bounds of both yycheck and yytname. */
+ int yychecklim = YYLAST - yyn + 1;
+ int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
+ int yycount = 1;
+
+ yyarg[0] = yytname[yytype];
+ yyfmt = yystpcpy (yyformat, yyunexpected);
+
+ for (yyx = yyxbegin; yyx < yyxend; ++yyx)
+ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+ {
+ if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
+ {
+ yycount = 1;
+ yysize = yysize0;
+ yyformat[sizeof yyunexpected - 1] = '\0';
+ break;
+ }
+ yyarg[yycount++] = yytname[yyx];
+ yysize1 = yysize + yytnamerr (0, yytname[yyx]);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
+ yyfmt = yystpcpy (yyfmt, yyprefix);
+ yyprefix = yyor;
+ }
+
+ yyf = YY_(yyformat);
+ yysize1 = yysize + yystrlen (yyf);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
+
+ if (yysize_overflow)
+ return YYSIZE_MAXIMUM;
+
+ if (yyresult)
+ {
+ /* Avoid sprintf, as that infringes on the user's name space.
+ Don't have undefined behavior even if the translation
+ produced a string with the wrong number of "%s"s. */
+ char *yyp = yyresult;
+ int yyi = 0;
+ while ((*yyp = *yyf) != '\0')
+ {
+ if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
+ {
+ yyp += yytnamerr (yyp, yyarg[yyi++]);
+ yyf += 2;
+ }
+ else
+ {
+ yyp++;
+ yyf++;
+ }
+ }
+ }
+ return yysize;
}
- YYFPRINTF (yyoutput, ")");
}
+#endif /* YYERROR_VERBOSE */
+\f
-#endif /* ! YYDEBUG */
/*-----------------------------------------------.
| Release the memory associated to this symbol. |
`-----------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
-yydestruct (int yytype, YYSTYPE *yyvaluep)
+yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
#else
static void
-yydestruct (yytype, yyvaluep)
+yydestruct (yymsg, yytype, yyvaluep)
+ const char *yymsg;
int yytype;
YYSTYPE *yyvaluep;
#endif
{
- /* Pacify ``unused variable'' warnings. */
- (void) yyvaluep;
+ YYUSE (yyvaluep);
+
+ if (!yymsg)
+ yymsg = "Deleting";
+ YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
switch (yytype)
{
default:
- break;
+ break;
}
}
-\f
/* Prevent warnings from -Wmissing-prototypes. */
-
#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
+#if defined __STDC__ || defined __cplusplus
int yyparse (void *YYPARSE_PARAM);
-# else
+#else
int yyparse ();
-# endif
+#endif
#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
+#if defined __STDC__ || defined __cplusplus
int yyparse (void);
#else
int yyparse ();
#endif /* ! YYPARSE_PARAM */
-
/* The lookahead symbol. */
int yychar;
-/*----------.
-| yyparse. |
-`----------*/
+/*-------------------------.
+| yyparse or yypush_parse. |
+`-------------------------*/
#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
-int yyparse (void *YYPARSE_PARAM)
-# else
-int yyparse (YYPARSE_PARAM)
- void *YYPARSE_PARAM;
-# endif
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+int
+yyparse (void *YYPARSE_PARAM)
+#else
+int
+yyparse (YYPARSE_PARAM)
+ void *YYPARSE_PARAM;
+#endif
#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
int
yyparse (void)
#else
#endif
#endif
{
-
- register int yystate;
- register int yyn;
- int yyresult;
- /* Number of tokens to shift before error messages enabled. */
- int yyerrstatus;
- /* Lookahead token as an internal (translated) token number. */
- int yytoken = 0;
- /* Three stacks and their tools:
- `yyss': related to states,
- `yyvs': related to semantic values,
- `yyls': related to locations.
- Refer to the stacks thru separate pointers, to allow yyoverflow
- to reallocate them elsewhere. */
+ int yystate;
+ /* Number of tokens to shift before error messages enabled. */
+ int yyerrstatus;
- /* The state stack. */
- short yyssa[YYINITDEPTH];
- short *yyss = yyssa;
- register short *yyssp;
+ /* The stacks and their tools:
+ `yyss': related to states.
+ `yyvs': related to semantic values.
- /* The semantic value stack. */
- YYSTYPE yyvsa[YYINITDEPTH];
- YYSTYPE *yyvs = yyvsa;
- register YYSTYPE *yyvsp;
+ Refer to the stacks thru separate pointers, to allow yyoverflow
+ to reallocate them elsewhere. */
+ /* The state stack. */
+ yytype_int16 yyssa[YYINITDEPTH];
+ yytype_int16 *yyss;
+ yytype_int16 *yyssp;
+ /* The semantic value stack. */
+ YYSTYPE yyvsa[YYINITDEPTH];
+ YYSTYPE *yyvs;
+ YYSTYPE *yyvsp;
-#define YYPOPSTACK (yyvsp--, yyssp--)
-
- YYSIZE_T yystacksize = YYINITDEPTH;
+ YYSIZE_T yystacksize;
+ int yyn;
+ int yyresult;
+ /* Lookahead token as an internal (translated) token number. */
+ int yytoken;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
+#if YYERROR_VERBOSE
+ /* Buffer for error messages, and its allocated size. */
+ char yymsgbuf[128];
+ char *yymsg = yymsgbuf;
+ YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
+#endif
+
+#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
+
+ /* The number of symbols on the RHS of the reduced rule.
+ Keep to zero when no symbol should be popped. */
+ int yylen = 0;
- /* When reducing, the number of symbols on the RHS of the reduced
- rule. */
- int yylen;
+ yytoken = 0;
+ yyss = yyssa;
+ yyvs = yyvsa;
+ yystacksize = YYINITDEPTH;
YYDPRINTF ((stderr, "Starting parse\n"));
yystate = 0;
yyerrstatus = 0;
yynerrs = 0;
- yychar = YYEMPTY; /* Cause a token to be read. */
+ yychar = YYEMPTY; /* Cause a token to be read. */
/* Initialize stack pointers.
Waste one element of value and location stack
so that they stay on the same level as the state stack.
The wasted elements are never initialized. */
-
yyssp = yyss;
yyvsp = yyvs;
`------------------------------------------------------------*/
yynewstate:
/* In all cases, when you get here, the value and location stacks
- have just been pushed. so pushing a state here evens the stacks.
- */
+ have just been pushed. So pushing a state here evens the stacks. */
yyssp++;
yysetstate:
#ifdef yyoverflow
{
- /* Give user a chance to reallocate the stack. Use copies of
+ /* Give user a chance to reallocate the stack. Use copies of
these so that the &'s don't force the real ones into
memory. */
YYSTYPE *yyvs1 = yyvs;
- short *yyss1 = yyss;
-
+ yytype_int16 *yyss1 = yyss;
/* Each stack pointer address is followed by the size of the
data in use in that stack, in bytes. This used to be a
conditional around just the two extra args, but that might
be undefined if yyoverflow is a macro. */
- yyoverflow ("parser stack overflow",
+ yyoverflow (YY_("memory exhausted"),
&yyss1, yysize * sizeof (*yyssp),
&yyvs1, yysize * sizeof (*yyvsp),
-
&yystacksize);
yyss = yyss1;
}
#else /* no yyoverflow */
# ifndef YYSTACK_RELOCATE
- goto yyoverflowlab;
+ goto yyexhaustedlab;
# else
/* Extend the stack our own way. */
if (YYMAXDEPTH <= yystacksize)
- goto yyoverflowlab;
+ goto yyexhaustedlab;
yystacksize *= 2;
if (YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
{
- short *yyss1 = yyss;
+ yytype_int16 *yyss1 = yyss;
union yyalloc *yyptr =
(union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
if (! yyptr)
- goto yyoverflowlab;
- YYSTACK_RELOCATE (yyss);
- YYSTACK_RELOCATE (yyvs);
-
+ goto yyexhaustedlab;
+ YYSTACK_RELOCATE (yyss_alloc, yyss);
+ YYSTACK_RELOCATE (yyvs_alloc, yyvs);
# undef YYSTACK_RELOCATE
if (yyss1 != yyssa)
YYSTACK_FREE (yyss1);
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
-
YYDPRINTF ((stderr, "Stack size increased to %lu\n",
(unsigned long int) yystacksize));
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
+ if (yystate == YYFINAL)
+ YYACCEPT;
+
goto yybackup;
/*-----------.
`-----------*/
yybackup:
-/* Do appropriate processing given the current state. */
-/* Read a lookahead token if we need one and don't already have one. */
-/* yyresume: */
+ /* Do appropriate processing given the current state. Read a
+ lookahead token if we need one and don't already have one. */
/* First try to decide what to do without reference to lookahead token. */
-
yyn = yypact[yystate];
if (yyn == YYPACT_NINF)
goto yydefault;
else
{
yytoken = YYTRANSLATE (yychar);
- YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);
+ YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
}
/* If the proper action on seeing token YYTOKEN is to reduce or to
goto yyreduce;
}
- if (yyn == YYFINAL)
- YYACCEPT;
-
- /* Shift the lookahead token. */
- YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));
-
- /* Discard the token being shifted unless it is eof. */
- if (yychar != YYEOF)
- yychar = YYEMPTY;
-
- *++yyvsp = yylval;
-
-
/* Count tokens shifted since error; after three, turn off error
status. */
if (yyerrstatus)
yyerrstatus--;
+ /* Shift the lookahead token. */
+ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
+
+ /* Discard the shifted token. */
+ yychar = YYEMPTY;
+
yystate = yyn;
+ *++yyvsp = yylval;
+
goto yynewstate;
switch (yyn)
{
case 2:
+
+/* Line 1455 of yacc.c */
#line 145 "swf4compiler.y"
- { *((Buffer *)buffer) = yyvsp[0].action; ;}
+ { *((Buffer *)buffer) = (yyvsp[(1) - (1)].action); ;}
break;
case 4:
+
+/* Line 1455 of yacc.c */
#line 152 "swf4compiler.y"
- { bufferConcat(yyvsp[-1].action, yyvsp[0].action); ;}
+ { bufferConcat((yyvsp[(1) - (2)].action), (yyvsp[(2) - (2)].action)); ;}
break;
case 6:
+
+/* Line 1455 of yacc.c */
#line 160 "swf4compiler.y"
- { yyval.action = NULL; ;}
+ { (yyval.action) = NULL; ;}
break;
case 7:
+
+/* Line 1455 of yacc.c */
#line 161 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action; ;}
+ { (yyval.action) = (yyvsp[(2) - (3)].action); ;}
break;
case 8:
+
+/* Line 1455 of yacc.c */
#line 162 "swf4compiler.y"
- { yyval.action = NULL; ;}
+ { (yyval.action) = NULL; ;}
break;
case 15:
+
+/* Line 1455 of yacc.c */
#line 172 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action)); ;}
break;
case 16:
+
+/* Line 1455 of yacc.c */
#line 176 "swf4compiler.y"
- { yyval.action = NULL; ;}
+ { (yyval.action) = NULL; ;}
break;
case 18:
+
+/* Line 1455 of yacc.c */
#line 179 "swf4compiler.y"
- { bufferConcat(yyvsp[-1].action, yyvsp[0].action); ;}
+ { bufferConcat((yyvsp[(1) - (2)].action), (yyvsp[(2) - (2)].action)); ;}
break;
case 19:
+
+/* Line 1455 of yacc.c */
#line 186 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_WAITFORFRAME);
- bufferWriteS16(yyval.action, 3);
- bufferWriteS16(yyval.action, atoi(yyvsp[-5].str));
- free(yyvsp[-5].str);
- bufferWriteU8(yyval.action, 1); /* if not loaded, jump to.. */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action)+5);
- bufferConcat(yyval.action, yyvsp[0].action); /* ..here */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[-2].action));
- bufferConcat(yyval.action, yyvsp[-2].action); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_WAITFORFRAME);
+ bufferWriteS16((yyval.action), 3);
+ bufferWriteS16((yyval.action), atoi((yyvsp[(5) - (10)].str)));
+ free((yyvsp[(5) - (10)].str));
+ bufferWriteU8((yyval.action), 1); /* if not loaded, jump to.. */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(10) - (10)].action))+5);
+ bufferConcat((yyval.action), (yyvsp[(10) - (10)].action)); /* ..here */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(8) - (10)].action)));
+ bufferConcat((yyval.action), (yyvsp[(8) - (10)].action)); ;}
break;
case 20:
+
+/* Line 1455 of yacc.c */
#line 202 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_WAITFORFRAME);
- bufferWriteS16(yyval.action, 3);
- bufferWriteS16(yyval.action, atoi(yyvsp[-3].str));
- free(yyvsp[-3].str);
- bufferWriteU8(yyval.action, 1); /* if not loaded, jump to.. */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, 5);
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS); /* ..here */
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action)); /* ..and then out */
- bufferConcat(yyval.action, yyvsp[0].action); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_WAITFORFRAME);
+ bufferWriteS16((yyval.action), 3);
+ bufferWriteS16((yyval.action), atoi((yyvsp[(5) - (8)].str)));
+ free((yyvsp[(5) - (8)].str));
+ bufferWriteU8((yyval.action), 1); /* if not loaded, jump to.. */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), 5);
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS); /* ..here */
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(8) - (8)].action))); /* ..and then out */
+ bufferConcat((yyval.action), (yyvsp[(8) - (8)].action)); ;}
break;
case 21:
+
+/* Line 1455 of yacc.c */
#line 218 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_WAITFORFRAME);
- bufferWriteS16(yyval.action, 3);
- bufferWriteS16(yyval.action, atoi(yyvsp[-3].str));
- free(yyvsp[-3].str);
- bufferWriteU8(yyval.action, 1); /* if not loaded, jump to.. */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action));
- bufferConcat(yyval.action, yyvsp[0].action); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_WAITFORFRAME);
+ bufferWriteS16((yyval.action), 3);
+ bufferWriteS16((yyval.action), atoi((yyvsp[(6) - (9)].str)));
+ free((yyvsp[(6) - (9)].str));
+ bufferWriteU8((yyval.action), 1); /* if not loaded, jump to.. */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(9) - (9)].action)));
+ bufferConcat((yyval.action), (yyvsp[(9) - (9)].action)); ;}
break;
case 22:
+
+/* Line 1455 of yacc.c */
#line 230 "swf4compiler.y"
- { yyval.action = yyvsp[-5].action;
- bufferWriteU8(yyval.action, SWFACTION_WAITFORFRAMEEXPRESSION);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, 1); /* if not loaded, jump to.. */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action)+5);
- bufferConcat(yyval.action, yyvsp[0].action); /* ..here */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[-2].action));
- bufferConcat(yyval.action, yyvsp[-2].action); ;}
+ { (yyval.action) = (yyvsp[(5) - (10)].action);
+ bufferWriteU8((yyval.action), SWFACTION_WAITFORFRAMEEXPRESSION);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), 1); /* if not loaded, jump to.. */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(10) - (10)].action))+5);
+ bufferConcat((yyval.action), (yyvsp[(10) - (10)].action)); /* ..here */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(8) - (10)].action)));
+ bufferConcat((yyval.action), (yyvsp[(8) - (10)].action)); ;}
break;
case 23:
+
+/* Line 1455 of yacc.c */
#line 244 "swf4compiler.y"
- { yyval.action = yyvsp[-3].action;
- bufferWriteU8(yyval.action, SWFACTION_WAITFORFRAMEEXPRESSION);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, 1); /* if not loaded, jump to.. */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, 5);
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS); /* ..here */
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action)); /* ..and then out */
- bufferConcat(yyval.action, yyvsp[0].action); ;}
+ { (yyval.action) = (yyvsp[(5) - (8)].action);
+ bufferWriteU8((yyval.action), SWFACTION_WAITFORFRAMEEXPRESSION);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), 1); /* if not loaded, jump to.. */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), 5);
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS); /* ..here */
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(8) - (8)].action))); /* ..and then out */
+ bufferConcat((yyval.action), (yyvsp[(8) - (8)].action)); ;}
break;
case 24:
+
+/* Line 1455 of yacc.c */
#line 258 "swf4compiler.y"
- { yyval.action = yyvsp[-3].action;
- bufferWriteU8(yyval.action, SWFACTION_WAITFORFRAMEEXPRESSION);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, 1); /* if not loaded, jump to.. */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action));
- bufferConcat(yyval.action, yyvsp[0].action); ;}
+ { (yyval.action) = (yyvsp[(6) - (9)].action);
+ bufferWriteU8((yyval.action), SWFACTION_WAITFORFRAMEEXPRESSION);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), 1); /* if not loaded, jump to.. */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(9) - (9)].action)));
+ bufferConcat((yyval.action), (yyvsp[(9) - (9)].action)); ;}
break;
case 25:
+
+/* Line 1455 of yacc.c */
#line 268 "swf4compiler.y"
- { bufferWriteU8(yyvsp[-4].action, SWFACTION_BRANCHIFTRUE);
- bufferWriteS16(yyvsp[-4].action, 2);
- bufferWriteS16(yyvsp[-4].action, bufferLength(yyvsp[0].action)+5);
- bufferConcat(yyvsp[-4].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-4].action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyvsp[-4].action, 2);
- bufferWriteS16(yyvsp[-4].action, bufferLength(yyvsp[-2].action));
- bufferConcat(yyvsp[-4].action, yyvsp[-2].action);
- yyval.action = yyvsp[-4].action; ;}
+ { bufferWriteU8((yyvsp[(3) - (7)].action), SWFACTION_BRANCHIFTRUE);
+ bufferWriteS16((yyvsp[(3) - (7)].action), 2);
+ bufferWriteS16((yyvsp[(3) - (7)].action), bufferLength((yyvsp[(7) - (7)].action))+5);
+ bufferConcat((yyvsp[(3) - (7)].action), (yyvsp[(7) - (7)].action));
+ bufferWriteU8((yyvsp[(3) - (7)].action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyvsp[(3) - (7)].action), 2);
+ bufferWriteS16((yyvsp[(3) - (7)].action), bufferLength((yyvsp[(5) - (7)].action)));
+ bufferConcat((yyvsp[(3) - (7)].action), (yyvsp[(5) - (7)].action));
+ (yyval.action) = (yyvsp[(3) - (7)].action); ;}
break;
case 26:
+
+/* Line 1455 of yacc.c */
#line 279 "swf4compiler.y"
- { bufferWriteU8(yyvsp[-2].action, SWFACTION_LOGICALNOT);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_BRANCHIFTRUE);
- bufferWriteS16(yyvsp[-2].action, 2);
- bufferWriteS16(yyvsp[-2].action, bufferLength(yyvsp[0].action));
- bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- yyval.action = yyvsp[-2].action; ;}
+ { bufferWriteU8((yyvsp[(3) - (5)].action), SWFACTION_LOGICALNOT);
+ bufferWriteU8((yyvsp[(3) - (5)].action), SWFACTION_BRANCHIFTRUE);
+ bufferWriteS16((yyvsp[(3) - (5)].action), 2);
+ bufferWriteS16((yyvsp[(3) - (5)].action), bufferLength((yyvsp[(5) - (5)].action)));
+ bufferConcat((yyvsp[(3) - (5)].action), (yyvsp[(5) - (5)].action));
+ (yyval.action) = (yyvsp[(3) - (5)].action); ;}
break;
case 27:
+
+/* Line 1455 of yacc.c */
#line 288 "swf4compiler.y"
- { yyval.action = NULL; ;}
+ { (yyval.action) = NULL; ;}
break;
case 28:
+
+/* Line 1455 of yacc.c */
#line 289 "swf4compiler.y"
- { yyval.action = yyvsp[0].action; ;}
+ { (yyval.action) = (yyvsp[(1) - (1)].action); ;}
break;
case 29:
+
+/* Line 1455 of yacc.c */
#line 314 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_WAITFORFRAME);
- bufferWriteS16(yyval.action, 3);
- bufferWriteS16(yyval.action, atoi(yyvsp[-3].str));
- free(yyvsp[-3].str);
- bufferWriteU8(yyval.action, 1); /* if not loaded, jump to.. */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action)+5);
- bufferConcat(yyval.action, yyvsp[0].action); /* ..here */
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, -(bufferLength(yyval.action)+2)); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_WAITFORFRAME);
+ bufferWriteS16((yyval.action), 3);
+ bufferWriteS16((yyval.action), atoi((yyvsp[(6) - (9)].str)));
+ free((yyvsp[(6) - (9)].str));
+ bufferWriteU8((yyval.action), 1); /* if not loaded, jump to.. */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(9) - (9)].action))+5);
+ bufferConcat((yyval.action), (yyvsp[(9) - (9)].action)); /* ..here */
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), -(bufferLength((yyval.action))+2)); ;}
break;
case 30:
+
+/* Line 1455 of yacc.c */
#line 329 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferWriteU8(yyval.action, SWFACTION_LOGICALNOT);
- bufferWriteU8(yyval.action, SWFACTION_BRANCHIFTRUE);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, bufferLength(yyvsp[0].action)+5);
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, -(bufferLength(yyval.action)+2));
- bufferResolveJumps(yyval.action); ;}
+ { (yyval.action) = (yyvsp[(3) - (5)].action);
+ bufferWriteU8((yyval.action), SWFACTION_LOGICALNOT);
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHIFTRUE);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), bufferLength((yyvsp[(5) - (5)].action))+5);
+ bufferConcat((yyval.action), (yyvsp[(5) - (5)].action));
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), -(bufferLength((yyval.action))+2));
+ bufferResolveJumps((yyval.action)); ;}
break;
case 31:
+
+/* Line 1455 of yacc.c */
#line 341 "swf4compiler.y"
- { yyval.action = yyvsp[-4].action;
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_BRANCHIFTRUE);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, -(bufferLength(yyval.action)+2));
- bufferResolveJumps(yyval.action); ;}
+ { (yyval.action) = (yyvsp[(2) - (6)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (6)].action));
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHIFTRUE);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), -(bufferLength((yyval.action))+2));
+ bufferResolveJumps((yyval.action)); ;}
break;
case 32:
+
+/* Line 1455 of yacc.c */
#line 349 "swf4compiler.y"
- { if (!yyvsp[-4].action)
- yyvsp[-4].action = newBuffer();
+ { if (!(yyvsp[(5) - (9)].action))
+ (yyvsp[(5) - (9)].action) = newBuffer();
else {
- bufferWriteU8(yyvsp[-4].action, SWFACTION_LOGICALNOT);
- bufferWriteU8(yyvsp[-4].action, SWFACTION_BRANCHIFTRUE);
- bufferWriteS16(yyvsp[-4].action, 2);
- bufferWriteS16(yyvsp[-4].action, bufferLength(yyvsp[0].action)+bufferLength(yyvsp[-2].action)+5);
+ bufferWriteU8((yyvsp[(5) - (9)].action), SWFACTION_LOGICALNOT);
+ bufferWriteU8((yyvsp[(5) - (9)].action), SWFACTION_BRANCHIFTRUE);
+ bufferWriteS16((yyvsp[(5) - (9)].action), 2);
+ bufferWriteS16((yyvsp[(5) - (9)].action), bufferLength((yyvsp[(9) - (9)].action))+bufferLength((yyvsp[(7) - (9)].action))+5);
}
- bufferConcat(yyvsp[-4].action, yyvsp[0].action);
- bufferConcat(yyvsp[-4].action, yyvsp[-2].action);
- bufferWriteU8(yyvsp[-4].action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyvsp[-4].action, 2);
- bufferWriteS16(yyvsp[-4].action, -(bufferLength(yyvsp[-4].action)+2));
- bufferResolveJumps(yyvsp[-4].action);
- yyval.action = yyvsp[-6].action;
- if(!yyval.action) yyval.action = newBuffer();
- bufferConcat(yyval.action, yyvsp[-4].action);
+ bufferConcat((yyvsp[(5) - (9)].action), (yyvsp[(9) - (9)].action));
+ bufferConcat((yyvsp[(5) - (9)].action), (yyvsp[(7) - (9)].action));
+ bufferWriteU8((yyvsp[(5) - (9)].action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyvsp[(5) - (9)].action), 2);
+ bufferWriteS16((yyvsp[(5) - (9)].action), -(bufferLength((yyvsp[(5) - (9)].action))+2));
+ bufferResolveJumps((yyvsp[(5) - (9)].action));
+ (yyval.action) = (yyvsp[(3) - (9)].action);
+ if(!(yyval.action)) (yyval.action) = newBuffer();
+ bufferConcat((yyval.action), (yyvsp[(5) - (9)].action));
;}
break;
case 33:
+
+/* Line 1455 of yacc.c */
#line 370 "swf4compiler.y"
- { yyval.action = NULL; ;}
+ { (yyval.action) = NULL; ;}
break;
case 35:
+
+/* Line 1455 of yacc.c */
#line 376 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, MAGIC_CONTINUE_NUMBER); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), MAGIC_CONTINUE_NUMBER); ;}
break;
case 36:
+
+/* Line 1455 of yacc.c */
#line 384 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, MAGIC_BREAK_NUMBER); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), MAGIC_BREAK_NUMBER); ;}
break;
case 37:
+
+/* Line 1455 of yacc.c */
#line 392 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_STOPDRAGMOVIE); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_STOPDRAGMOVIE); ;}
break;
case 38:
+
+/* Line 1455 of yacc.c */
#line 396 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-1].str, strlen(yyvsp[-1].str)+1);
- bufferWriteU8(yyval.action, SWFACTION_CALLFRAME);
- bufferWriteS16(yyval.action, 0);
- free(yyvsp[-1].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(3) - (4)].str), strlen((yyvsp[(3) - (4)].str))+1);
+ bufferWriteU8((yyval.action), SWFACTION_CALLFRAME);
+ bufferWriteS16((yyval.action), 0);
+ free((yyvsp[(3) - (4)].str)); ;}
break;
case 39:
+
+/* Line 1455 of yacc.c */
#line 403 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-1].str, strlen(yyvsp[-1].str)+1);
- bufferWriteU8(yyval.action, SWFACTION_CALLFRAME);
- bufferWriteS16(yyval.action, 0);
- free(yyvsp[-1].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(3) - (4)].str), strlen((yyvsp[(3) - (4)].str))+1);
+ bufferWriteU8((yyval.action), SWFACTION_CALLFRAME);
+ bufferWriteS16((yyval.action), 0);
+ free((yyvsp[(3) - (4)].str)); ;}
break;
case 40:
+
+/* Line 1455 of yacc.c */
#line 410 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_REMOVECLIP); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_REMOVECLIP); ;}
break;
case 41:
+
+/* Line 1455 of yacc.c */
#line 414 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_TRACE); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_TRACE); ;}
break;
case 42:
+
+/* Line 1455 of yacc.c */
#line 419 "swf4compiler.y"
- { yyval.action = yyvsp[-3].action;
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_GETURL2);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, GETURL_METHOD_NOSEND); ;}
+ { (yyval.action) = (yyvsp[(3) - (6)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (6)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETURL2);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), GETURL_METHOD_NOSEND); ;}
break;
case 43:
+
+/* Line 1455 of yacc.c */
#line 426 "swf4compiler.y"
- { yyval.action = yyvsp[-5].action;
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferWriteU8(yyval.action, SWFACTION_GETURL2);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, yyvsp[-1].getURLMethod); ;}
+ { (yyval.action) = (yyvsp[(3) - (8)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (8)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETURL2);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), (yyvsp[(7) - (8)].getURLMethod)); ;}
break;
case 44:
+
+/* Line 1455 of yacc.c */
#line 433 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_GETURL);
- bufferWriteS16(yyval.action, strlen(yyvsp[-3].str) + strlen(yyvsp[-1].str) + 2);
- bufferWriteHardString(yyval.action, (byte*)yyvsp[-3].str, strlen(yyvsp[-3].str));
- bufferWriteU8(yyval.action, 0);
- bufferWriteHardString(yyval.action, (byte*)yyvsp[-1].str, strlen(yyvsp[-1].str));
- bufferWriteU8(yyval.action, 0); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_GETURL);
+ bufferWriteS16((yyval.action), strlen((yyvsp[(3) - (6)].str)) + strlen((yyvsp[(5) - (6)].str)) + 2);
+ bufferWriteHardString((yyval.action), (byte*)(yyvsp[(3) - (6)].str), strlen((yyvsp[(3) - (6)].str)));
+ bufferWriteU8((yyval.action), 0);
+ bufferWriteHardString((yyval.action), (byte*)(yyvsp[(5) - (6)].str), strlen((yyvsp[(5) - (6)].str)));
+ bufferWriteU8((yyval.action), 0); ;}
break;
case 45:
+
+/* Line 1455 of yacc.c */
#line 442 "swf4compiler.y"
- { yyval.action = yyvsp[-3].action;
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_GETURL2);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, GETURL_METHOD_NOSEND | GETURL_LOADMOVIE); ;}
+ { (yyval.action) = (yyvsp[(3) - (6)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (6)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETURL2);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), GETURL_METHOD_NOSEND | GETURL_LOADMOVIE); ;}
break;
case 46:
+
+/* Line 1455 of yacc.c */
#line 449 "swf4compiler.y"
- { yyval.action = yyvsp[-5].action;
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferWriteU8(yyval.action, SWFACTION_GETURL2);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, yyvsp[-1].getURLMethod | GETURL_LOADMOVIE); ;}
+ { (yyval.action) = (yyvsp[(3) - (8)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (8)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETURL2);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), (yyvsp[(7) - (8)].getURLMethod) | GETURL_LOADMOVIE); ;}
break;
case 47:
+
+/* Line 1455 of yacc.c */
#line 456 "swf4compiler.y"
- { yyval.action = yyvsp[-3].action;
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_GETURL2);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, GETURL_METHOD_NOSEND | GETURL_LOADVARIABLES); ;}
+ { (yyval.action) = (yyvsp[(3) - (6)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (6)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETURL2);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), GETURL_METHOD_NOSEND | GETURL_LOADVARIABLES); ;}
break;
case 48:
+
+/* Line 1455 of yacc.c */
#line 463 "swf4compiler.y"
- { yyval.action = yyvsp[-5].action;
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferWriteU8(yyval.action, SWFACTION_GETURL2);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, yyvsp[-1].getURLMethod | GETURL_LOADVARIABLES); ;}
+ { (yyval.action) = (yyvsp[(3) - (8)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (8)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETURL2);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), (yyvsp[(7) - (8)].getURLMethod) | GETURL_LOADVARIABLES); ;}
break;
case 49:
+
+/* Line 1455 of yacc.c */
#line 471 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, "0", 2); /* no constraint */
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferWriteU8(yyval.action, SWFACTION_STARTDRAGMOVIE); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), "0", 2); /* no constraint */
+ bufferConcat((yyval.action), (yyvsp[(5) - (6)].action));
+ bufferConcat((yyval.action), (yyvsp[(3) - (6)].action));
+ bufferWriteU8((yyval.action), SWFACTION_STARTDRAGMOVIE); ;}
break;
case 50:
+
+/* Line 1455 of yacc.c */
#line 478 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferConcat(yyval.action, yyvsp[-7].action);
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferConcat(yyval.action, yyvsp[-5].action);
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteString(yyval.action, "1", 2); /* has constraint */
- bufferConcat(yyval.action, yyvsp[-9].action);
- bufferConcat(yyval.action, yyvsp[-11].action);
- bufferWriteU8(yyval.action, SWFACTION_STARTDRAGMOVIE); ;}
+ { (yyval.action) = newBuffer();
+ bufferConcat((yyval.action), (yyvsp[(7) - (14)].action));
+ bufferConcat((yyval.action), (yyvsp[(11) - (14)].action));
+ bufferConcat((yyval.action), (yyvsp[(9) - (14)].action));
+ bufferConcat((yyval.action), (yyvsp[(13) - (14)].action));
+ bufferWriteString((yyval.action), "1", 2); /* has constraint */
+ bufferConcat((yyval.action), (yyvsp[(5) - (14)].action));
+ bufferConcat((yyval.action), (yyvsp[(3) - (14)].action));
+ bufferWriteU8((yyval.action), SWFACTION_STARTDRAGMOVIE); ;}
break;
case 51:
+
+/* Line 1455 of yacc.c */
#line 490 "swf4compiler.y"
- { yyval.action = yyvsp[-5].action;
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteWTHITProperty(yyval.action);
- bufferWriteU8(yyval.action, SWFACTION_ADD); /* see docs for explanation */
- bufferWriteU8(yyval.action, SWFACTION_DUPLICATECLIP); ;}
+ { (yyval.action) = (yyvsp[(3) - (8)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (8)].action));
+ bufferConcat((yyval.action), (yyvsp[(7) - (8)].action));
+ bufferWriteWTHITProperty((yyval.action));
+ bufferWriteU8((yyval.action), SWFACTION_ADD); /* see docs for explanation */
+ bufferWriteU8((yyval.action), SWFACTION_DUPLICATECLIP); ;}
break;
case 52:
+
+/* Line 1455 of yacc.c */
#line 499 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_NEXTFRAME); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_NEXTFRAME); ;}
break;
case 53:
+
+/* Line 1455 of yacc.c */
#line 503 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_PREVFRAME); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_PREVFRAME); ;}
break;
case 54:
+
+/* Line 1455 of yacc.c */
#line 507 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_PLAY); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_PLAY); ;}
break;
case 55:
+
+/* Line 1455 of yacc.c */
#line 511 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_STOP); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_STOP); ;}
break;
case 56:
+
+/* Line 1455 of yacc.c */
#line 515 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_TOGGLEQUALITY); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_TOGGLEQUALITY); ;}
break;
case 57:
+
+/* Line 1455 of yacc.c */
#line 519 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_STOPSOUNDS); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_STOPSOUNDS); ;}
break;
case 58:
+
+/* Line 1455 of yacc.c */
#line 523 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_GOTOFRAME);
- bufferWriteS16(yyval.action, 2);
- bufferWriteS16(yyval.action, atoi(yyvsp[-1].str));
- free(yyvsp[-1].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_GOTOFRAME);
+ bufferWriteS16((yyval.action), 2);
+ bufferWriteS16((yyval.action), atoi((yyvsp[(3) - (4)].str)));
+ free((yyvsp[(3) - (4)].str)); ;}
break;
case 59:
+
+/* Line 1455 of yacc.c */
#line 530 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_GOTOLABEL);
- bufferWriteS16(yyval.action, strlen(yyvsp[-1].str)+1);
- bufferWriteHardString(yyval.action, (byte*)yyvsp[-1].str, strlen(yyvsp[-1].str)+1);
- free(yyvsp[-1].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_GOTOLABEL);
+ bufferWriteS16((yyval.action), strlen((yyvsp[(3) - (4)].str))+1);
+ bufferWriteHardString((yyval.action), (byte*)(yyvsp[(3) - (4)].str), strlen((yyvsp[(3) - (4)].str))+1);
+ free((yyvsp[(3) - (4)].str)); ;}
break;
case 60:
+
+/* Line 1455 of yacc.c */
#line 537 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_GOTOEXPRESSION);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, 0); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_GOTOEXPRESSION);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), 0); ;}
break;
case 61:
+
+/* Line 1455 of yacc.c */
#line 543 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_GOTOEXPRESSION);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, 1); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_GOTOEXPRESSION);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), 1); ;}
break;
case 62:
+
+/* Line 1455 of yacc.c */
#line 549 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_SETTARGET);
- bufferWriteS16(yyval.action, strlen(yyvsp[-1].str)+1);
- bufferWriteHardString(yyval.action, (byte*)yyvsp[-1].str, strlen(yyvsp[-1].str)+1);
- free(yyvsp[-1].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_SETTARGET);
+ bufferWriteS16((yyval.action), strlen((yyvsp[(3) - (4)].str))+1);
+ bufferWriteHardString((yyval.action), (byte*)(yyvsp[(3) - (4)].str), strlen((yyvsp[(3) - (4)].str))+1);
+ free((yyvsp[(3) - (4)].str)); ;}
break;
case 63:
+
+/* Line 1455 of yacc.c */
#line 556 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_SETTARGETEXPRESSION); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_SETTARGETEXPRESSION); ;}
break;
case 64:
+
+/* Line 1455 of yacc.c */
#line 560 "swf4compiler.y"
- { yyval.action = newBuffer();
+ { (yyval.action) = newBuffer();
/* SetTarget(STRING) */
- bufferWriteU8(yyval.action, SWFACTION_SETTARGET);
- bufferWriteS16(yyval.action, strlen(yyvsp[-2].str)+1);
- bufferWriteHardString(yyval.action, (byte*)yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
+ bufferWriteU8((yyval.action), SWFACTION_SETTARGET);
+ bufferWriteS16((yyval.action), strlen((yyvsp[(3) - (5)].str))+1);
+ bufferWriteHardString((yyval.action), (byte*)(yyvsp[(3) - (5)].str), strlen((yyvsp[(3) - (5)].str))+1);
/* stmt */
- bufferConcat(yyval.action, yyvsp[0].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (5)].action));
/* SetTarget('') */
- bufferWriteU8(yyval.action, SWFACTION_SETTARGET);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, 0);
- free(yyvsp[-2].str); ;}
+ bufferWriteU8((yyval.action), SWFACTION_SETTARGET);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), 0);
+ free((yyvsp[(3) - (5)].str)); ;}
break;
case 65:
+
+/* Line 1455 of yacc.c */
#line 574 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
+ { (yyval.action) = (yyvsp[(3) - (5)].action);
/* SetTarget(expr) */
- bufferWriteU8(yyval.action, SWFACTION_SETTARGETEXPRESSION);
+ bufferWriteU8((yyval.action), SWFACTION_SETTARGETEXPRESSION);
/* stmt */
- bufferConcat(yyval.action, yyvsp[0].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (5)].action));
/* SetTarget('') */
- bufferWriteU8(yyval.action, SWFACTION_SETTARGET);
- bufferWriteS16(yyval.action, 1);
- bufferWriteU8(yyval.action, 0); ;}
+ bufferWriteU8((yyval.action), SWFACTION_SETTARGET);
+ bufferWriteS16((yyval.action), 1);
+ bufferWriteU8((yyval.action), 0); ;}
break;
case 66:
+
+/* Line 1455 of yacc.c */
#line 587 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE); ;}
break;
case 67:
+
+/* Line 1455 of yacc.c */
#line 591 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteU8(yyval.action, SWFACTION_GETTIMER); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteU8((yyval.action), SWFACTION_GETTIMER); ;}
break;
case 68:
+
+/* Line 1455 of yacc.c */
#line 595 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_RANDOM); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_RANDOM); ;}
break;
case 69:
+
+/* Line 1455 of yacc.c */
#line 599 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_STRINGLENGTH); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_STRINGLENGTH); ;}
break;
case 70:
+
+/* Line 1455 of yacc.c */
#line 603 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_INT); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_INT); ;}
break;
case 71:
+
+/* Line 1455 of yacc.c */
#line 607 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_ORD); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_ORD); ;}
break;
case 72:
+
+/* Line 1455 of yacc.c */
#line 611 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action;
- bufferWriteU8(yyval.action, SWFACTION_CHR); ;}
+ { (yyval.action) = (yyvsp[(3) - (4)].action);
+ bufferWriteU8((yyval.action), SWFACTION_CHR); ;}
break;
case 73:
+
+/* Line 1455 of yacc.c */
#line 615 "swf4compiler.y"
- { yyval.action = yyvsp[-3].action;
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_STRINGCONCAT); ;}
+ { (yyval.action) = (yyvsp[(3) - (6)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (6)].action));
+ bufferWriteU8((yyval.action), SWFACTION_STRINGCONCAT); ;}
break;
case 74:
+
+/* Line 1455 of yacc.c */
#line 620 "swf4compiler.y"
- { yyval.action = yyvsp[-5].action;
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_SUBSTRING); ;}
+ { (yyval.action) = (yyvsp[(3) - (8)].action);
+ bufferConcat((yyval.action), (yyvsp[(5) - (8)].action));
+ bufferConcat((yyval.action), (yyvsp[(7) - (8)].action));
+ bufferWriteU8((yyval.action), SWFACTION_SUBSTRING); ;}
break;
case 75:
+
+/* Line 1455 of yacc.c */
#line 626 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferConcat(yyval.action, yyvsp[-3].action);
- bufferWriteGetProperty(yyval.action, yyvsp[-1].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- free(yyvsp[-1].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferConcat((yyval.action), (yyvsp[(3) - (6)].action));
+ bufferWriteGetProperty((yyval.action), (yyvsp[(5) - (6)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ free((yyvsp[(5) - (6)].str)); ;}
break;
case 76:
+
+/* Line 1455 of yacc.c */
#line 635 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteBuffer(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteBuffer(yyval.action, yyvsp[-1].action);
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_ADD);
- bufferWriteU8(yyval.action, SWFACTION_SETVARIABLE); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteBuffer((yyval.action), (yyvsp[(1) - (2)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteBuffer((yyval.action), (yyvsp[(1) - (2)].action));
+ bufferConcat((yyval.action), (yyvsp[(1) - (2)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_ADD);
+ bufferWriteU8((yyval.action), SWFACTION_SETVARIABLE); ;}
break;
case 77:
+
+/* Line 1455 of yacc.c */
#line 646 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteBuffer(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteBuffer(yyval.action, yyvsp[-1].action);
- bufferConcat(yyval.action, yyvsp[-1].action);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_SUBTRACT);
- bufferWriteU8(yyval.action, SWFACTION_SETVARIABLE); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteBuffer((yyval.action), (yyvsp[(1) - (2)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteBuffer((yyval.action), (yyvsp[(1) - (2)].action));
+ bufferConcat((yyval.action), (yyvsp[(1) - (2)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_SUBTRACT);
+ bufferWriteU8((yyval.action), SWFACTION_SETVARIABLE); ;}
break;
case 79:
+
+/* Line 1455 of yacc.c */
#line 662 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action; ;}
+ { (yyval.action) = (yyvsp[(2) - (3)].action); ;}
break;
case 80:
+
+/* Line 1455 of yacc.c */
#line 665 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[0].str, strlen(yyvsp[0].str)+1);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (1)].str), strlen((yyvsp[(1) - (1)].str))+1);
+ free((yyvsp[(1) - (1)].str)); ;}
break;
case 81:
+
+/* Line 1455 of yacc.c */
#line 670 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, "-", 2);
- bufferWriteString(yyval.action, yyvsp[0].str, strlen(yyvsp[0].str)+1);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), "-", 2);
+ bufferWriteString((yyval.action), (yyvsp[(2) - (2)].str), strlen((yyvsp[(2) - (2)].str))+1);
+ free((yyvsp[(2) - (2)].str)); ;}
break;
case 82:
+
+/* Line 1455 of yacc.c */
#line 676 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[0].str, strlen(yyvsp[0].str)+1);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (1)].str), strlen((yyvsp[(1) - (1)].str))+1);
+ free((yyvsp[(1) - (1)].str)); ;}
break;
case 83:
+
+/* Line 1455 of yacc.c */
#line 681 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[0].str, strlen(yyvsp[0].str)+1);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (1)].str), strlen((yyvsp[(1) - (1)].str))+1);
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ free((yyvsp[(1) - (1)].str)); ;}
break;
case 84:
+
+/* Line 1455 of yacc.c */
#line 687 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[0].str, strlen(yyvsp[0].str)+1);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (1)].str), strlen((yyvsp[(1) - (1)].str))+1);
+ free((yyvsp[(1) - (1)].str)); ;}
break;
case 85:
+
+/* Line 1455 of yacc.c */
#line 692 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[0].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- free(yyvsp[0].str);
- free(yyvsp[-2].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (3)].str), strlen((yyvsp[(1) - (3)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(3) - (3)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ free((yyvsp[(3) - (3)].str));
+ free((yyvsp[(1) - (3)].str)); ;}
break;
case 86:
+
+/* Line 1455 of yacc.c */
#line 700 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[0].str);
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[0].str);
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[0].str);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_ADD);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- free(yyvsp[-2].str);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_ADD);
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ free((yyvsp[(2) - (4)].str));
+ free((yyvsp[(4) - (4)].str)); ;}
break;
case 87:
+
+/* Line 1455 of yacc.c */
#line 715 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferWriteU8(yyval.action, SWFACTION_DUP);
- bufferWriteU8(yyval.action, SWFACTION_DUP);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_ADD);
- bufferWriteU8(yyval.action, SWFACTION_SETVARIABLE);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE); ;}
+ { (yyval.action) = (yyvsp[(2) - (2)].action);
+ bufferWriteU8((yyval.action), SWFACTION_DUP);
+ bufferWriteU8((yyval.action), SWFACTION_DUP);
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_ADD);
+ bufferWriteU8((yyval.action), SWFACTION_SETVARIABLE);
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE); ;}
break;
case 88:
+
+/* Line 1455 of yacc.c */
#line 725 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[0].str);
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[0].str);
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[0].str);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_ADD);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- free(yyvsp[-2].str);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_ADD);
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ free((yyvsp[(2) - (4)].str));
+ free((yyvsp[(4) - (4)].str)); ;}
break;
case 89:
+
+/* Line 1455 of yacc.c */
#line 740 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferWriteU8(yyval.action, SWFACTION_DUP);
- bufferWriteU8(yyval.action, SWFACTION_DUP);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_SUBTRACT);
- bufferWriteU8(yyval.action, SWFACTION_SETVARIABLE);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE); ;}
+ { (yyval.action) = (yyvsp[(2) - (2)].action);
+ bufferWriteU8((yyval.action), SWFACTION_DUP);
+ bufferWriteU8((yyval.action), SWFACTION_DUP);
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_SUBTRACT);
+ bufferWriteU8((yyval.action), SWFACTION_SETVARIABLE);
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE); ;}
break;
case 90:
+
+/* Line 1455 of yacc.c */
#line 750 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferWriteString(yyvsp[0].action, "-1", 3);
- bufferWriteU8(yyvsp[0].action, SWFACTION_MULTIPLY); ;}
+ { (yyval.action) = (yyvsp[(2) - (2)].action);
+ bufferWriteString((yyvsp[(2) - (2)].action), "-1", 3);
+ bufferWriteU8((yyvsp[(2) - (2)].action), SWFACTION_MULTIPLY); ;}
break;
case 91:
+
+/* Line 1455 of yacc.c */
#line 755 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferWriteU8(yyvsp[0].action, SWFACTION_LOGICALNOT); ;}
+ { (yyval.action) = (yyvsp[(2) - (2)].action);
+ bufferWriteU8((yyvsp[(2) - (2)].action), SWFACTION_LOGICALNOT); ;}
break;
case 92:
+
+/* Line 1455 of yacc.c */
#line 759 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_DUP);
- bufferWriteU8(yyval.action, SWFACTION_SETVARIABLE); ;}
+ { (yyval.action) = (yyvsp[(1) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_DUP);
+ bufferWriteU8((yyval.action), SWFACTION_SETVARIABLE); ;}
break;
case 93:
+
+/* Line 1455 of yacc.c */
#line 765 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_MULTIPLY); ;}
+ { (yyval.action) = (yyvsp[(1) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_MULTIPLY); ;}
break;
case 94:
+
+/* Line 1455 of yacc.c */
#line 770 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_DIVIDE); ;}
+ { (yyval.action) = (yyvsp[(1) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_DIVIDE); ;}
break;
case 95:
+
+/* Line 1455 of yacc.c */
#line 775 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_ADD); ;}
+ { (yyval.action) = (yyvsp[(1) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_ADD); ;}
break;
case 96:
+
+/* Line 1455 of yacc.c */
#line 780 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_SUBTRACT); ;}
+ { (yyval.action) = (yyvsp[(1) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_SUBTRACT); ;}
break;
case 97:
+
+/* Line 1455 of yacc.c */
#line 785 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_STRINGCONCAT); ;}
+ { (yyval.action) = (yyvsp[(1) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_STRINGCONCAT); ;}
break;
case 98:
+
+/* Line 1455 of yacc.c */
#line 790 "swf4compiler.y"
- { yyval.action = yyvsp[-2].action;
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_LESSTHAN); ;}
+ { (yyval.action) = (yyvsp[(1) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_LESSTHAN); ;}
break;
case 99:
+
+/* Line 1455 of yacc.c */
#line 795 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferConcat(yyval.action, yyvsp[-2].action);
- bufferWriteU8(yyval.action, SWFACTION_LESSTHAN); ;}
+ { (yyval.action) = (yyvsp[(3) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(1) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_LESSTHAN); ;}
break;
case 100:
+
+/* Line 1455 of yacc.c */
#line 800 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferConcat(yyval.action, yyvsp[-2].action);
- bufferWriteU8(yyval.action, SWFACTION_LESSTHAN);
- bufferWriteU8(yyval.action, SWFACTION_LOGICALNOT); ;}
+ { (yyval.action) = (yyvsp[(3) - (3)].action);
+ bufferConcat((yyval.action), (yyvsp[(1) - (3)].action));
+ bufferWriteU8((yyval.action), SWFACTION_LESSTHAN);
+ bufferWriteU8((yyval.action), SWFACTION_LOGICALNOT); ;}
break;
case 101:
+
+/* Line 1455 of yacc.c */
#line 806 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_LESSTHAN);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_LOGICALNOT); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_LESSTHAN);
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_LOGICALNOT); ;}
break;
case 102:
+
+/* Line 1455 of yacc.c */
#line 811 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_STRINGEQ);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_LOGICALNOT); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_STRINGEQ);
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_LOGICALNOT); ;}
break;
case 103:
+
+/* Line 1455 of yacc.c */
#line 816 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_STRINGEQ); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_STRINGEQ); ;}
break;
case 104:
+
+/* Line 1455 of yacc.c */
#line 820 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_STRINGCOMPARE); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_STRINGCOMPARE); ;}
break;
case 105:
+
+/* Line 1455 of yacc.c */
#line 824 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_EQUAL); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_EQUAL); ;}
break;
case 106:
+
+/* Line 1455 of yacc.c */
#line 828 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_EQUAL);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_LOGICALNOT); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_EQUAL);
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_LOGICALNOT); ;}
break;
case 107:
+
+/* Line 1455 of yacc.c */
#line 833 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_LOGICALAND); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_LOGICALAND); ;}
break;
case 108:
+
+/* Line 1455 of yacc.c */
#line 837 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_LOGICALOR); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_LOGICALOR); ;}
break;
case 109:
+
+/* Line 1455 of yacc.c */
#line 841 "swf4compiler.y"
- { bufferWriteU8(yyvsp[-4].action, SWFACTION_BRANCHIFTRUE);
- bufferWriteS16(yyvsp[-4].action, 2);
- bufferWriteS16(yyvsp[-4].action, bufferLength(yyvsp[0].action)+5);
- bufferConcat(yyvsp[-4].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-4].action, SWFACTION_BRANCHALWAYS);
- bufferWriteS16(yyvsp[-4].action, 2);
- bufferWriteS16(yyvsp[-4].action, bufferLength(yyvsp[-2].action));
- bufferConcat(yyvsp[-4].action, yyvsp[-2].action); ;}
+ { bufferWriteU8((yyvsp[(1) - (5)].action), SWFACTION_BRANCHIFTRUE);
+ bufferWriteS16((yyvsp[(1) - (5)].action), 2);
+ bufferWriteS16((yyvsp[(1) - (5)].action), bufferLength((yyvsp[(5) - (5)].action))+5);
+ bufferConcat((yyvsp[(1) - (5)].action), (yyvsp[(5) - (5)].action));
+ bufferWriteU8((yyvsp[(1) - (5)].action), SWFACTION_BRANCHALWAYS);
+ bufferWriteS16((yyvsp[(1) - (5)].action), 2);
+ bufferWriteS16((yyvsp[(1) - (5)].action), bufferLength((yyvsp[(3) - (5)].action)));
+ bufferConcat((yyvsp[(1) - (5)].action), (yyvsp[(3) - (5)].action)); ;}
break;
case 111:
+
+/* Line 1455 of yacc.c */
#line 855 "swf4compiler.y"
- { yyval.str = yyvsp[-2].str;
- yyval.str = stringConcat(yyval.str, strdup(":"));
- yyval.str = stringConcat(yyval.str, yyvsp[0].str); ;}
+ { (yyval.str) = (yyvsp[(1) - (3)].str);
+ (yyval.str) = stringConcat((yyval.str), strdup(":"));
+ (yyval.str) = stringConcat((yyval.str), (yyvsp[(3) - (3)].str)); ;}
break;
case 112:
+
+/* Line 1455 of yacc.c */
#line 862 "swf4compiler.y"
- { yyval.str = strdup(""); ;}
+ { (yyval.str) = strdup(""); ;}
break;
case 113:
+
+/* Line 1455 of yacc.c */
#line 865 "swf4compiler.y"
- { yyval.str = strdup(""); ;}
+ { (yyval.str) = strdup(""); ;}
break;
case 114:
+
+/* Line 1455 of yacc.c */
#line 868 "swf4compiler.y"
- { yyval.str = strdup("/"); ;}
+ { (yyval.str) = strdup("/"); ;}
break;
case 115:
+
+/* Line 1455 of yacc.c */
#line 871 "swf4compiler.y"
- { yyval.str = strdup(".."); ;}
+ { (yyval.str) = strdup(".."); ;}
break;
case 116:
+
+/* Line 1455 of yacc.c */
#line 874 "swf4compiler.y"
- { yyval.str = yyvsp[0].str; ;}
+ { (yyval.str) = (yyvsp[(1) - (1)].str); ;}
break;
case 117:
+
+/* Line 1455 of yacc.c */
#line 877 "swf4compiler.y"
- { yyval.str = yyvsp[0].str; ;}
+ { (yyval.str) = (yyvsp[(1) - (1)].str); ;}
break;
case 118:
+
+/* Line 1455 of yacc.c */
#line 882 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[0].str, strlen(yyvsp[0].str)+1);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (1)].str), strlen((yyvsp[(1) - (1)].str))+1);
+ free((yyvsp[(1) - (1)].str)); ;}
break;
case 119:
+
+/* Line 1455 of yacc.c */
#line 887 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[0].str, strlen(yyvsp[0].str)+1);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (1)].str), strlen((yyvsp[(1) - (1)].str))+1);
+ free((yyvsp[(1) - (1)].str)); ;}
break;
case 120:
+
+/* Line 1455 of yacc.c */
#line 891 "swf4compiler.y"
- { yyval.action = yyvsp[-1].action; ;}
+ { (yyval.action) = (yyvsp[(2) - (3)].action); ;}
break;
case 123:
+
+/* Line 1455 of yacc.c */
#line 900 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferWriteBuffer(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_ADD);
- bufferWriteU8(yyval.action, SWFACTION_SETVARIABLE); ;}
+ { (yyval.action) = (yyvsp[(2) - (2)].action);
+ bufferWriteBuffer((yyval.action), (yyvsp[(2) - (2)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_ADD);
+ bufferWriteU8((yyval.action), SWFACTION_SETVARIABLE); ;}
break;
case 124:
+
+/* Line 1455 of yacc.c */
#line 908 "swf4compiler.y"
- { yyval.action = yyvsp[0].action;
- bufferWriteBuffer(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_GETVARIABLE);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_SUBTRACT);
- bufferWriteU8(yyval.action, SWFACTION_SETVARIABLE); ;}
+ { (yyval.action) = (yyvsp[(2) - (2)].action);
+ bufferWriteBuffer((yyval.action), (yyvsp[(2) - (2)].action));
+ bufferWriteU8((yyval.action), SWFACTION_GETVARIABLE);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_SUBTRACT);
+ bufferWriteU8((yyval.action), SWFACTION_SETVARIABLE); ;}
break;
case 125:
+
+/* Line 1455 of yacc.c */
#line 916 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[0].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_ADD);
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[0].str);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- free(yyvsp[-2].str);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_ADD);
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ free((yyvsp[(2) - (4)].str));
+ free((yyvsp[(4) - (4)].str)); ;}
break;
case 126:
+
+/* Line 1455 of yacc.c */
#line 929 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[0].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- bufferWriteString(yyval.action, "1", 2);
- bufferWriteU8(yyval.action, SWFACTION_SUBTRACT);
- bufferWriteString(yyval.action, yyvsp[-2].str, strlen(yyvsp[-2].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[0].str);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- free(yyvsp[-2].str);
- free(yyvsp[0].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ bufferWriteString((yyval.action), "1", 2);
+ bufferWriteU8((yyval.action), SWFACTION_SUBTRACT);
+ bufferWriteString((yyval.action), (yyvsp[(2) - (4)].str), strlen((yyvsp[(2) - (4)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(4) - (4)].str));
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ free((yyvsp[(2) - (4)].str));
+ free((yyvsp[(4) - (4)].str)); ;}
break;
case 127:
+
+/* Line 1455 of yacc.c */
#line 942 "swf4compiler.y"
- { bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_SETVARIABLE); ;}
+ { bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_SETVARIABLE); ;}
break;
case 128:
+
+/* Line 1455 of yacc.c */
#line 946 "swf4compiler.y"
- { bufferWriteBuffer(yyvsp[-2].action, yyvsp[-2].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_GETVARIABLE);
- bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_MULTIPLY);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_SETVARIABLE); ;}
+ { bufferWriteBuffer((yyvsp[(1) - (3)].action), (yyvsp[(1) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_GETVARIABLE);
+ bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_MULTIPLY);
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_SETVARIABLE); ;}
break;
case 129:
+
+/* Line 1455 of yacc.c */
#line 953 "swf4compiler.y"
- { bufferWriteBuffer(yyvsp[-2].action, yyvsp[-2].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_GETVARIABLE);
- bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_DIVIDE);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_SETVARIABLE); ;}
+ { bufferWriteBuffer((yyvsp[(1) - (3)].action), (yyvsp[(1) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_GETVARIABLE);
+ bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_DIVIDE);
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_SETVARIABLE); ;}
break;
case 130:
+
+/* Line 1455 of yacc.c */
#line 960 "swf4compiler.y"
- { bufferWriteBuffer(yyvsp[-2].action, yyvsp[-2].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_GETVARIABLE);
- bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_ADD);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_SETVARIABLE); ;}
+ { bufferWriteBuffer((yyvsp[(1) - (3)].action), (yyvsp[(1) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_GETVARIABLE);
+ bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_ADD);
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_SETVARIABLE); ;}
break;
case 131:
+
+/* Line 1455 of yacc.c */
#line 967 "swf4compiler.y"
- { bufferWriteBuffer(yyvsp[-2].action, yyvsp[-2].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_GETVARIABLE);
- bufferConcat(yyvsp[-2].action, yyvsp[0].action);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_SUBTRACT);
- bufferWriteU8(yyvsp[-2].action, SWFACTION_SETVARIABLE); ;}
+ { bufferWriteBuffer((yyvsp[(1) - (3)].action), (yyvsp[(1) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_GETVARIABLE);
+ bufferConcat((yyvsp[(1) - (3)].action), (yyvsp[(3) - (3)].action));
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_SUBTRACT);
+ bufferWriteU8((yyvsp[(1) - (3)].action), SWFACTION_SETVARIABLE); ;}
break;
case 132:
+
+/* Line 1455 of yacc.c */
#line 974 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[-2].str);
- bufferConcat(yyval.action,yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- free(yyvsp[-4].str);
- free(yyvsp[-2].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferConcat((yyval.action),(yyvsp[(5) - (5)].action));
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ free((yyvsp[(1) - (5)].str));
+ free((yyvsp[(3) - (5)].str)); ;}
break;
case 133:
+
+/* Line 1455 of yacc.c */
#line 983 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_MULTIPLY);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- free(yyvsp[-4].str);
- free(yyvsp[-2].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ bufferConcat((yyval.action), (yyvsp[(5) - (5)].action));
+ bufferWriteU8((yyval.action), SWFACTION_MULTIPLY);
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ free((yyvsp[(1) - (5)].str));
+ free((yyvsp[(3) - (5)].str)); ;}
break;
case 134:
+
+/* Line 1455 of yacc.c */
#line 996 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_DIVIDE);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- free(yyvsp[-4].str);
- free(yyvsp[-2].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ bufferConcat((yyval.action), (yyvsp[(5) - (5)].action));
+ bufferWriteU8((yyval.action), SWFACTION_DIVIDE);
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ free((yyvsp[(1) - (5)].str));
+ free((yyvsp[(3) - (5)].str)); ;}
break;
case 135:
+
+/* Line 1455 of yacc.c */
#line 1009 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_ADD);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- free(yyvsp[-4].str);
- free(yyvsp[-2].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ bufferConcat((yyval.action), (yyvsp[(5) - (5)].action));
+ bufferWriteU8((yyval.action), SWFACTION_ADD);
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ free((yyvsp[(1) - (5)].str));
+ free((yyvsp[(3) - (5)].str)); ;}
break;
case 136:
+
+/* Line 1455 of yacc.c */
#line 1022 "swf4compiler.y"
- { yyval.action = newBuffer();
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteSetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteString(yyval.action, yyvsp[-4].str, strlen(yyvsp[-4].str)+1);
- bufferWriteGetProperty(yyval.action, yyvsp[-2].str);
- bufferWriteU8(yyval.action, SWFACTION_GETPROPERTY);
- bufferConcat(yyval.action, yyvsp[0].action);
- bufferWriteU8(yyval.action, SWFACTION_SUBTRACT);
- bufferWriteU8(yyval.action, SWFACTION_SETPROPERTY);
- free(yyvsp[-4].str);
- free(yyvsp[-2].str); ;}
+ { (yyval.action) = newBuffer();
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteSetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteString((yyval.action), (yyvsp[(1) - (5)].str), strlen((yyvsp[(1) - (5)].str))+1);
+ bufferWriteGetProperty((yyval.action), (yyvsp[(3) - (5)].str));
+ bufferWriteU8((yyval.action), SWFACTION_GETPROPERTY);
+ bufferConcat((yyval.action), (yyvsp[(5) - (5)].action));
+ bufferWriteU8((yyval.action), SWFACTION_SUBTRACT);
+ bufferWriteU8((yyval.action), SWFACTION_SETPROPERTY);
+ free((yyvsp[(1) - (5)].str));
+ free((yyvsp[(3) - (5)].str)); ;}
break;
- }
-
-/* Line 999 of yacc.c. */
-#line 2691 "swf4compiler.tab.c"
-\f
- yyvsp -= yylen;
- yyssp -= yylen;
+/* Line 1455 of yacc.c */
+#line 3218 "swf4compiler.tab.c"
+ default: break;
+ }
+ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
+ YYPOPSTACK (yylen);
+ yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
*++yyvsp = yyval;
-
/* Now `shift' the result of the reduction. Determine what state
that goes to, based on the state we popped back to and the rule
number reduced by. */
if (!yyerrstatus)
{
++yynerrs;
-#if YYERROR_VERBOSE
- yyn = yypact[yystate];
-
- if (YYPACT_NINF < yyn && yyn < YYLAST)
- {
- YYSIZE_T yysize = 0;
- int yytype = YYTRANSLATE (yychar);
- char *yymsg;
- int yyx, yycount;
-
- yycount = 0;
- /* Start YYX at -YYN if negative to avoid negative indexes in
- YYCHECK. */
- for (yyx = yyn < 0 ? -yyn : 0;
- yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)
- if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
- yysize += yystrlen (yytname[yyx]) + 15, yycount++;
- yysize += yystrlen ("syntax error, unexpected ") + 1;
- yysize += yystrlen (yytname[yytype]);
- yymsg = (char *) YYSTACK_ALLOC (yysize);
- if (yymsg != 0)
- {
- char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");
- yyp = yystpcpy (yyp, yytname[yytype]);
-
- if (yycount < 5)
- {
- yycount = 0;
- for (yyx = yyn < 0 ? -yyn : 0;
- yyx < (int) (sizeof (yytname) / sizeof (char *));
- yyx++)
- if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
- {
- const char *yyq = ! yycount ? ", expecting " : " or ";
- yyp = yystpcpy (yyp, yyq);
- yyp = yystpcpy (yyp, yytname[yyx]);
- yycount++;
- }
- }
- yyerror (yymsg);
+#if ! YYERROR_VERBOSE
+ yyerror (YY_("syntax error"));
+#else
+ {
+ YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
+ if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
+ {
+ YYSIZE_T yyalloc = 2 * yysize;
+ if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
+ yyalloc = YYSTACK_ALLOC_MAXIMUM;
+ if (yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
- }
- else
- yyerror ("syntax error; also virtual memory exhausted");
- }
- else
-#endif /* YYERROR_VERBOSE */
- yyerror ("syntax error");
+ yymsg = (char *) YYSTACK_ALLOC (yyalloc);
+ if (yymsg)
+ yymsg_alloc = yyalloc;
+ else
+ {
+ yymsg = yymsgbuf;
+ yymsg_alloc = sizeof yymsgbuf;
+ }
+ }
+
+ if (0 < yysize && yysize <= yymsg_alloc)
+ {
+ (void) yysyntax_error (yymsg, yystate, yychar);
+ yyerror (yymsg);
+ }
+ else
+ {
+ yyerror (YY_("syntax error"));
+ if (yysize != 0)
+ goto yyexhaustedlab;
+ }
+ }
+#endif
}
/* If just tried and failed to reuse lookahead token after an
error, discard it. */
- /* Return failure if at end of input. */
- if (yychar == YYEOF)
- {
- /* Pop the error token. */
- YYPOPSTACK;
- /* Pop the rest of the stack. */
- while (yyss < yyssp)
- {
- YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
- yydestruct (yystos[*yyssp], yyvsp);
- YYPOPSTACK;
- }
- YYABORT;
- }
-
- YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);
- yydestruct (yytoken, &yylval);
- yychar = YYEMPTY;
-
+ if (yychar <= YYEOF)
+ {
+ /* Return failure if at end of input. */
+ if (yychar == YYEOF)
+ YYABORT;
+ }
+ else
+ {
+ yydestruct ("Error: discarding",
+ yytoken, &yylval);
+ yychar = YYEMPTY;
+ }
}
/* Else will try to reuse lookahead token after shifting the error
goto yyerrlab1;
-/*----------------------------------------------------.
-| yyerrlab1 -- error raised explicitly by an action. |
-`----------------------------------------------------*/
+/*---------------------------------------------------.
+| yyerrorlab -- error raised explicitly by YYERROR. |
+`---------------------------------------------------*/
+yyerrorlab:
+
+ /* Pacify compilers like GCC when the user code never invokes
+ YYERROR and the label yyerrorlab therefore never appears in user
+ code. */
+ if (/*CONSTCOND*/ 0)
+ goto yyerrorlab;
+
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYERROR. */
+ YYPOPSTACK (yylen);
+ yylen = 0;
+ YY_STACK_PRINT (yyss, yyssp);
+ yystate = *yyssp;
+ goto yyerrlab1;
+
+
+/*-------------------------------------------------------------.
+| yyerrlab1 -- common code for both syntax error and YYERROR. |
+`-------------------------------------------------------------*/
yyerrlab1:
yyerrstatus = 3; /* Each real token shifted decrements this. */
if (yyssp == yyss)
YYABORT;
- YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
- yydestruct (yystos[yystate], yyvsp);
- yyvsp--;
- yystate = *--yyssp;
+ yydestruct ("Error: popping",
+ yystos[yystate], yyvsp);
+ YYPOPSTACK (1);
+ yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
}
- if (yyn == YYFINAL)
- YYACCEPT;
-
- YYDPRINTF ((stderr, "Shifting error token, "));
-
*++yyvsp = yylval;
+ /* Shift the error token. */
+ YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
+
yystate = yyn;
goto yynewstate;
yyresult = 1;
goto yyreturn;
-#ifndef yyoverflow
-/*----------------------------------------------.
-| yyoverflowlab -- parser overflow comes here. |
-`----------------------------------------------*/
-yyoverflowlab:
- yyerror ("parser stack overflow");
+#if !defined(yyoverflow) || YYERROR_VERBOSE
+/*-------------------------------------------------.
+| yyexhaustedlab -- memory exhaustion comes here. |
+`-------------------------------------------------*/
+yyexhaustedlab:
+ yyerror (YY_("memory exhausted"));
yyresult = 2;
/* Fall through. */
#endif
yyreturn:
+ if (yychar != YYEMPTY)
+ yydestruct ("Cleanup: discarding lookahead",
+ yytoken, &yylval);
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYABORT or YYACCEPT. */
+ YYPOPSTACK (yylen);
+ YY_STACK_PRINT (yyss, yyssp);
+ while (yyssp != yyss)
+ {
+ yydestruct ("Cleanup: popping",
+ yystos[*yyssp], yyvsp);
+ YYPOPSTACK (1);
+ }
#ifndef yyoverflow
if (yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
- return yyresult;
+#if YYERROR_VERBOSE
+ if (yymsg != yymsgbuf)
+ YYSTACK_FREE (yymsg);
+#endif
+ /* Make sure YYID is used. */
+ return YYID (yyresult);
}
+
+/* Line 1675 of yacc.c */
#line 1039 "swf4compiler.y"
-/* A Bison parser, made by GNU Bison 1.875. */
-/* Skeleton parser for Yacc-like parsing with Bison,
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc.
+/* A Bison parser, made by GNU Bison 2.4. */
- This program is free software; you can redistribute it and/or modify
+/* Skeleton interface for Bison's Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
-
+
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
-/* As a special exception, when this file is copied by Bison into a
- Bison output file, you may use that output file without restriction.
- This special exception was added by the Free Software Foundation
- in version 1.24 of Bison. */
/* Tokens. */
#ifndef YYTOKENTYPE
NEGATE = 322
};
#endif
-#define BREAK 258
-#define FOR 259
-#define CONTINUE 260
-#define IF 261
-#define ELSE 262
-#define DO 263
-#define WHILE 264
-#define THIS 265
-#define EVAL 266
-#define TIME 267
-#define RANDOM 268
-#define LENGTH 269
-#define INT 270
-#define CONCAT 271
-#define DUPLICATECLIP 272
-#define REMOVECLIP 273
-#define TRACE 274
-#define STARTDRAG 275
-#define STOPDRAG 276
-#define ORD 277
-#define CHR 278
-#define CALLFRAME 279
-#define GETURL 280
-#define GETURL1 281
-#define LOADMOVIE 282
-#define LOADVARIABLES 283
-#define POSTURL 284
-#define SUBSTR 285
-#define GETPROPERTY 286
-#define NEXTFRAME 287
-#define PREVFRAME 288
-#define PLAY 289
-#define STOP 290
-#define TOGGLEQUALITY 291
-#define STOPSOUNDS 292
-#define GOTOFRAME 293
-#define GOTOANDPLAY 294
-#define FRAMELOADED 295
-#define SETTARGET 296
-#define TELLTARGET 297
-#define STRING 298
-#define NUMBER 299
-#define IDENTIFIER 300
-#define PATH 301
-#define GETURL_METHOD 302
-#define EQ 303
-#define LE 304
-#define GE 305
-#define NE 306
-#define LAN 307
-#define LOR 308
-#define INC 309
-#define DEC 310
-#define IEQ 311
-#define DEQ 312
-#define MEQ 313
-#define SEQ 314
-#define STREQ 315
-#define STRNE 316
-#define STRCMP 317
-#define PARENT 318
-#define END 319
-#define UMINUS 320
-#define POSTFIX 321
-#define NEGATE 322
-
-
-
-
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
+
+
+
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+{
+
+/* Line 1676 of yacc.c */
#line 17 "swf4compiler.y"
-typedef union YYSTYPE {
+
Buffer action;
char *str;
SWFActionFunction function;
SWFGetUrl2Method getURLMethod;
+
+
+
+/* Line 1676 of yacc.c */
+#line 128 "swf4compiler.tab.h"
} YYSTYPE;
-/* Line 1240 of yacc.c. */
-#line 177 "swf4compiler.tab.h"
+# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
#endif
extern YYSTYPE swf4lval;
-
if(!state->method)
syntaxerror("internal error: skewed tokencount");
function_initvars(state->method, 0, 0, 0, 1);
- global->init = abc_initscript(global->file);
+ global->init = 0;
}
}
if(as3_pass==2) {
dict_del(global->file2token2info, current_filename);
code_t*header = method_header(state->method);
- code_t*c = wrap_function(header, 0, global->init->method->body->code);
- global->init->method->body->code = abc_returnvoid(c);
- free(state->method);state->method=0;
+ //if(global->init->method->body->code || global->init->traits) {
+ if(global->init) {
+ code_t*c = wrap_function(header, 0, global->init->method->body->code);
+ global->init->method->body->code = abc_returnvoid(c);
+ free(state->method);state->method=0;
+ }
}
//free(state->package);state->package=0; // used in registry
multiname_t mname = {QNAME, &mname_ns, 0, name};
f = abc_method_new(global->file, type2, 1);
+ if(!global->init) global->init = abc_initscript(global->file);
trait_t*t = trait_new_method(&global->init->traits, multiname_clone(&mname), f);
//abc_code_t*c = global->init->method->body->code;
}
/* Line 273 of skeleton.m4 */
-#line 1923 "parser.tab.c"
+#line 1927 "parser.tab.c"
/* Unqualified %code blocks. */
/* Line 274 of skeleton.m4 */
-#line 2000 "parser.y"
+#line 2008 "parser.y"
char is_subtype_of(classinfo_t*type, classinfo_t*supertype)
{
/* Line 274 of skeleton.m4 */
-#line 2450 "parser.y"
+#line 2458 "parser.y"
static void state_has_imports()
{
/* Line 274 of skeleton.m4 */
-#line 2583 "parser.y"
+#line 2591 "parser.y"
static int slotstate_varconst = 0;
static modifiers_t*slotstate_flags = 0;
code_t**code=0;
if(!state->cls) {
// global variable
+ if(!global->init) global->init = abc_initscript(global->file);
ns.name = state->package;
traits = &global->init->traits;
code = &global->init->method->body->code;
/* Line 274 of skeleton.m4 */
-#line 2767 "parser.y"
+#line 2776 "parser.y"
static int xml_level = 0;
/* Line 274 of skeleton.m4 */
-#line 3546 "parser.y"
+#line 3555 "parser.y"
node_t* resolve_identifier(char*name)
{
/* Line 274 of skeleton.m4 */
-#line 3688 "parser.y"
+#line 3697 "parser.y"
void add_active_url(const char*url)
{
/* Line 274 of skeleton.m4 */
-#line 2155 "parser.tab.c"
+#line 2160 "parser.tab.c"
#ifdef short
# undef short
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 1904, 1904, 1906, 1906, 1907, 1908, 1910, 1911, 1912,
- 1913, 1914, 1915, 1916, 1917, 1919, 1919, 1920, 1921, 1923,
- 1924, 1925, 1926, 1927, 1928, 1929, 1931, 1932, 1934, 1937,
- 1940, 1941, 1942, 1943, 1944, 1945, 1946, 1947, 1948, 1949,
- 1950, 1951, 1952, 1953, 1954, 1957, 1958, 1959, 1960, 1961,
- 1962, 1963, 1964, 1976, 1977, 1981, 1988, 2007, 2008, 2010,
- 2011, 2013, 2014, 2016, 2076, 2077, 2080, 2080, 2099, 2100,
- 2101, 2106, 2110, 2115, 2116, 2118, 2138, 2186, 2186, 2205,
- 2205, 2220, 2223, 2226, 2229, 2233, 2234, 2235, 2236, 2237,
- 2238, 2240, 2251, 2254, 2254, 2285, 2285, 2310, 2310, 2326,
- 2327, 2328, 2329, 2337, 2346, 2346, 2395, 2399, 2410, 2420,
- 2437, 2438, 2439, 2440, 2442, 2443, 2445, 2445, 2447, 2447,
- 2470, 2484, 2500, 2501, 2502, 2503, 2510, 2511, 2512, 2513,
- 2514, 2515, 2516, 2517, 2518, 2519, 2523, 2524, 2526, 2527,
- 2529, 2530, 2534, 2532, 2540, 2538, 2547, 2548, 2549, 2550,
- 2551, 2552, 2553, 2554, 2556, 2562, 2563, 2564, 2565, 2566,
- 2567, 2570, 2642, 2642, 2644, 2644, 2646, 2647, 2649, 2733,
- 2734, 2743, 2744, 2747, 2748, 2749, 2750, 2751, 2752, 2753,
- 2771, 2773, 2774, 2775, 2777, 2777, 2781, 2781, 2785, 2786,
- 2789, 2790, 2792, 2793, 2795, 2796, 2798, 2802, 2805, 2810,
- 2811, 2812, 2813, 2815, 2818, 2822, 2825, 2828, 2838, 2842,
- 2848, 2854, 2862, 2867, 2873, 2881, 2889, 2890, 2891, 2894,
- 2893, 2910, 2911, 2913, 2912, 2936, 2955, 2969, 2970, 2972,
- 2973, 2975, 2976, 2977, 2986, 2987, 2991, 2992, 2994, 2995,
- 2996, 2998, 3002, 3003, 3008, 3009, 3053, 3103, 3124, 3146,
- 3149, 3156, 3159, 3162, 3165, 3168, 3171, 3176, 3177, 3179,
- 3180, 3181, 3182, 3183, 3185, 3191, 3200, 3201, 3202, 3203,
- 3204, 3205, 3207, 3211, 3223, 3241, 3252, 3262, 3271, 3272,
- 3273, 3274, 3275, 3276, 3277, 3278, 3279, 3280, 3281, 3282,
- 3283, 3284, 3285, 3286, 3287, 3288, 3289, 3290, 3291, 3292,
- 3293, 3294, 3295, 3296, 3297, 3298, 3299, 3300, 3301, 3302,
- 3303, 3304, 3305, 3306, 3307, 3308, 3309, 3310, 3311, 3312,
- 3313, 3314, 3315, 3316, 3318, 3319, 3320, 3321, 3323, 3338,
- 3346, 3346, 3400, 3401, 3402, 3403, 3404, 3412, 3430, 3437,
- 3448, 3455, 3462, 3472, 3483, 3661, 3697, 3704, 3711, 3718,
- 3740, 3745
+ 0, 1908, 1908, 1910, 1910, 1911, 1912, 1914, 1915, 1916,
+ 1917, 1918, 1919, 1920, 1921, 1923, 1923, 1924, 1925, 1927,
+ 1928, 1929, 1930, 1931, 1932, 1933, 1935, 1936, 1938, 1941,
+ 1944, 1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953,
+ 1954, 1955, 1956, 1957, 1958, 1961, 1962, 1963, 1964, 1965,
+ 1966, 1967, 1968, 1980, 1981, 1985, 1996, 2015, 2016, 2018,
+ 2019, 2021, 2022, 2024, 2084, 2085, 2088, 2088, 2107, 2108,
+ 2109, 2114, 2118, 2123, 2124, 2126, 2146, 2194, 2194, 2213,
+ 2213, 2228, 2231, 2234, 2237, 2241, 2242, 2243, 2244, 2245,
+ 2246, 2248, 2259, 2262, 2262, 2293, 2293, 2318, 2318, 2334,
+ 2335, 2336, 2337, 2345, 2354, 2354, 2403, 2407, 2418, 2428,
+ 2445, 2446, 2447, 2448, 2450, 2451, 2453, 2453, 2455, 2455,
+ 2478, 2492, 2508, 2509, 2510, 2511, 2518, 2519, 2520, 2521,
+ 2522, 2523, 2524, 2525, 2526, 2527, 2531, 2532, 2534, 2535,
+ 2537, 2538, 2542, 2540, 2548, 2546, 2555, 2556, 2557, 2558,
+ 2559, 2560, 2561, 2562, 2564, 2570, 2571, 2572, 2573, 2574,
+ 2575, 2578, 2651, 2651, 2653, 2653, 2655, 2656, 2658, 2742,
+ 2743, 2752, 2753, 2756, 2757, 2758, 2759, 2760, 2761, 2762,
+ 2780, 2782, 2783, 2784, 2786, 2786, 2790, 2790, 2794, 2795,
+ 2798, 2799, 2801, 2802, 2804, 2805, 2807, 2811, 2814, 2819,
+ 2820, 2821, 2822, 2824, 2827, 2831, 2834, 2837, 2847, 2851,
+ 2857, 2863, 2871, 2876, 2882, 2890, 2898, 2899, 2900, 2903,
+ 2902, 2919, 2920, 2922, 2921, 2945, 2964, 2978, 2979, 2981,
+ 2982, 2984, 2985, 2986, 2995, 2996, 3000, 3001, 3003, 3004,
+ 3005, 3007, 3011, 3012, 3017, 3018, 3062, 3112, 3133, 3155,
+ 3158, 3165, 3168, 3171, 3174, 3177, 3180, 3185, 3186, 3188,
+ 3189, 3190, 3191, 3192, 3194, 3200, 3209, 3210, 3211, 3212,
+ 3213, 3214, 3216, 3220, 3232, 3250, 3261, 3271, 3280, 3281,
+ 3282, 3283, 3284, 3285, 3286, 3287, 3288, 3289, 3290, 3291,
+ 3292, 3293, 3294, 3295, 3296, 3297, 3298, 3299, 3300, 3301,
+ 3302, 3303, 3304, 3305, 3306, 3307, 3308, 3309, 3310, 3311,
+ 3312, 3313, 3314, 3315, 3316, 3317, 3318, 3319, 3320, 3321,
+ 3322, 3323, 3324, 3325, 3327, 3328, 3329, 3330, 3332, 3347,
+ 3355, 3355, 3409, 3410, 3411, 3412, 3413, 3421, 3439, 3446,
+ 3457, 3464, 3471, 3481, 3492, 3670, 3706, 3713, 3720, 3727,
+ 3749, 3754
};
#endif
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1916 "parser.y"
+#line 1920 "parser.y"
{PASS_ALWAYS as3_pass=(yyvsp[(1) - (4)].number_int);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1928 "parser.y"
+#line 1932 "parser.y"
{PASS_ALWAYS as3_pass=(yyvsp[(1) - (4)].number_int);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1931 "parser.y"
+#line 1935 "parser.y"
{(yyval.code)=(yyvsp[(1) - (1)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1932 "parser.y"
+#line 1936 "parser.y"
{(yyval.code)=code_new();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1934 "parser.y"
+#line 1938 "parser.y"
{
(yyval.code)=code_append((yyvsp[(1) - (2)].code),(yyvsp[(2) - (2)].code));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1937 "parser.y"
+#line 1941 "parser.y"
{(yyval.code)=(yyvsp[(1) - (1)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1953 "parser.y"
+#line 1957 "parser.y"
{(yyval.code)=(yyvsp[(2) - (3)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1954 "parser.y"
+#line 1958 "parser.y"
{(yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1957 "parser.y"
+#line 1961 "parser.y"
{(yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1964 "parser.y"
+#line 1968 "parser.y"
{
PASS_ALWAYS
if(as3_pass) {
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1976 "parser.y"
+#line 1980 "parser.y"
{(yyval.code)=(yyvsp[(1) - (2)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1977 "parser.y"
+#line 1981 "parser.y"
{(yyval.code)=(yyvsp[(1) - (1)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1981 "parser.y"
+#line 1985 "parser.y"
{
- code_t**cc = &global->init->method->body->code;
- *cc = code_append(*cc, (yyvsp[(1) - (1)].code));
+ if((yyvsp[(1) - (1)].code)) {
+ if(!global->init)
+ global->init = abc_initscript(global->file);
+ code_t**cc = &global->init->method->body->code;
+ *cc = code_append(*cc, (yyvsp[(1) - (1)].code));
+ }
}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 1988 "parser.y"
+#line 1996 "parser.y"
{
PASS12
(yyval.number_int)=as3_pass;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2007 "parser.y"
+#line 2015 "parser.y"
{(yyval.node)=(yyvsp[(2) - (2)].node);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2008 "parser.y"
+#line 2016 "parser.y"
{(yyval.node)=mkdummynode();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2010 "parser.y"
+#line 2018 "parser.y"
{(yyval.code)=(yyvsp[(2) - (2)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2011 "parser.y"
+#line 2019 "parser.y"
{(yyval.code)=(yyvsp[(2) - (2)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2013 "parser.y"
+#line 2021 "parser.y"
{(yyval.code) = (yyvsp[(1) - (1)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2014 "parser.y"
+#line 2022 "parser.y"
{(yyval.code) = code_append((yyvsp[(1) - (3)].code), (yyvsp[(3) - (3)].code));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2017 "parser.y"
+#line 2025 "parser.y"
{
PASS12
if(variable_exists((yyvsp[(1) - (3)].id)))
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2076 "parser.y"
+#line 2084 "parser.y"
{(yyval.code) = code_new();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2077 "parser.y"
+#line 2085 "parser.y"
{(yyval.code)=(yyvsp[(2) - (2)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2080 "parser.y"
+#line 2088 "parser.y"
{PASS12 new_state();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2080 "parser.y"
+#line 2088 "parser.y"
{
(yyval.code) = code_new();
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2099 "parser.y"
+#line 2107 "parser.y"
{(yyval.code)=code_new();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2106 "parser.y"
+#line 2114 "parser.y"
{
PASS1 (yyval.id)=(yyvsp[(2) - (3)].id);new_variable((yyvsp[(2) - (3)].id),0,1,0);
PASS2 (yyval.id)=(yyvsp[(2) - (3)].id);new_variable((yyvsp[(2) - (3)].id),(yyvsp[(3) - (3)].classinfo),1,0);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2110 "parser.y"
+#line 2118 "parser.y"
{
PASS12
(yyval.id)=(yyvsp[(1) - (1)].id);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2115 "parser.y"
+#line 2123 "parser.y"
{PASS12 new_state();(yyval.for_start).name=(yyvsp[(1) - (2)].id);(yyval.for_start).each=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2116 "parser.y"
+#line 2124 "parser.y"
{PASS12 new_state();(yyval.for_start).name=(yyvsp[(1) - (3)].id);(yyval.for_start).each=1;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2118 "parser.y"
+#line 2126 "parser.y"
{
if((yyvsp[(1) - (8)].for_start).each) syntaxerror("invalid syntax: ; not allowed in for each statement");
(yyval.code) = code_new();
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2138 "parser.y"
+#line 2146 "parser.y"
{
variable_t*var = find_variable(state, (yyvsp[(2) - (6)].id));
if(!var) {
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2186 "parser.y"
+#line 2194 "parser.y"
{PASS12 new_state();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2186 "parser.y"
+#line 2194 "parser.y"
{
(yyval.code) = code_new();
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2205 "parser.y"
+#line 2213 "parser.y"
{PASS12 new_state();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2205 "parser.y"
+#line 2213 "parser.y"
{
(yyval.code) = code_new();
code_t*loopstart = (yyval.code) = abc_label((yyval.code));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2220 "parser.y"
+#line 2228 "parser.y"
{
(yyval.code) = abc___break__(0, "");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2223 "parser.y"
+#line 2231 "parser.y"
{
(yyval.code) = abc___break__(0, (yyvsp[(2) - (2)].id));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2226 "parser.y"
+#line 2234 "parser.y"
{
(yyval.code) = abc___continue__(0, "");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2229 "parser.y"
+#line 2237 "parser.y"
{
(yyval.code) = abc___continue__(0, (yyvsp[(2) - (2)].id));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2233 "parser.y"
+#line 2241 "parser.y"
{(yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2234 "parser.y"
+#line 2242 "parser.y"
{(yyval.code)=(yyvsp[(1) - (1)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2235 "parser.y"
+#line 2243 "parser.y"
{(yyval.code)=(yyvsp[(1) - (1)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2236 "parser.y"
+#line 2244 "parser.y"
{(yyval.code)=code_append((yyvsp[(1) - (2)].code),(yyvsp[(2) - (2)].code));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2237 "parser.y"
+#line 2245 "parser.y"
{(yyval.code)=(yyvsp[(1) - (1)].code);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2238 "parser.y"
+#line 2246 "parser.y"
{(yyval.code)=code_append((yyval.code),(yyvsp[(2) - (2)].code));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2240 "parser.y"
+#line 2248 "parser.y"
{
(yyval.code) = abc_getlocal(0, state->switch_var);
(yyval.code) = code_append((yyval.code), node_read((yyvsp[(2) - (4)].node)).c);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2251 "parser.y"
+#line 2259 "parser.y"
{
(yyval.code) = (yyvsp[(3) - (3)].code);
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2254 "parser.y"
+#line 2262 "parser.y"
{PASS12 new_state();state->switch_var=alloc_local();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2254 "parser.y"
+#line 2262 "parser.y"
{
(yyval.code) = node_read((yyvsp[(4) - (8)].node)).c;
(yyval.code) = abc_setlocal((yyval.code), state->switch_var);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2285 "parser.y"
+#line 2293 "parser.y"
{PASS12 new_state();
state->exception_name=(yyvsp[(3) - (5)].id);
PASS1 new_variable((yyvsp[(3) - (5)].id), 0, 0, 0);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2290 "parser.y"
+#line 2298 "parser.y"
{
namespace_t name_ns = {ACCESS_PACKAGE, ""};
multiname_t name = {QNAME, &name_ns, 0, (yyvsp[(3) - (9)].id)};
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2310 "parser.y"
+#line 2318 "parser.y"
{PASS12 new_state();state->exception_name=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2310 "parser.y"
+#line 2318 "parser.y"
{
(yyvsp[(4) - (5)].code) = var_block((yyvsp[(4) - (5)].code));
if(!(yyvsp[(4) - (5)].code)) {
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2326 "parser.y"
+#line 2334 "parser.y"
{(yyval.catch_list).l=list_new();(yyval.catch_list).finally=0;list_append((yyval.catch_list).l,(yyvsp[(1) - (1)].exception));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2327 "parser.y"
+#line 2335 "parser.y"
{(yyval.catch_list)=(yyvsp[(1) - (2)].catch_list);list_append((yyval.catch_list).l,(yyvsp[(2) - (2)].exception));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2328 "parser.y"
+#line 2336 "parser.y"
{(yyval.catch_list)=(yyvsp[(1) - (1)].catch_list);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2329 "parser.y"
+#line 2337 "parser.y"
{
(yyval.catch_list) = (yyvsp[(1) - (2)].catch_list);
(yyval.catch_list).finally = 0;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2337 "parser.y"
+#line 2345 "parser.y"
{
(yyval.catch_list).l=list_new();
(yyval.catch_list).finally = 0;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2346 "parser.y"
+#line 2354 "parser.y"
{PASS12 new_state();
state->method->has_exceptions=1;
state->method->late_binding=1;//for invariant scope_code
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2349 "parser.y"
+#line 2357 "parser.y"
{
code_t*out = abc_nop(0);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2395 "parser.y"
+#line 2403 "parser.y"
{
(yyval.code)=(yyvsp[(2) - (2)].value).c;
(yyval.code)=abc_throw((yyval.code));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2399 "parser.y"
+#line 2407 "parser.y"
{
if(!state->exception_name)
syntaxerror("re-throw only possible within a catch block");
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2410 "parser.y"
+#line 2418 "parser.y"
{
new_state();
if(state->method->has_exceptions) {
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2420 "parser.y"
+#line 2428 "parser.y"
{
/* remove getlocal;pushwith from scope code again */
state->method->scope_code = code_cutlast(code_cutlast(state->method->scope_code));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2438 "parser.y"
+#line 2446 "parser.y"
{PASS12 (yyval.id)="package";}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2439 "parser.y"
+#line 2447 "parser.y"
{PASS12 (yyval.id)="namespace";}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2440 "parser.y"
+#line 2448 "parser.y"
{PASS12 (yyval.id)=(yyvsp[(1) - (1)].id);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2442 "parser.y"
+#line 2450 "parser.y"
{PASS12 (yyval.id) = concat3((yyvsp[(1) - (3)].id),".",(yyvsp[(3) - (3)].id));free((yyvsp[(1) - (3)].id));(yyvsp[(1) - (3)].id)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2443 "parser.y"
+#line 2451 "parser.y"
{PASS12 (yyval.id)=strdup((yyvsp[(1) - (1)].id));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2445 "parser.y"
+#line 2453 "parser.y"
{PASS12 startpackage((yyvsp[(2) - (3)].id));free((yyvsp[(2) - (3)].id));(yyvsp[(2) - (3)].id)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2446 "parser.y"
+#line 2454 "parser.y"
{PASS12 endpackage();(yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2447 "parser.y"
+#line 2455 "parser.y"
{PASS12 startpackage("");}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2448 "parser.y"
+#line 2456 "parser.y"
{PASS12 endpackage();(yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2470 "parser.y"
+#line 2478 "parser.y"
{
PASS12
slotinfo_t*s = registry_find((yyvsp[(2) - (2)].classinfo)->package, (yyvsp[(2) - (2)].classinfo)->name);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2484 "parser.y"
+#line 2492 "parser.y"
{
PASS12
if(strncmp("flash.", (yyvsp[(2) - (4)].id), 6) && as3_pass==1) {
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2500 "parser.y"
+#line 2508 "parser.y"
{PASS12 (yyval.flags).flags=0;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2501 "parser.y"
+#line 2509 "parser.y"
{PASS12 (yyval.flags)=(yyvsp[(1) - (1)].flags);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2502 "parser.y"
+#line 2510 "parser.y"
{PASS12 (yyval.flags)=(yyvsp[(1) - (1)].flags);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2503 "parser.y"
+#line 2511 "parser.y"
{
PASS12
(yyval.flags).flags=(yyvsp[(1) - (2)].flags).flags|(yyvsp[(2) - (2)].flags).flags;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2510 "parser.y"
+#line 2518 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_PUBLIC;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2511 "parser.y"
+#line 2519 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_PRIVATE;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2512 "parser.y"
+#line 2520 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_PROTECTED;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2513 "parser.y"
+#line 2521 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_STATIC;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2514 "parser.y"
+#line 2522 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_DYNAMIC;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2515 "parser.y"
+#line 2523 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_FINAL;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2516 "parser.y"
+#line 2524 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_OVERRIDE;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2517 "parser.y"
+#line 2525 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_NATIVE;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2518 "parser.y"
+#line 2526 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_PACKAGEINTERNAL;(yyval.flags).ns=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2519 "parser.y"
+#line 2527 "parser.y"
{PASS12 (yyval.flags).flags=FLAG_NAMESPACE;
(yyval.flags).ns=(yyvsp[(1) - (1)].id);
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2523 "parser.y"
+#line 2531 "parser.y"
{PASS12 (yyval.classinfo)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2524 "parser.y"
+#line 2532 "parser.y"
{PASS12 (yyval.classinfo)=(yyvsp[(2) - (2)].classinfo);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2526 "parser.y"
+#line 2534 "parser.y"
{PASS12 (yyval.classinfo_list)=list_new();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2527 "parser.y"
+#line 2535 "parser.y"
{PASS12 (yyval.classinfo_list)=(yyvsp[(2) - (2)].classinfo_list);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2529 "parser.y"
+#line 2537 "parser.y"
{PASS12 (yyval.classinfo_list)=list_new();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2530 "parser.y"
+#line 2538 "parser.y"
{PASS12 (yyval.classinfo_list)=(yyvsp[(2) - (2)].classinfo_list);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2534 "parser.y"
+#line 2542 "parser.y"
{PASS12 startclass(&(yyvsp[(1) - (6)].flags),(yyvsp[(3) - (6)].id),(yyvsp[(4) - (6)].classinfo),(yyvsp[(5) - (6)].classinfo_list));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2536 "parser.y"
+#line 2544 "parser.y"
{PASS12 endclass();(yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2540 "parser.y"
+#line 2548 "parser.y"
{PASS12 (yyvsp[(1) - (5)].flags).flags|=FLAG_INTERFACE;
startclass(&(yyvsp[(1) - (5)].flags),(yyvsp[(3) - (5)].id),0,(yyvsp[(4) - (5)].classinfo_list));}
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2543 "parser.y"
+#line 2551 "parser.y"
{PASS12 endclass();(yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2552 "parser.y"
+#line 2560 "parser.y"
{PASS_ALWAYS as3_pass=(yyvsp[(1) - (4)].number_int);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2556 "parser.y"
+#line 2564 "parser.y"
{
code_t*c = state->cls->static_init->header;
c = code_append(c, (yyvsp[(1) - (1)].code));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2567 "parser.y"
+#line 2575 "parser.y"
{
syntaxerror("variable declarations not allowed in interfaces");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2570 "parser.y"
+#line 2578 "parser.y"
{
PASS12
(yyvsp[(1) - (8)].flags).flags |= FLAG_PUBLIC;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2644 "parser.y"
+#line 2653 "parser.y"
{PASS12 setslotstate(&(yyvsp[(1) - (2)].flags),(yyvsp[(2) - (2)].token));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2644 "parser.y"
+#line 2653 "parser.y"
{PASS12 (yyval.code)=(yyvsp[(4) - (4)].code);setslotstate(0, 0);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2646 "parser.y"
+#line 2655 "parser.y"
{PASS12 (yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2647 "parser.y"
+#line 2656 "parser.y"
{PASS12 (yyval.code)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2650 "parser.y"
+#line 2659 "parser.y"
{
PASS12
int flags = slotstate_flags->flags;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2733 "parser.y"
+#line 2742 "parser.y"
{(yyval.constant)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2734 "parser.y"
+#line 2743 "parser.y"
{
(yyval.constant) = malloc(sizeof(constant_t));
*(yyval.constant) = node_eval((yyvsp[(2) - (2)].node));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2743 "parser.y"
+#line 2752 "parser.y"
{(yyval.constant) = constant_new_int((yyvsp[(1) - (1)].number_int));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2744 "parser.y"
+#line 2753 "parser.y"
{
(yyval.constant) = constant_new_uint((yyvsp[(1) - (1)].number_uint));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2747 "parser.y"
+#line 2756 "parser.y"
{(yyval.constant) = constant_new_float((yyvsp[(1) - (1)].number_float));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2748 "parser.y"
+#line 2757 "parser.y"
{(yyval.constant) = constant_new_string2((yyvsp[(1) - (1)].str).str,(yyvsp[(1) - (1)].str).len);free((char*)(yyvsp[(1) - (1)].str).str);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2749 "parser.y"
+#line 2758 "parser.y"
{(yyval.constant) = constant_new_true((yyvsp[(1) - (1)].token));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2750 "parser.y"
+#line 2759 "parser.y"
{(yyval.constant) = constant_new_false((yyvsp[(1) - (1)].token));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2751 "parser.y"
+#line 2760 "parser.y"
{(yyval.constant) = constant_new_null((yyvsp[(1) - (1)].token));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2752 "parser.y"
+#line 2761 "parser.y"
{(yyval.constant) = constant_new_undefined((yyvsp[(1) - (1)].token));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2753 "parser.y"
+#line 2762 "parser.y"
{(yyval.constant) = constant_new_float(__builtin_nan(""));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2773 "parser.y"
+#line 2782 "parser.y"
{PASS_ALWAYS if(!xml_level++) tokenizer_begin_xml();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2774 "parser.y"
+#line 2783 "parser.y"
{PASS_ALWAYS tokenizer_begin_xmltext();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2775 "parser.y"
+#line 2784 "parser.y"
{PASS_ALWAYS if(!--xml_level) tokenizer_end_xml(); else tokenizer_begin_xmltext();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2777 "parser.y"
+#line 2786 "parser.y"
{PASS_ALWAYS tokenizer_begin_xmltext();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2777 "parser.y"
+#line 2786 "parser.y"
{
(yyval.id)=strdup("{...}");
as3_warning("xml string substitution not yet supported");
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2781 "parser.y"
+#line 2790 "parser.y"
{PASS_ALWAYS tokenizer_begin_xml();}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2781 "parser.y"
+#line 2790 "parser.y"
{
(yyval.id)=strdup("{...}");
as3_warning("xml string substitution not yet supported");
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2785 "parser.y"
+#line 2794 "parser.y"
{(yyval.id)="";}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2786 "parser.y"
+#line 2795 "parser.y"
{
(yyval.id) = concat2((yyvsp[(1) - (2)].id), "{...}");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2789 "parser.y"
+#line 2798 "parser.y"
{(yyval.id)=concat2((yyvsp[(1) - (2)].id), string_cstr(&(yyvsp[(2) - (2)].str)));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2790 "parser.y"
+#line 2799 "parser.y"
{(yyval.id)=concat2((yyvsp[(1) - (2)].id), ">");}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2792 "parser.y"
+#line 2801 "parser.y"
{(yyval.id)=concat2((yyvsp[(1) - (2)].id),(yyvsp[(2) - (2)].id));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2793 "parser.y"
+#line 2802 "parser.y"
{(yyval.id)=concat3((yyvsp[(1) - (3)].id),(yyvsp[(2) - (3)].id),(yyvsp[(3) - (3)].id));free((yyvsp[(1) - (3)].id));free((yyvsp[(2) - (3)].id));free((yyvsp[(3) - (3)].id));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2795 "parser.y"
+#line 2804 "parser.y"
{(yyval.id)=(yyvsp[(1) - (1)].id);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2796 "parser.y"
+#line 2805 "parser.y"
{(yyval.id)=(yyvsp[(1) - (1)].id);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2798 "parser.y"
+#line 2807 "parser.y"
{
(yyval.id) = allocprintf("<%s%s>%s</%s>", (yyvsp[(2) - (10)].id), (yyvsp[(3) - (10)].id), (yyvsp[(5) - (10)].id), (yyvsp[(8) - (10)].id));
free((yyvsp[(2) - (10)].id));free((yyvsp[(3) - (10)].id));free((yyvsp[(5) - (10)].id));free((yyvsp[(8) - (10)].id));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2802 "parser.y"
+#line 2811 "parser.y"
{
(yyval.id) = allocprintf("<%s%s/>", (yyvsp[(2) - (6)].id), (yyvsp[(3) - (6)].id));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2805 "parser.y"
+#line 2814 "parser.y"
{
(yyval.id) = allocprintf("<%s%s>%s%s</%s>", (yyvsp[(2) - (11)].id), (yyvsp[(3) - (11)].id), (yyvsp[(5) - (11)].id), (yyvsp[(6) - (11)].id), (yyvsp[(9) - (11)].id));
free((yyvsp[(2) - (11)].id));free((yyvsp[(3) - (11)].id));free((yyvsp[(5) - (11)].id));free((yyvsp[(6) - (11)].id));free((yyvsp[(9) - (11)].id));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2810 "parser.y"
+#line 2819 "parser.y"
{(yyval.id)=strdup("");}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2811 "parser.y"
+#line 2820 "parser.y"
{(yyval.id)=concat2(" ",(yyvsp[(1) - (1)].id));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2812 "parser.y"
+#line 2821 "parser.y"
{(yyval.id)=(yyvsp[(1) - (1)].id);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2813 "parser.y"
+#line 2822 "parser.y"
{(yyval.id)=concat3((yyvsp[(1) - (2)].id)," ",(yyvsp[(2) - (2)].id));free((yyvsp[(1) - (2)].id));free((yyvsp[(2) - (2)].id));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2815 "parser.y"
+#line 2824 "parser.y"
{
(yyval.id) = strdup("{...}");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2818 "parser.y"
+#line 2827 "parser.y"
{
char* str = string_cstr(&(yyvsp[(3) - (3)].str));
(yyval.id) = concat2("{...}=",str);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2822 "parser.y"
+#line 2831 "parser.y"
{
(yyval.id) = strdup("{...}={...}");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2825 "parser.y"
+#line 2834 "parser.y"
{
(yyval.id) = concat2((yyvsp[(1) - (3)].id),"={...}");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2828 "parser.y"
+#line 2837 "parser.y"
{
char* str = string_cstr(&(yyvsp[(3) - (3)].str));
(yyval.id)=allocprintf("%s=%s", (yyvsp[(1) - (3)].id),str);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2838 "parser.y"
+#line 2847 "parser.y"
{
PASS12
memset(&(yyval.params),0,sizeof((yyval.params)));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2842 "parser.y"
+#line 2851 "parser.y"
{
PASS12
(yyval.params)=(yyvsp[(1) - (1)].params);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2848 "parser.y"
+#line 2857 "parser.y"
{
PASS12
memset(&(yyval.params),0,sizeof((yyval.params)));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2854 "parser.y"
+#line 2863 "parser.y"
{
PASS12
(yyval.params) =(yyvsp[(1) - (4)].params);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2862 "parser.y"
+#line 2871 "parser.y"
{
PASS12
(yyval.params) = (yyvsp[(1) - (3)].params);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2867 "parser.y"
+#line 2876 "parser.y"
{
PASS12
memset(&(yyval.params),0,sizeof((yyval.params)));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2873 "parser.y"
+#line 2882 "parser.y"
{
PASS12
(yyval.param) = rfx_calloc(sizeof(param_t));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2881 "parser.y"
+#line 2890 "parser.y"
{
PASS12
(yyval.param) = rfx_calloc(sizeof(param_t));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2891 "parser.y"
+#line 2900 "parser.y"
{PASS12 (yyval.token)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2894 "parser.y"
+#line 2903 "parser.y"
{PASS12 startfunction(&(yyvsp[(1) - (9)].flags),(yyvsp[(3) - (9)].token),(yyvsp[(4) - (9)].id),&(yyvsp[(6) - (9)].params),(yyvsp[(8) - (9)].classinfo));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2895 "parser.y"
+#line 2904 "parser.y"
{
PASS1
endfunction(&(yyvsp[(1) - (12)].flags),(yyvsp[(3) - (12)].token),(yyvsp[(4) - (12)].id),&(yyvsp[(6) - (12)].params),0,0);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2911 "parser.y"
+#line 2920 "parser.y"
{PASS12 (yyval.id)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2913 "parser.y"
+#line 2922 "parser.y"
{PASS12 innerfunction((yyvsp[(2) - (7)].id),&(yyvsp[(4) - (7)].params),(yyvsp[(6) - (7)].classinfo));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2914 "parser.y"
+#line 2923 "parser.y"
{
PASS1
endfunction(0,0,(yyvsp[(2) - (10)].id),&(yyvsp[(4) - (10)].params),0,0);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2936 "parser.y"
+#line 2945 "parser.y"
{
PASS1 NEW(unresolvedinfo_t,c);
memset(c, 0, sizeof(*c));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2955 "parser.y"
+#line 2964 "parser.y"
{
PASS1 NEW(unresolvedinfo_t,c);
memset(c, 0, sizeof(*c));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2972 "parser.y"
+#line 2981 "parser.y"
{PASS12 (yyval.classinfo_list)=list_new();list_append((yyval.classinfo_list), (yyvsp[(1) - (1)].classinfo));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2973 "parser.y"
+#line 2982 "parser.y"
{PASS12 (yyval.classinfo_list)=(yyvsp[(1) - (3)].classinfo_list);list_append((yyval.classinfo_list),(yyvsp[(3) - (3)].classinfo));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2975 "parser.y"
+#line 2984 "parser.y"
{PASS12 (yyval.classinfo)=(yyvsp[(1) - (1)].classinfo);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2976 "parser.y"
+#line 2985 "parser.y"
{PASS12 (yyval.classinfo)=TYPE_ANY;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2977 "parser.y"
+#line 2986 "parser.y"
{PASS12 (yyval.classinfo)=TYPE_VOID;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2986 "parser.y"
+#line 2995 "parser.y"
{PASS12 (yyval.classinfo)=(yyvsp[(2) - (2)].classinfo);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2987 "parser.y"
+#line 2996 "parser.y"
{PASS12 (yyval.classinfo)=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2991 "parser.y"
+#line 3000 "parser.y"
{(yyval.value_list).cc=0;(yyval.value_list).number=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2992 "parser.y"
+#line 3001 "parser.y"
{(yyval.value_list)=(yyvsp[(2) - (3)].value_list);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2994 "parser.y"
+#line 3003 "parser.y"
{(yyval.value_list).cc=0;(yyval.value_list).number=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 2998 "parser.y"
+#line 3007 "parser.y"
{(yyval.value_list).number=1;
(yyval.value_list).cc = (yyvsp[(1) - (1)].value).c;
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3002 "parser.y"
+#line 3011 "parser.y"
{(yyval.value_list) = (yyvsp[(1) - (2)].value_list);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3003 "parser.y"
+#line 3012 "parser.y"
{
(yyval.value_list).number= (yyvsp[(1) - (2)].value_list).number+1;
(yyval.value_list).cc = code_append((yyvsp[(1) - (2)].value_list).cc, (yyvsp[(2) - (2)].value).c);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3009 "parser.y"
+#line 3018 "parser.y"
{
typedcode_t v = node_read((yyvsp[(2) - (4)].node));
(yyval.value).c = v.c;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3053 "parser.y"
+#line 3062 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (4)].node));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3103 "parser.y"
+#line 3112 "parser.y"
{
if(!state->cls) syntaxerror("super() not allowed outside of a class");
if(!state->method) syntaxerror("super() not allowed outside of a function");
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3124 "parser.y"
+#line 3133 "parser.y"
{
typedcode_t v = node_read((yyvsp[(2) - (2)].node));
(yyval.value).c = v.c;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3146 "parser.y"
+#line 3155 "parser.y"
{
(yyval.code) = abc_returnvoid(0);
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3149 "parser.y"
+#line 3158 "parser.y"
{
(yyval.code) = (yyvsp[(2) - (2)].value).c;
(yyval.code) = abc_returnvalue((yyval.code));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3156 "parser.y"
+#line 3165 "parser.y"
{
(yyval.value) = node_read((yyvsp[(1) - (1)].node));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3159 "parser.y"
+#line 3168 "parser.y"
{
(yyval.value) = node_read((yyvsp[(1) - (1)].node));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3162 "parser.y"
+#line 3171 "parser.y"
{
(yyval.node) = mkmultinode(&node_comma, (yyvsp[(1) - (1)].node));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3165 "parser.y"
+#line 3174 "parser.y"
{
(yyval.node) = multinode_extend((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3168 "parser.y"
+#line 3177 "parser.y"
{
(yyval.code) = node_exec((yyvsp[(1) - (1)].node));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3171 "parser.y"
+#line 3180 "parser.y"
{
(yyval.code) = (yyvsp[(1) - (3)].code);
(yyval.code) = code_append((yyval.code), node_exec((yyvsp[(3) - (3)].node)));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3176 "parser.y"
+#line 3185 "parser.y"
{(yyval.value_list).cc=0;(yyval.value_list).number=0;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3177 "parser.y"
+#line 3186 "parser.y"
{(yyval.value_list)=(yyvsp[(1) - (1)].value_list);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3179 "parser.y"
+#line 3188 "parser.y"
{(yyval.code)=abc_pushstring(0,(yyvsp[(1) - (1)].id));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3180 "parser.y"
+#line 3189 "parser.y"
{(yyval.code)=abc_pushstring2(0,&(yyvsp[(1) - (1)].str));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3181 "parser.y"
+#line 3190 "parser.y"
{syntaxerror("dictionary keys must be strings");}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3182 "parser.y"
+#line 3191 "parser.y"
{syntaxerror("dictionary keys must be strings");}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3183 "parser.y"
+#line 3192 "parser.y"
{syntaxerror("dictionary keys must be strings");}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3185 "parser.y"
+#line 3194 "parser.y"
{
(yyval.value_list).cc = 0;
(yyval.value_list).cc = code_append((yyval.value_list).cc, (yyvsp[(1) - (3)].code));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3191 "parser.y"
+#line 3200 "parser.y"
{
(yyval.value_list).cc = (yyvsp[(1) - (5)].value_list).cc;
(yyval.value_list).number = (yyvsp[(1) - (5)].value_list).number+2;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3200 "parser.y"
+#line 3209 "parser.y"
{(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3201 "parser.y"
+#line 3210 "parser.y"
{(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3202 "parser.y"
+#line 3211 "parser.y"
{(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3203 "parser.y"
+#line 3212 "parser.y"
{(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3204 "parser.y"
+#line 3213 "parser.y"
{(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3205 "parser.y"
+#line 3214 "parser.y"
{(yyval.node) = (yyvsp[(1) - (1)].node);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3207 "parser.y"
+#line 3216 "parser.y"
{
(yyval.node) = mkconstnode((yyvsp[(1) - (1)].constant));
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3211 "parser.y"
+#line 3220 "parser.y"
{
typedcode_t v;
v.c = 0;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3223 "parser.y"
+#line 3232 "parser.y"
{
typedcode_t v;
v.c = 0;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3241 "parser.y"
+#line 3250 "parser.y"
{
PASS1
state->method->need_arguments = 1;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3252 "parser.y"
+#line 3261 "parser.y"
{
typedcode_t v;
v.c = code_new();
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3262 "parser.y"
+#line 3271 "parser.y"
{
typedcode_t v;
v.c = code_new();
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3271 "parser.y"
+#line 3280 "parser.y"
{(yyval.node) = mknode2(&node_lt,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3272 "parser.y"
+#line 3281 "parser.y"
{(yyval.node) = mknode2(&node_gt,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3273 "parser.y"
+#line 3282 "parser.y"
{(yyval.node) = mknode2(&node_le,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3274 "parser.y"
+#line 3283 "parser.y"
{(yyval.node) = mknode2(&node_ge,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3275 "parser.y"
+#line 3284 "parser.y"
{(yyval.node) = mknode2(&node_eqeq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3276 "parser.y"
+#line 3285 "parser.y"
{(yyval.node) = mknode2(&node_eqeqeq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3277 "parser.y"
+#line 3286 "parser.y"
{(yyval.node) = mknode2(&node_noteqeq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3278 "parser.y"
+#line 3287 "parser.y"
{(yyval.node) = mknode2(&node_noteq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3279 "parser.y"
+#line 3288 "parser.y"
{(yyval.node) = mknode2(&node_oror,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3280 "parser.y"
+#line 3289 "parser.y"
{(yyval.node) = mknode2(&node_andand,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3281 "parser.y"
+#line 3290 "parser.y"
{(yyval.node) = mknode1(&node_not, (yyvsp[(2) - (2)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3282 "parser.y"
+#line 3291 "parser.y"
{(yyval.node) = mknode1(&node_bitnot, (yyvsp[(2) - (2)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3283 "parser.y"
+#line 3292 "parser.y"
{(yyval.node) = mknode2(&node_bitand, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3284 "parser.y"
+#line 3293 "parser.y"
{(yyval.node) = mknode2(&node_bitxor, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3285 "parser.y"
+#line 3294 "parser.y"
{(yyval.node) = mknode2(&node_bitor, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3286 "parser.y"
+#line 3295 "parser.y"
{(yyval.node) = mknode2(&node_shr, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3287 "parser.y"
+#line 3296 "parser.y"
{(yyval.node) = mknode2(&node_ushr, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3288 "parser.y"
+#line 3297 "parser.y"
{(yyval.node) = mknode2(&node_shl, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3289 "parser.y"
+#line 3298 "parser.y"
{(yyval.node) = mknode2(&node_div, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3290 "parser.y"
+#line 3299 "parser.y"
{(yyval.node) = mknode2(&node_mod, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3291 "parser.y"
+#line 3300 "parser.y"
{(yyval.node) = mknode2(&node_plus, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3292 "parser.y"
+#line 3301 "parser.y"
{(yyval.node) = mknode2(&node_minus, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3293 "parser.y"
+#line 3302 "parser.y"
{(yyval.node) = mknode2(&node_multiply, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3294 "parser.y"
+#line 3303 "parser.y"
{(yyval.node) = mknode2(&node_in, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3295 "parser.y"
+#line 3304 "parser.y"
{(yyval.node) = mknode2(&node_as, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3296 "parser.y"
+#line 3305 "parser.y"
{(yyval.node) = mknode2(&node_instanceof, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3297 "parser.y"
+#line 3306 "parser.y"
{(yyval.node) = mknode2(&node_is, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3298 "parser.y"
+#line 3307 "parser.y"
{(yyval.node) = mknode1(&node_typeof, (yyvsp[(3) - (4)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3299 "parser.y"
+#line 3308 "parser.y"
{(yyval.node) = mknode1(&node_void, (yyvsp[(2) - (2)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3300 "parser.y"
+#line 3309 "parser.y"
{ (yyval.node) = mkconstnode(constant_new_undefined());}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3301 "parser.y"
+#line 3310 "parser.y"
{ (yyval.node)=(yyvsp[(2) - (3)].node);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3302 "parser.y"
+#line 3311 "parser.y"
{(yyval.node) = mknode1(&node_neg, (yyvsp[(2) - (2)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3303 "parser.y"
+#line 3312 "parser.y"
{(yyval.node) = mknode2(&node_arraylookup, (yyvsp[(1) - (4)].node),(yyvsp[(3) - (4)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3304 "parser.y"
+#line 3313 "parser.y"
{(yyval.node) = mknode2(&node_muleq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3305 "parser.y"
+#line 3314 "parser.y"
{(yyval.node) = mknode2(&node_modeq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3306 "parser.y"
+#line 3315 "parser.y"
{(yyval.node) = mknode2(&node_shleq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3307 "parser.y"
+#line 3316 "parser.y"
{(yyval.node) = mknode2(&node_shreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3308 "parser.y"
+#line 3317 "parser.y"
{(yyval.node) = mknode2(&node_ushreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3309 "parser.y"
+#line 3318 "parser.y"
{ (yyval.node) = mknode2(&node_diveq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3310 "parser.y"
+#line 3319 "parser.y"
{ (yyval.node) = mknode2(&node_bitoreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3311 "parser.y"
+#line 3320 "parser.y"
{ (yyval.node) = mknode2(&node_bitxoreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3312 "parser.y"
+#line 3321 "parser.y"
{ (yyval.node) = mknode2(&node_bitandeq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3313 "parser.y"
+#line 3322 "parser.y"
{ (yyval.node) = mknode2(&node_pluseq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3314 "parser.y"
+#line 3323 "parser.y"
{ (yyval.node) = mknode2(&node_minuseq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3315 "parser.y"
+#line 3324 "parser.y"
{ (yyval.node) = mknode2(&node_assign, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3316 "parser.y"
+#line 3325 "parser.y"
{ (yyval.node) = mknode3(&node_tenary, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3318 "parser.y"
+#line 3327 "parser.y"
{ (yyval.node) = mknode1(&node_rplusplus, (yyvsp[(1) - (2)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3319 "parser.y"
+#line 3328 "parser.y"
{ (yyval.node) = mknode1(&node_rminusminus, (yyvsp[(1) - (2)].node));}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3320 "parser.y"
+#line 3329 "parser.y"
{(yyval.node) = mknode1(&node_lplusplus, (yyvsp[(2) - (2)].node)); }
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3321 "parser.y"
+#line 3330 "parser.y"
{(yyval.node) = mknode1(&node_lminusminus, (yyvsp[(2) - (2)].node)); }
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3324 "parser.y"
+#line 3333 "parser.y"
{ if(!state->cls->info)
syntaxerror("super keyword not allowed outside a class");
classinfo_t*t = state->cls->info->superclass;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3338 "parser.y"
+#line 3347 "parser.y"
{
typedcode_t v;
multiname_t m = {MULTINAMEA, 0, &nopackage_namespace_set, (yyvsp[(2) - (2)].id)};
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3346 "parser.y"
+#line 3355 "parser.y"
{PASS12 new_state();state->xmlfilter=1;}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3346 "parser.y"
+#line 3355 "parser.y"
{
PASS1 old_state();
PASS2
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3400 "parser.y"
+#line 3409 "parser.y"
{(yyval.id)=(yyvsp[(1) - (1)].id);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3401 "parser.y"
+#line 3410 "parser.y"
{(yyval.id)="*";}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3402 "parser.y"
+#line 3411 "parser.y"
{(yyval.id)=(char*)(yyvsp[(1) - (1)].id);}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3404 "parser.y"
+#line 3413 "parser.y"
{(yyval.id)="*";}
}
break;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3412 "parser.y"
+#line 3421 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (5)].node));
typedcode_t w = node_read(resolve_identifier((yyvsp[(3) - (5)].id)));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3430 "parser.y"
+#line 3439 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (3)].node));
multiname_t m = {MULTINAME, 0, &nopackage_namespace_set, (yyvsp[(3) - (3)].id)};
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3437 "parser.y"
+#line 3446 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (5)].node));
typedcode_t w = node_read((yyvsp[(4) - (5)].node));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3448 "parser.y"
+#line 3457 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (4)].node));
multiname_t m = {MULTINAMEA, 0, &nopackage_namespace_set, (yyvsp[(4) - (4)].id)};
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3455 "parser.y"
+#line 3464 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (4)].node));
multiname_t m = {MULTINAMEA, 0, &nopackage_namespace_set, (yyvsp[(4) - (4)].id)};
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3462 "parser.y"
+#line 3471 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (6)].node));
typedcode_t w = node_read((yyvsp[(5) - (6)].node));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3472 "parser.y"
+#line 3481 "parser.y"
{
typedcode_t v = node_read((yyvsp[(1) - (6)].node));
typedcode_t w = node_read((yyvsp[(5) - (6)].node));
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3483 "parser.y"
+#line 3492 "parser.y"
{
typedcode_t v1 = node_read((yyvsp[(1) - (3)].node));
(yyval.value).c = v1.c;
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3661 "parser.y"
+#line 3670 "parser.y"
{
PASS1
/* Queue unresolved identifiers for checking against the parent
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3697 "parser.y"
+#line 3706 "parser.y"
{
PASS12
NEW(namespace_decl_t,n);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3704 "parser.y"
+#line 3713 "parser.y"
{
PASS12
NEW(namespace_decl_t,n);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3711 "parser.y"
+#line 3720 "parser.y"
{
PASS12
NEW(namespace_decl_t,n);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3718 "parser.y"
+#line 3727 "parser.y"
{
PASS12
trie_put(active_namespaces, (yyvsp[(2) - (2)].namespace_decl)->name, (void*)(yyvsp[(2) - (2)].namespace_decl)->url);
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3741 "parser.y"
+#line 3750 "parser.y"
{
as3_warning("default xml namespaces not supported yet");
}
if(as3_pass==2) {
/* Line 1464 of skeleton.m4 */
-#line 3745 "parser.y"
+#line 3754 "parser.y"
{
PASS12
const char*url = (yyvsp[(3) - (3)].classinfo)->name;
/* Line 1464 of skeleton.m4 */
-#line 8756 "parser.tab.c"
+#line 8765 "parser.tab.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
if(!state->method)
syntaxerror("internal error: skewed tokencount");
function_initvars(state->method, 0, 0, 0, 1);
- global->init = abc_initscript(global->file);
+ global->init = 0;
}
}
if(as3_pass==2) {
dict_del(global->file2token2info, current_filename);
code_t*header = method_header(state->method);
- code_t*c = wrap_function(header, 0, global->init->method->body->code);
- global->init->method->body->code = abc_returnvoid(c);
- free(state->method);state->method=0;
+ //if(global->init->method->body->code || global->init->traits) {
+ if(global->init) {
+ code_t*c = wrap_function(header, 0, global->init->method->body->code);
+ global->init->method->body->code = abc_returnvoid(c);
+ free(state->method);state->method=0;
+ }
}
//free(state->package);state->package=0; // used in registry
multiname_t mname = {QNAME, &mname_ns, 0, name};
f = abc_method_new(global->file, type2, 1);
+ if(!global->init) global->init = abc_initscript(global->file);
trait_t*t = trait_new_method(&global->init->traits, multiname_clone(&mname), f);
//abc_code_t*c = global->init->method->body->code;
}
/* ------------ package init code ------------------- */
PACKAGE_INITCODE: CODE_STATEMENT {
- code_t**cc = &global->init->method->body->code;
- *cc = code_append(*cc, $1);
+ if($1) {
+ if(!global->init)
+ global->init = abc_initscript(global->file);
+ code_t**cc = &global->init->method->body->code;
+ *cc = code_append(*cc, $1);
+ }
}
/* ------------ conditional compilation ------------- */
code_t**code=0;
if(!state->cls) {
// global variable
+ if(!global->init) global->init = abc_initscript(global->file);
ns.name = state->package;
traits = &global->init->traits;
code = &global->init->method->body->code;
typedef struct _pdf_doc_internal
{
- int config_bitmap_optimizing;
- int config_full_bitmap_optimizing;
+ char config_bitmap_optimizing;
+ char config_full_bitmap_optimizing;
+ char config_print;
parameterlist_t parameters;
int protect;
int nocopy;
+ int noprint;
PDFDoc*doc;
Object docinfo;
pdf_doc_internal_t*pi = (pdf_doc_internal_t*)page->parent->internal;
gfxsource_internal_t*i = (gfxsource_internal_t*)pi->parent->internal;
- if(pi->nocopy) {
- msg("<fatal> PDF disallows copying");
- exit(0);
- }
+ if(!pi->config_print && pi->nocopy) {msg("<fatal> PDF disallows copying");exit(0);}
+ if(pi->config_print && pi->noprint) {msg("<fatal> PDF disallows printing");exit(0);}
CommonOutputDev*outputDev = 0;
if(pi->config_full_bitmap_optimizing) {
}
outputDev->setDevice(dev);
- pi->doc->displayPage((OutputDev*)outputDev, page->nr, zoom*multiply, zoom*multiply, /*rotate*/0, true, true, /*doLinks*/(int)1);
+ pi->doc->displayPage((OutputDev*)outputDev, page->nr, zoom*multiply, zoom*multiply, /*rotate*/0, true, true, pi->config_print);
pi->doc->processLinks((OutputDev*)outputDev, page->nr);
outputDev->finishPage();
outputDev->setDevice(0);
i->config_bitmap_optimizing = atoi(value);
} else if(!strcmp(name, "bitmapfonts") || !strcmp(name, "bitmap")) {
i->config_full_bitmap_optimizing = atoi(value);
+ } else if(!strcmp(name, "asprint")) {
+ i->config_print = 1;
} else {
storeDeviceParameter(&i->parameters, name, value);
}
if(!i->doc->okToCopy()) {
i->nocopy = 1;
}
+ if(!i->doc->okToPrint()) {
+ i->noprint = 1;
+ }
if(!i->doc->okToChange() || !i->doc->okToAddNotes())
i->protect = 1;
}
memset(i->pages,0,sizeof(pdf_page_info_t)*pdf_doc->num_pages);
for(t=1;t<=pdf_doc->num_pages;t++) {
if(!global_page_range || is_in_range(t, global_page_range)) {
- i->doc->displayPage((OutputDev*)i->info, t, zoom, zoom, /*rotate*/0, /*usemediabox*/true, /*crop*/true, /*doLinks*/(int)1);
+ i->doc->displayPage((OutputDev*)i->info, t, zoom, zoom, /*rotate*/0, /*usemediabox*/true, /*crop*/true, i->config_print);
i->doc->processLinks((OutputDev*)i->info, t);
i->pages[t-1].xMin = i->info->x1;
i->pages[t-1].yMin = i->info->y1;
${name}/lib/as3/parser.h \
${name}/lib/as3/common.h \
${name}/lib/as3/common.c \
-${name}/lib/as3/ast.h \
-${name}/lib/as3/ast.c \
-${name}/lib/as3/tokenizer.h \
${name}/lib/as3/tokenizer.yy.c \
+${name}/lib/as3/tokenizer.h \
+${name}/lib/as3/expr.h \
+${name}/lib/as3/expr.c \
${name}/lib/as3/parser.tab.c \
${name}/lib/as3/parser.tab.h \
+${name}/lib/as3/initcode.c \
+${name}/lib/as3/initcode.h \
${name}/lib/as3/scripts.c \
${name}/lib/as3/scripts.h \
${name}/lib/action/action.h \