[Scummvm-git-logs] scummvm master -> 0c0863ce42a387766739f164fece8ae786027066
rvanlaar
noreply at scummvm.org
Wed Sep 14 19:51:14 UTC 2022
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
0c0863ce42 DIRECTOR: LINGO: Add floats and ints to proparrays
Commit: 0c0863ce42a387766739f164fece8ae786027066
https://github.com/scummvm/scummvm/commit/0c0863ce42a387766739f164fece8ae786027066
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2022-09-14T21:50:53+02:00
Commit Message:
DIRECTOR: LINGO: Add floats and ints to proparrays
Implement the use of integers and floats as keys in property arrays.
Property arrays in lingo use the following syntax: [#a: "text"].
They are better known as HashMaps in CPP.
It resolves a bug in Star Trek Omnipedia which uses integers for keys.
- Includes lingo tests.
Changed paths:
engines/director/lingo/lingo-gr.cpp
engines/director/lingo/lingo-gr.h
engines/director/lingo/lingo-gr.y
engines/director/lingo/tests/lists.lingo
diff --git a/engines/director/lingo/lingo-gr.cpp b/engines/director/lingo/lingo-gr.cpp
index 8a9afa2efba..8177255d9c8 100644
--- a/engines/director/lingo/lingo-gr.cpp
+++ b/engines/director/lingo/lingo-gr.cpp
@@ -1,4 +1,4 @@
-/* A Bison parser, made by GNU Bison 3.7.6. */
+/* A Bison parser, made by GNU Bison 3.8.2. */
/* Bison implementation for Yacc-like parsers in C
@@ -46,10 +46,10 @@
USER NAME SPACE" below. */
/* Identify Bison output, and Bison version. */
-#define YYBISON 30706
+#define YYBISON 30802
/* Bison version string. */
-#define YYBISON_VERSION "3.7.6"
+#define YYBISON_VERSION "3.8.2"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
@@ -67,7 +67,7 @@
/* First part of user prologue. */
-#line 54 "engines/director/lingo/lingo-gr.y"
+#line 53 "engines/director/lingo/lingo-gr.y"
#define FORBIDDEN_SYMBOL_ALLOW_ALL
@@ -477,12 +477,18 @@ typedef int yy_state_fast_t;
# define YY_USE(E) /* empty */
#endif
-#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
/* Suppress an incorrect diagnostic about yylval being uninitialized. */
-# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
+#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
+# if __GNUC__ * 100 + __GNUC_MINOR__ < 407
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
+ _Pragma ("GCC diagnostic push") \
+ _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
+# else
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
_Pragma ("GCC diagnostic push") \
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
_Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
+# endif
# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
_Pragma ("GCC diagnostic pop")
#else
@@ -641,16 +647,16 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 191
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 4428
+#define YYLAST 4503
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 102
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 65
/* YYNRULES -- Number of rules. */
-#define YYNRULES 326
+#define YYNRULES 328
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 610
+#define YYNSTATES 618
/* YYMAXUTOK -- Last valid token kind. */
#define YYMAXUTOK 342
@@ -705,42 +711,42 @@ static const yytype_int8 yytranslate[] =
};
#if YYDEBUG
- /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
+/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_int16 yyrline[] =
{
- 0, 201, 201, 203, 209, 216, 217, 218, 219, 220,
- 221, 250, 254, 256, 258, 259, 262, 268, 275, 276,
- 277, 282, 286, 290, 291, 292, 299, 300, 301, 302,
- 303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
- 313, 314, 315, 316, 317, 318, 319, 320, 321, 322,
- 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
- 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
- 343, 344, 345, 346, 347, 348, 349, 350, 351, 354,
- 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
- 365, 366, 367, 368, 369, 370, 371, 372, 375, 376,
- 377, 380, 384, 394, 395, 398, 399, 400, 401, 402,
- 403, 406, 407, 408, 411, 412, 413, 414, 415, 416,
- 417, 418, 423, 424, 425, 426, 427, 428, 431, 434,
- 439, 443, 449, 454, 457, 462, 468, 468, 474, 479,
- 485, 491, 497, 505, 506, 507, 508, 511, 511, 513,
- 514, 515, 518, 522, 526, 532, 536, 540, 544, 545,
- 547, 549, 551, 553, 557, 561, 565, 567, 568, 572,
- 578, 585, 586, 589, 590, 594, 600, 607, 608, 614,
- 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
- 625, 626, 629, 631, 632, 635, 636, 639, 640, 641,
- 643, 645, 647, 649, 651, 653, 655, 657, 660, 661,
- 662, 663, 666, 667, 670, 675, 678, 683, 689, 690,
- 691, 692, 693, 696, 697, 698, 699, 700, 703, 705,
- 706, 707, 708, 709, 710, 711, 712, 713, 714, 718,
- 719, 720, 721, 722, 725, 725, 727, 728, 731, 732,
- 733, 734, 735, 738, 739, 740, 743, 747, 752, 753,
- 754, 757, 758, 761, 762, 766, 767, 768, 769, 770,
- 771, 772, 773, 774, 775, 776, 777, 778, 779, 780,
- 781, 782, 783, 784, 791, 792, 793, 794, 795, 796,
- 797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
- 807, 808, 809, 812, 813, 814, 815, 816, 817, 818,
- 819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
- 829, 832, 833, 836, 837, 840, 844
+ 0, 200, 200, 202, 208, 215, 216, 217, 218, 219,
+ 220, 249, 253, 255, 257, 258, 261, 267, 274, 275,
+ 276, 281, 285, 289, 290, 291, 298, 299, 300, 301,
+ 302, 303, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 374, 375,
+ 376, 379, 383, 393, 394, 397, 398, 399, 400, 401,
+ 402, 405, 406, 407, 410, 411, 412, 413, 414, 415,
+ 416, 417, 422, 423, 424, 425, 426, 427, 430, 433,
+ 438, 442, 448, 453, 456, 461, 467, 467, 473, 478,
+ 484, 490, 496, 504, 505, 506, 507, 510, 510, 512,
+ 513, 514, 517, 521, 525, 531, 535, 539, 543, 544,
+ 546, 548, 550, 552, 556, 560, 564, 566, 567, 571,
+ 577, 584, 585, 588, 589, 593, 599, 606, 607, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 628, 630, 631, 634, 635, 638, 639, 640,
+ 642, 644, 646, 648, 650, 652, 654, 656, 659, 660,
+ 661, 662, 665, 666, 669, 674, 677, 682, 688, 689,
+ 690, 691, 692, 695, 696, 697, 698, 699, 702, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 717,
+ 718, 719, 720, 721, 724, 724, 726, 727, 730, 731,
+ 732, 733, 734, 737, 738, 739, 742, 746, 751, 752,
+ 753, 754, 755, 758, 759, 762, 763, 767, 768, 769,
+ 770, 771, 772, 773, 774, 775, 776, 777, 778, 779,
+ 780, 781, 782, 783, 784, 785, 792, 793, 794, 795,
+ 796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
+ 806, 807, 808, 809, 810, 813, 814, 815, 816, 817,
+ 818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
+ 828, 829, 830, 833, 834, 837, 838, 841, 845
};
#endif
@@ -790,26 +796,7 @@ yysymbol_name (yysymbol_kind_t yysymbol)
}
#endif
-#ifdef YYPRINT
-/* YYTOKNUM[NUM] -- (External) token number corresponding to the
- (internal) symbol number NUM (which must be that of a token). */
-static const yytype_int16 yytoknum[] =
-{
- 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
- 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
- 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
- 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
- 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
- 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
- 335, 336, 337, 338, 339, 340, 341, 342, 60, 62,
- 38, 43, 45, 42, 47, 10, 44, 40, 41, 91,
- 93, 58
-};
-#endif
-
-#define YYPACT_NINF (-507)
+#define YYPACT_NINF (-536)
#define yypact_value_is_default(Yyn) \
((Yyn) == YYPACT_NINF)
@@ -819,76 +806,77 @@ static const yytype_int16 yytoknum[] =
#define yytable_value_is_error(Yyn) \
0
- /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
- STATE-NUM. */
+/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
+ STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 2904, -507, 3468, -507, -507, -507, -507, 34, -507, -14,
- -507, 3468, 1852, 34, 1948, -507, -507, 3468, -507, 6,
- -507, -507, 2044, 112, 3547, -507, -61, -507, -507, 3468,
- 2044, 1852, 3468, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, -507, -507, -507, 1948, 3468, 3468, -47,
- 3783, -507, 75, 2904, -507, -507, -507, -507, 2044, -507,
- -507, -507, -507, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, -64, -507, -507, 2140, 2140, 1948, 1948,
- 1948, 1948, 27, 22, 30, -507, -507, 43, 23, -507,
- -507, -507, -507, 2140, 2140, 2140, 2140, 1948, 1948, 2236,
- 1948, 1948, 1948, 1948, 3626, 1948, 2236, 2236, 1372, 794,
- 46, 51, 56, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, 892, -507, 62, 1948, 3901, 3468, 64,
- 85, 988, 3468, 1948, 3468, -507, -507, -5, -507, -507,
- 87, 99, 1084, 100, 108, 109, 693, 116, 3468, -507,
- -507, -507, -507, 118, 1180, -507, 3468, 1468, -507, -507,
- -507, 364, 387, 440, 515, 67, -507, -507, -507, 3468,
- -507, -507, 1276, 4202, -507, -33, 10, 15, 19, 48,
- 67, 138, 162, 4189, -507, -507, -507, 3921, 113, 114,
- 117, -48, -12, -507, 4202, 119, 120, 1564, -507, -507,
- 194, 1948, 1948, 1948, 1948, 2620, 2620, 2812, 1948, 2716,
- 2716, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, -507,
- -507, 4011, -507, -507, 3954, 2983, 1948, 1948, 1948, 1948,
- 1948, 126, -507, -507, 3705, 3705, 3705, 7, 4024, 196,
- -507, -507, 1948, 3, -507, 1948, -507, -507, -507, 3783,
- 3062, -507, 127, -507, -507, -507, 3934, 2236, 1948, 2236,
- 1948, 2236, 1948, 2236, 1948, -507, -507, -507, -507, 24,
- -507, 199, 4255, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, 2332, 2428, 2236, 2236, 1660, -507, 1948,
- 1948, -507, 1948, 3389, -507, -507, 1948, -507, 134, 1948,
- 81, 81, 81, 81, 4281, 4281, -507, 71, 81, 81,
- 81, 81, 71, -31, -31, -507, -507, 134, 1948, 1948,
- 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948,
- 1948, 1948, 1948, 1948, 1948, 1948, -507, 3299, 215, 3062,
- 27, -507, 137, -507, 139, 161, 1948, 1948, 3062, 2524,
- 4037, 3468, 3468, -507, -507, -507, 3, -507, 4091, -507,
- -507, -507, 171, 3062, -507, 3062, 1756, -507, 568, -507,
- 598, -507, 3835, -507, 3848, -507, -507, 2236, 1948, 24,
- 24, 24, 24, 2236, 2236, 24, 2236, 2236, -507, -507,
- -507, -507, -507, -507, -507, 134, 4202, 4202, 4202, 113,
- 114, 158, -507, 4202, 1948, 160, 4202, -507, 81, 81,
- 81, 81, 4281, 4281, -507, 71, 81, 81, 81, 81,
- 71, -31, -31, -507, -507, 134, -507, -507, -2, 3299,
- -507, 3141, -507, -507, -507, -507, 4104, 12, 182, 1948,
- 1948, 1948, 1948, -507, -507, -507, 73, 3468, -507, -507,
- 173, -507, 260, -507, 134, 2236, 2236, 2236, 2236, -507,
- 4202, 2236, 2236, 2236, 2236, -507, 245, 204, -507, -507,
- 177, -507, -507, 3220, 183, -507, -507, 3299, -507, 3062,
- 243, 1948, 185, -507, 4268, -507, 3868, 4268, 4268, -507,
- 186, -507, 3468, 184, -507, -507, -507, -507, -507, -507,
- -507, -507, 216, 2236, -507, -507, 3299, -507, -507, 203,
- 206, 1948, 4117, -507, 1948, 1948, 1948, 1948, 1948, 1948,
- 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948,
- 218, 3062, 83, -507, 2236, 203, -507, 198, 4171, 3062,
- 95, 95, 95, 4334, 4334, -507, 107, 95, 95, 95,
- 95, 107, -26, -26, -507, -507, 1948, -507, -507, -507,
- -507, -507, 3062, 210, 4268, 212, 205, 224, -507, -507
+ 2884, -536, 3450, -536, -536, -536, -536, 33, -536, -14,
+ -536, 3450, 1832, 33, 1928, -536, -536, 3450, -536, -8,
+ -536, -536, 2024, 22, 3529, -536, -67, -536, -536, 3450,
+ 2024, 1832, 3450, -536, -536, -536, -536, -536, -536, -536,
+ -536, -536, -536, -536, -536, -536, -536, -536, -536, -536,
+ -536, -536, -536, -536, -536, -536, -536, -536, -536, -536,
+ -536, -536, -536, -536, -536, -536, 1928, 3450, 3450, -59,
+ 3765, -536, 61, 2884, -536, -536, -536, -536, 2024, -536,
+ -536, -536, -536, -536, -536, -536, -536, -536, -536, -536,
+ -536, -536, -536, -536, -536, -536, -536, -536, -536, -536,
+ -536, -536, -536, -536, -536, -536, -536, -536, -536, -536,
+ -536, -536, -536, 54, -536, -536, 2120, 2120, 1928, 1928,
+ 1928, 1928, 64, -31, -26, -536, -536, -20, -10, -536,
+ -536, -536, -536, 2120, 2120, 2120, 2120, 1928, 1928, 2216,
+ 1928, 1928, 1928, 1928, 3608, 1928, 2216, 2216, 1352, 774,
+ 28, 43, 45, -536, -536, -536, -536, -536, -536, -536,
+ -536, -536, -536, 872, -536, 67, 1928, 4004, 3450, 81,
+ 87, 968, 3450, 1928, 3450, -536, -536, -5, -536, -536,
+ 89, 95, 1064, 98, 100, 101, 3989, 103, 3450, -536,
+ -536, -536, -536, 104, 1160, -536, 3450, 1448, -536, -536,
+ -536, 577, 599, 668, 3817, 162, -536, -536, -536, 3450,
+ -536, -536, 1256, 4328, -536, -21, -13, -12, 10, 31,
+ 162, 63, 102, 4315, -536, -536, -536, 4017, 58, 105,
+ 106, 115, 120, -30, 56, -536, 4328, 122, 107, 1544,
+ -536, -536, 178, 1928, 1928, 1928, 1928, 2600, 2600, 2792,
+ 1928, 2696, 2696, 1928, 1928, 1928, 1928, 1928, 1928, 1928,
+ 1928, -536, -536, 4100, -536, -536, 4087, 2963, 1928, 1928,
+ 1928, 1928, 1928, 129, -536, -536, 3687, 3687, 3687, 8,
+ 4155, 197, -536, -536, 1928, 6, -536, 1928, -536, -536,
+ -536, 3765, 3042, -536, 131, -536, -536, -536, 4074, 2216,
+ 1928, 2216, 1928, 2216, 1928, 2216, 1928, -536, -536, -536,
+ -536, 4, -536, 201, 4343, -536, -536, -536, -536, -536,
+ -536, -536, -536, -536, -536, 2312, 2408, 2216, 2216, 1640,
+ -536, 1928, 1928, 1928, 1928, -536, 1928, 3371, -536, -536,
+ 1928, -536, 133, 1928, 30, 30, 30, 30, 121, 121,
+ -536, 17, 30, 30, 30, 30, 17, 2, 2, -536,
+ -536, 133, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928,
+ 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928,
+ -536, 3279, 214, 3042, 64, -536, 137, -536, 139, 140,
+ 1928, 1928, 3042, 2504, 4168, 3450, 3450, -536, -536, -536,
+ 6, -536, 4181, -536, -536, -536, 150, 3042, -536, 3042,
+ 1736, -536, 3830, -536, 3850, -536, 3903, -536, 3923, -536,
+ -536, 2216, 1928, 4, 4, 4, 4, 2216, 2216, 4,
+ 2216, 2216, -536, -536, -536, -536, -536, -536, -536, 133,
+ 4328, 4328, 4328, 4328, 4328, 58, 105, 106, 115, 157,
+ -536, 4328, 1928, 161, 4328, -536, 30, 30, 30, 30,
+ 121, 121, -536, 17, 30, 30, 30, 30, 17, 2,
+ 2, -536, -536, 133, -536, -536, 3, 3279, -536, 3121,
+ -536, -536, -536, -536, 4235, 492, 175, 1928, 1928, 1928,
+ 1928, -536, -536, -536, 73, 3450, -536, -536, 166, -536,
+ 260, -536, 133, 2216, 2216, 2216, 2216, -536, 4328, 2216,
+ 2216, 2216, 2216, -536, 242, 205, -536, -536, 179, -536,
+ -536, 3200, 176, -536, -536, 3279, -536, 3042, 245, 1928,
+ 181, -536, 4396, -536, 3936, 4396, 4396, -536, 185, -536,
+ 3450, 184, -536, -536, -536, -536, -536, -536, -536, -536,
+ 213, 2216, -536, -536, 3279, -536, -536, 200, 203, 1928,
+ 4248, -536, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928,
+ 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 223, 3042,
+ 76, -536, 2216, 200, -536, 202, 4261, 3042, 53, 53,
+ 53, 4409, 4409, -536, 35, 53, 53, 53, 53, 35,
+ 108, 108, -536, -536, 1928, -536, -536, -536, -536, -536,
+ 3042, 210, 4396, 216, 204, 207, -536, -536
};
- /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
- Performed when YYTABLE does not specify something else to do. Zero
- means the default is an error. */
+/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
+ Performed when YYTABLE does not specify something else to do. Zero
+ means the default is an error. */
static const yytype_int16 yydefact[] =
{
0, 26, 23, 33, 40, 64, 74, 38, 39, 0,
@@ -905,165 +893,164 @@ static const yytype_int16 yydefact[] =
90, 89, 65, 0, 79, 24, 0, 0, 0, 0,
0, 0, 0, 0, 0, 124, 101, 0, 99, 179,
180, 182, 181, 33, 40, 64, 74, 41, 56, 58,
- 34, 46, 49, 77, 70, 68, 0, 0, 0, 323,
- 192, 0, 0, 263, 187, 188, 189, 190, 221, 222,
- 191, 264, 265, 136, 266, 0, 0, 0, 98, 0,
+ 34, 46, 49, 77, 70, 68, 0, 0, 0, 325,
+ 192, 0, 0, 265, 187, 188, 189, 190, 221, 222,
+ 191, 266, 267, 136, 268, 0, 0, 0, 98, 0,
0, 136, 0, 0, 70, 192, 195, 0, 196, 166,
0, 0, 136, 0, 0, 0, 0, 0, 98, 104,
127, 1, 4, 0, 136, 10, 0, 0, 198, 214,
197, 0, 0, 0, 0, 0, 125, 123, 149, 100,
212, 213, 138, 139, 183, 27, 28, 29, 51, 66,
- 48, 59, 218, 0, 261, 262, 133, 0, 182, 181,
- 0, 192, 0, 256, 325, 0, 324, 0, 116, 117,
- 60, 0, 0, 0, 0, 31, 61, 55, 0, 36,
- 69, 0, 0, 0, 0, 0, 0, 0, 137, 129,
- 284, 136, 285, 126, 0, 0, 0, 0, 0, 0,
- 0, 0, 122, 115, 45, 30, 32, 0, 0, 246,
- 147, 148, 0, 14, 120, 75, 118, 119, 151, 0,
- 167, 150, 0, 114, 25, 215, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 208, 210, 211, 209, 0,
- 102, 60, 142, 229, 230, 231, 232, 233, 234, 235,
- 236, 237, 238, 0, 0, 0, 0, 0, 186, 0,
- 0, 254, 0, 0, 255, 253, 0, 184, 136, 0,
- 276, 277, 274, 275, 278, 279, 271, 281, 282, 283,
- 273, 272, 280, 267, 268, 269, 270, 136, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 137, 131, 173, 152, 167,
- 70, 193, 0, 194, 0, 0, 0, 0, 167, 0,
- 0, 23, 0, 18, 19, 12, 15, 16, 0, 164,
- 171, 172, 0, 168, 169, 167, 0, 199, 0, 203,
- 0, 205, 0, 201, 0, 244, 245, 0, 0, 35,
- 47, 50, 78, 52, 53, 54, 67, 68, 220, 224,
- 223, 219, 321, 322, 134, 136, 260, 258, 259, 0,
- 0, 0, 257, 326, 137, 0, 141, 130, 295, 296,
- 293, 294, 297, 298, 290, 300, 301, 302, 292, 291,
- 299, 286, 287, 288, 289, 136, 177, 178, 158, 174,
- 175, 0, 11, 143, 144, 145, 0, 0, 0, 52,
- 53, 67, 68, 247, 248, 146, 0, 98, 17, 121,
- 0, 170, 22, 216, 136, 0, 0, 0, 0, 207,
- 140, 0, 0, 0, 0, 228, 0, 0, 226, 227,
- 0, 185, 132, 0, 0, 153, 176, 173, 154, 167,
- 0, 0, 0, 303, 249, 304, 0, 251, 252, 20,
- 0, 165, 23, 0, 200, 204, 206, 202, 239, 241,
- 242, 240, 0, 0, 243, 135, 173, 156, 159, 158,
- 0, 0, 0, 160, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 167, 0, 217, 0, 158, 155, 0, 0, 167,
- 313, 314, 312, 315, 316, 309, 318, 319, 320, 311,
- 310, 317, 305, 306, 307, 308, 0, 13, 21, 225,
- 157, 163, 167, 0, 250, 0, 0, 0, 161, 162
+ 48, 59, 218, 0, 263, 264, 133, 0, 179, 180,
+ 182, 181, 0, 192, 0, 256, 327, 0, 326, 0,
+ 116, 117, 60, 0, 0, 0, 0, 31, 61, 55,
+ 0, 36, 69, 0, 0, 0, 0, 0, 0, 0,
+ 137, 129, 286, 136, 287, 126, 0, 0, 0, 0,
+ 0, 0, 0, 0, 122, 115, 45, 30, 32, 0,
+ 0, 246, 147, 148, 0, 14, 120, 75, 118, 119,
+ 151, 0, 167, 150, 0, 114, 25, 215, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 208, 210, 211,
+ 209, 0, 102, 60, 142, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 0, 0, 0, 0, 0,
+ 186, 0, 0, 0, 0, 254, 0, 0, 255, 253,
+ 0, 184, 136, 0, 278, 279, 276, 277, 280, 281,
+ 273, 283, 284, 285, 275, 274, 282, 269, 270, 271,
+ 272, 136, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 137,
+ 131, 173, 152, 167, 70, 193, 0, 194, 0, 0,
+ 0, 0, 167, 0, 0, 23, 0, 18, 19, 12,
+ 15, 16, 0, 164, 171, 172, 0, 168, 169, 167,
+ 0, 199, 0, 203, 0, 205, 0, 201, 0, 244,
+ 245, 0, 0, 35, 47, 50, 78, 52, 53, 54,
+ 67, 68, 220, 224, 223, 219, 323, 324, 134, 136,
+ 261, 262, 260, 258, 259, 0, 0, 0, 0, 0,
+ 257, 328, 137, 0, 141, 130, 297, 298, 295, 296,
+ 299, 300, 292, 302, 303, 304, 294, 293, 301, 288,
+ 289, 290, 291, 136, 177, 178, 158, 174, 175, 0,
+ 11, 143, 144, 145, 0, 0, 0, 52, 53, 67,
+ 68, 247, 248, 146, 0, 98, 17, 121, 0, 170,
+ 22, 216, 136, 0, 0, 0, 0, 207, 140, 0,
+ 0, 0, 0, 228, 0, 0, 226, 227, 0, 185,
+ 132, 0, 0, 153, 176, 173, 154, 167, 0, 0,
+ 0, 305, 249, 306, 0, 251, 252, 20, 0, 165,
+ 23, 0, 200, 204, 206, 202, 239, 241, 242, 240,
+ 0, 0, 243, 135, 173, 156, 159, 158, 0, 0,
+ 0, 160, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 167,
+ 0, 217, 0, 158, 155, 0, 0, 167, 315, 316,
+ 314, 317, 318, 311, 320, 321, 322, 313, 312, 319,
+ 307, 308, 309, 310, 0, 13, 21, 225, 157, 163,
+ 167, 0, 250, 0, 0, 0, 161, 162
};
- /* YYPGOTO[NTERM-NUM]. */
+/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -507, -507, -507, 226, -507, -507, -507, -507, -507, -75,
- -507, -378, 0, 9, -27, -507, 1, -362, -66, -507,
- 49, -239, 291, -507, -507, -507, -507, -507, -506, -507,
- -507, -507, -369, -507, -78, -496, -507, -142, -42, -22,
- -83, -507, -4, -507, -507, -25, -507, 5, -176, -507,
- -507, -213, -507, -507, -507, -507, -1, -507, 201, -6,
- 129, -253, 157, -507, -230
+ -536, -536, -536, 230, -536, -536, -536, -536, -536, -96,
+ -536, -385, 0, 9, -27, -536, 1, -374, -58, -536,
+ 15, -245, 274, -536, -536, -536, -536, -536, -535, -536,
+ -536, -536, -379, -536, -97, -504, -536, -166, -129, -22,
+ -99, -536, -4, -536, -536, -17, -536, -11, -202, -536,
+ -536, -237, -536, -536, -536, -536, -23, -536, 173, -6,
+ 109, -140, -114, -536, -225
};
- /* YYDEFGOTO[NTERM-NUM]. */
+/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- 0, 72, 73, 74, 75, 76, 394, 395, 396, 397,
- 77, 113, 114, 150, 127, 128, 401, 80, 81, 82,
- 151, 259, 152, 83, 282, 84, 85, 86, 515, 87,
- 88, 89, 402, 403, 404, 468, 469, 470, 153, 154,
- 382, 177, 155, 309, 156, 198, 157, 428, 429, 158,
- 159, 417, 178, 483, 160, 232, 233, 161, 162, 234,
- 261, 524, 164, 235, 236
+ 0, 72, 73, 74, 75, 76, 398, 399, 400, 401,
+ 77, 113, 114, 150, 127, 128, 405, 80, 81, 82,
+ 151, 261, 152, 83, 284, 84, 85, 86, 523, 87,
+ 88, 89, 406, 407, 408, 476, 477, 478, 153, 154,
+ 386, 177, 155, 311, 156, 198, 157, 432, 433, 158,
+ 159, 421, 178, 491, 160, 234, 235, 161, 162, 236,
+ 263, 532, 164, 237, 238
};
- /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
- positive, shift that token. If negative, reduce the rule whose
- number is the opposite. If YYTABLE_NINF, syntax error. */
+/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
+ positive, shift that token. If negative, reduce the rule whose
+ number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 78, 79, 176, 123, 190, 185, 163, 338, 167, 165,
- 472, 115, 391, 486, 513, 467, 171, 124, 268, 478,
- 126, 549, 376, 559, 182, 163, 168, 520, 357, 280,
- 386, 195, 196, 175, 179, 313, 492, 169, 180, 281,
- 187, 126, 314, 576, 116, 117, 521, 415, 189, 237,
- 575, 387, 416, 332, 241, 242, 243, 244, 266, 267,
- 186, 268, 256, 257, 248, 269, 270, 568, 569, 600,
- 78, 170, 194, 78, 79, 191, 126, 188, 315, 181,
- 183, 125, 514, 317, 333, 316, 392, 319, 334, 118,
- 318, 119, 200, 120, 320, 121, 205, 435, 393, 445,
- 251, 252, 253, 254, 255, 256, 257, 467, 122, 200,
- 210, 211, 201, 202, 203, 204, 321, 206, 447, 209,
- 268, 260, 305, 322, 306, 207, 307, 193, 308, 260,
- 268, 212, 213, 248, 201, 202, 203, 204, 208, 223,
- 260, 271, 227, 237, 559, 465, 238, 560, 172, 173,
- 550, 239, 260, 222, 572, 467, 559, 263, 231, 272,
- 264, 292, 254, 255, 256, 257, 323, 278, 529, 196,
- 260, 253, 254, 255, 256, 257, 494, 126, 598, 196,
- 273, 277, 283, 279, 467, 565, 566, 567, 568, 569,
- 324, 296, 384, 385, 284, 286, 510, 126, 566, 567,
- 568, 569, 597, 287, 288, 294, 501, 502, 503, 504,
- 603, 291, 507, 293, 329, 330, 336, 331, 310, 335,
- 339, 379, 405, 399, 389, 418, 512, 526, 527, 528,
- 444, 471, 473, 605, 474, 340, 341, 342, 343, 344,
- 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
- 355, 356, 381, 381, 381, 533, 475, 490, 511, 332,
- 344, 345, 346, 348, 349, 78, 378, 522, 531, 532,
- 383, 383, 383, 542, 543, 545, 390, 551, 548, 398,
- 553, 571, 573, 175, 175, 175, 574, 514, 596, 78,
- 78, 577, 408, 601, 410, 606, 412, 607, 414, 192,
- 608, 580, 581, 582, 583, 584, 585, 586, 587, 588,
- 589, 590, 591, 592, 593, 594, 595, 199, 199, 609,
- 262, 488, 184, 436, 437, 491, 438, 516, 262, 431,
- 443, 544, 442, 446, 199, 199, 199, 199, 0, 262,
- 214, 312, 441, 604, 0, 0, 0, 224, 225, 0,
- 0, 262, 448, 449, 450, 451, 452, 453, 454, 455,
- 456, 457, 458, 459, 460, 461, 462, 463, 464, 262,
- 0, 0, 0, 0, 0, 0, 0, 78, 0, 78,
- 476, 477, 0, 0, 0, 0, 0, 0, 78, 0,
- 0, 0, 297, 0, 0, 0, 0, 0, 298, 0,
- 115, 487, 0, 78, 0, 78, 241, 242, 243, 244,
- 266, 267, 500, 268, 0, 299, 248, 269, 270, 0,
- 0, 300, 0, 0, 0, 0, 0, 0, 0, 241,
- 242, 243, 244, 266, 267, 0, 268, 0, 443, 248,
- 269, 270, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 251, 252, 253, 254, 255, 256, 257, 0,
- 530, 0, 0, 0, 0, 0, 0, 0, 301, 78,
- 0, 78, 518, 0, 302, 251, 252, 253, 254, 255,
- 256, 257, 241, 242, 243, 244, 266, 267, 0, 268,
- 0, 0, 248, 269, 270, 0, 126, 0, 407, 0,
- 409, 0, 411, 0, 413, 0, 0, 0, 0, 0,
- 0, 0, 0, 78, 547, 552, 0, 78, 0, 78,
- 0, 0, 0, 0, 430, 430, 432, 433, 251, 252,
- 253, 254, 255, 256, 257, 0, 0, 0, 0, 0,
- 0, 115, 0, 303, 0, 578, 78, 0, 0, 304,
- 0, 0, 0, 0, 0, 0, 0, 241, 242, 243,
- 244, 266, 267, 0, 268, 0, 0, 248, 269, 270,
- 0, 78, 0, 0, 0, 0, 0, 0, 0, 78,
+ 78, 79, 176, 123, 480, 185, 163, 475, 167, 165,
+ 494, 115, 190, 486, 342, 395, 171, 124, 380, 521,
+ 126, 557, 584, 169, 182, 163, 168, 419, 179, 282,
+ 500, 390, 420, 175, 262, 361, 189, 170, 180, 283,
+ 187, 126, 262, 116, 117, 181, 183, 315, 608, 264,
+ 583, 270, 391, 262, 316, 317, 319, 264, 172, 173,
+ 186, 191, 318, 320, 206, 262, 270, 239, 264, 207,
+ 78, 336, 194, 78, 79, 208, 126, 188, 321, 270,
+ 264, 125, 250, 262, 567, 322, 209, 522, 118, 396,
+ 119, 325, 120, 193, 121, 258, 259, 453, 264, 323,
+ 200, 397, 567, 475, 439, 568, 324, 122, 256, 257,
+ 258, 259, 201, 202, 203, 204, 455, 200, 210, 211,
+ 255, 256, 257, 258, 259, 239, 574, 575, 576, 577,
+ 326, 212, 213, 205, 201, 202, 203, 204, 240, 223,
+ 241, 273, 227, 573, 574, 575, 576, 577, 558, 195,
+ 196, 475, 337, 222, 473, 580, 338, 567, 233, 331,
+ 266, 294, 265, 243, 244, 245, 246, 280, 537, 196,
+ 270, 606, 196, 250, 271, 272, 274, 126, 388, 389,
+ 475, 279, 275, 281, 285, 502, 509, 510, 511, 512,
+ 286, 298, 515, 288, 518, 289, 290, 126, 293, 295,
+ 605, 576, 577, 340, 343, 296, 332, 333, 611, 253,
+ 254, 255, 256, 257, 258, 259, 334, 307, 312, 308,
+ 335, 309, 339, 310, 383, 393, 409, 422, 520, 452,
+ 479, 613, 481, 403, 482, 483, 498, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 385, 385, 385, 541, 336, 519,
+ 530, 539, 348, 349, 350, 352, 353, 78, 382, 540,
+ 550, 556, 387, 387, 387, 551, 561, 553, 394, 559,
+ 579, 402, 581, 582, 522, 175, 175, 175, 585, 199,
+ 199, 78, 78, 604, 412, 614, 414, 609, 416, 616,
+ 418, 615, 617, 192, 496, 184, 199, 199, 199, 199,
+ 499, 524, 214, 552, 450, 435, 0, 0, 0, 224,
+ 225, 314, 0, 0, 0, 440, 441, 442, 443, 0,
+ 444, 0, 0, 0, 451, 0, 0, 454, 0, 0,
+ 0, 0, 0, 0, 0, 0, 449, 0, 534, 535,
+ 536, 0, 0, 0, 0, 0, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 533, 533, 533, 533, 0, 0, 0,
+ 0, 78, 0, 78, 484, 485, 0, 0, 0, 0,
+ 0, 0, 78, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 115, 495, 0, 78, 0, 78,
+ 0, 0, 0, 0, 0, 0, 508, 0, 0, 0,
+ 0, 0, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 0, 0,
+ 0, 0, 0, 0, 0, 0, 451, 0, 533, 533,
+ 533, 533, 533, 533, 533, 533, 533, 533, 533, 533,
+ 533, 533, 533, 533, 612, 0, 0, 0, 538, 0,
+ 0, 0, 411, 0, 413, 0, 415, 78, 417, 78,
+ 526, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 533, 0, 0, 0, 0, 0, 0, 0, 434, 434,
+ 436, 437, 0, 0, 126, 0, 0, 528, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 484, 0, 0, 0, 0, 0, 495, 0, 0, 0,
- 0, 0, 78, 251, 252, 253, 254, 255, 256, 257,
- 241, 242, 243, 244, 266, 267, 0, 268, 499, 0,
- 248, 269, 270, 0, 505, 506, 496, 508, 509, 0,
- 0, 0, 0, 0, 0, 0, 525, 525, 525, 525,
- 241, 242, 243, 244, 266, 267, 0, 268, 0, 0,
- 248, 269, 270, 0, 0, 0, 251, 252, 253, 254,
- 255, 256, 257, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 523, 523, 523, 523, 0, 0, 251, 252, 253, 254,
- 255, 256, 257, 0, 0, 0, 534, 535, 536, 537,
- 0, 0, 538, 539, 540, 541, 0, 0, 0, 0,
- 0, 525, 525, 525, 525, 525, 525, 525, 525, 525,
- 525, 525, 525, 525, 525, 525, 525, 289, 0, 0,
- 0, 0, 0, 0, 0, 241, 242, 243, 244, 266,
- 267, 0, 268, 0, 505, 248, 269, 270, 0, 0,
- 0, 0, 0, 525, 0, 523, 523, 523, 523, 523,
- 523, 523, 523, 523, 523, 523, 523, 523, 523, 523,
- 523, 0, 0, 0, 0, 599, 0, 0, 0, 0,
- 0, 251, 252, 253, 254, 255, 256, 257, 290, 0,
- 0, 0, 0, 0, 0, 0, 0, 523, 129, 130,
- 1, 228, 229, 90, 133, 134, 135, 136, 91, 8,
+ 0, 78, 555, 560, 0, 78, 529, 78, 0, 0,
+ 0, 0, 0, 0, 243, 244, 245, 246, 268, 269,
+ 0, 270, 0, 0, 250, 271, 272, 0, 0, 115,
+ 0, 0, 0, 586, 78, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 492, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
+ 253, 254, 255, 256, 257, 258, 259, 78, 0, 0,
+ 0, 0, 0, 0, 507, 0, 0, 0, 0, 0,
+ 513, 514, 0, 516, 517, 299, 0, 0, 0, 0,
+ 78, 300, 0, 0, 0, 0, 0, 0, 0, 243,
+ 244, 245, 246, 268, 269, 0, 270, 301, 0, 250,
+ 271, 272, 0, 302, 0, 0, 0, 0, 0, 0,
+ 0, 243, 244, 245, 246, 268, 269, 0, 270, 0,
+ 0, 250, 271, 272, 0, 0, 0, 0, 0, 0,
+ 531, 531, 531, 531, 0, 253, 254, 255, 256, 257,
+ 258, 259, 0, 0, 0, 0, 542, 543, 544, 545,
+ 0, 0, 546, 547, 548, 549, 0, 253, 254, 255,
+ 256, 257, 258, 259, 0, 0, 303, 0, 0, 0,
+ 0, 0, 304, 0, 0, 0, 0, 0, 0, 0,
+ 243, 244, 245, 246, 268, 269, 0, 270, 0, 0,
+ 250, 271, 272, 0, 513, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 531, 531, 531, 531, 531,
+ 531, 531, 531, 531, 531, 531, 531, 531, 531, 531,
+ 531, 0, 0, 0, 0, 607, 253, 254, 255, 256,
+ 257, 258, 259, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 531, 228, 229,
+ 1, 230, 231, 90, 133, 134, 135, 136, 91, 8,
92, 93, 10, 94, 95, 96, 97, 15, 16, 98,
18, 99, 20, 21, 100, 101, 102, 103, 25, 0,
27, 28, 104, 105, 106, 107, 0, 0, 0, 0,
@@ -1072,55 +1059,55 @@ static const yytype_int16 yytable[] =
52, 53, 54, 55, 56, 57, 58, 59, 144, 61,
62, 145, 64, 65, 108, 109, 110, 111, 0, 0,
0, 112, 0, 0, 0, 146, 147, 0, 0, 0,
- 0, 166, 0, 149, 0, 230, 129, 130, 1, 131,
+ 0, 166, 0, 149, 0, 232, 129, 130, 1, 131,
132, 90, 133, 134, 135, 136, 91, 8, 92, 93,
10, 94, 95, 96, 97, 15, 16, 98, 18, 99,
- 240, 21, 100, 101, 102, 103, 25, 0, 27, 28,
- 104, 105, 106, 107, 241, 242, 243, 244, 245, 246,
- 139, 247, 37, 38, 248, 249, 250, 140, 42, 141,
+ 242, 21, 100, 101, 102, 103, 25, 0, 27, 28,
+ 104, 105, 106, 107, 243, 244, 245, 246, 247, 248,
+ 139, 249, 37, 38, 250, 251, 252, 140, 42, 141,
44, 142, 46, 143, 48, 49, 50, 51, 52, 53,
54, 55, 56, 57, 58, 59, 144, 61, 62, 145,
64, 65, 108, 109, 110, 111, 0, 0, 0, 112,
- 251, 252, 253, 254, 255, 256, 257, 0, 258, 166,
+ 253, 254, 255, 256, 257, 258, 259, 0, 260, 166,
0, 149, 129, 130, 1, 131, 132, 90, 133, 134,
135, 136, 91, 8, 92, 93, 10, 94, 95, 96,
- 97, 15, 274, 98, 18, 99, 20, 21, 100, 101,
+ 97, 15, 276, 98, 18, 99, 20, 21, 100, 101,
102, 103, 25, 0, 27, 28, 104, 105, 106, 107,
- 241, 242, 243, 244, 245, 246, 139, 247, 275, 276,
- 248, 249, 250, 140, 42, 141, 44, 142, 46, 143,
+ 243, 244, 245, 246, 247, 248, 139, 249, 277, 278,
+ 250, 251, 252, 140, 42, 141, 44, 142, 46, 143,
48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
58, 59, 144, 61, 62, 145, 64, 65, 108, 109,
- 110, 111, 0, 0, 0, 112, 251, 252, 253, 254,
- 255, 256, 257, 0, 258, 166, 0, 149, 129, 130,
+ 110, 111, 0, 0, 0, 112, 253, 254, 255, 256,
+ 257, 258, 259, 0, 260, 166, 0, 149, 129, 130,
1, 131, 132, 90, 133, 134, 135, 136, 91, 8,
92, 93, 10, 94, 95, 96, 97, 15, 16, 98,
18, 99, 20, 21, 100, 101, 102, 103, 25, 0,
- 285, 28, 104, 105, 106, 107, 241, 242, 243, 244,
- 245, 246, 139, 247, 37, 38, 248, 249, 250, 140,
+ 287, 28, 104, 105, 106, 107, 243, 244, 245, 246,
+ 247, 248, 139, 249, 37, 38, 250, 251, 252, 140,
42, 141, 44, 142, 46, 143, 48, 49, 50, 51,
52, 53, 54, 55, 56, 57, 58, 59, 144, 61,
62, 145, 64, 65, 108, 109, 110, 111, 0, 0,
- 0, 112, 251, 252, 253, 254, 255, 256, 257, 0,
- 258, 166, 0, 149, 129, 130, 1, 131, 132, 90,
+ 0, 112, 253, 254, 255, 256, 257, 258, 259, 0,
+ 260, 166, 0, 149, 129, 130, 1, 131, 132, 90,
133, 134, 135, 136, 91, 8, 92, 93, 10, 94,
95, 96, 97, 15, 16, 98, 18, 99, 20, 21,
100, 101, 102, 103, 25, 0, 27, 28, 104, 105,
- 106, 107, 241, 242, 243, 244, 245, 246, 139, 247,
- 37, 38, 248, 249, 250, 140, 42, 141, 44, 142,
+ 106, 107, 243, 244, 245, 246, 247, 248, 139, 249,
+ 37, 38, 250, 251, 252, 140, 42, 141, 44, 142,
46, 143, 48, 49, 50, 51, 52, 53, 54, 55,
56, 57, 58, 59, 144, 61, 62, 145, 64, 65,
- 108, 109, 110, 111, 0, 0, 0, 112, 251, 252,
- 253, 254, 255, 256, 257, 0, 258, 166, 0, 149,
+ 108, 109, 110, 111, 0, 0, 0, 112, 253, 254,
+ 255, 256, 257, 258, 259, 0, 260, 166, 0, 149,
129, 130, 1, 131, 132, 90, 133, 134, 135, 136,
91, 8, 92, 93, 10, 94, 95, 96, 97, 15,
- 16, 98, 18, 99, 311, 21, 100, 101, 102, 103,
- 25, 0, 27, 28, 104, 105, 106, 107, 241, 242,
- 243, 244, 245, 246, 139, 247, 37, 38, 248, 249,
- 250, 140, 42, 141, 44, 142, 46, 143, 48, 49,
+ 16, 98, 18, 99, 313, 21, 100, 101, 102, 103,
+ 25, 0, 27, 28, 104, 105, 106, 107, 243, 244,
+ 245, 246, 247, 248, 139, 249, 37, 38, 250, 251,
+ 252, 140, 42, 141, 44, 142, 46, 143, 48, 49,
50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
144, 61, 62, 145, 64, 65, 108, 109, 110, 111,
- 0, 0, 0, 112, 251, 252, 253, 254, 255, 256,
- 257, 0, 0, 166, 0, 149, 129, 130, 1, 131,
+ 0, 0, 0, 112, 253, 254, 255, 256, 257, 258,
+ 259, 0, 0, 166, 0, 149, 129, 130, 1, 131,
132, 90, 133, 134, 135, 136, 91, 8, 92, 93,
10, 94, 95, 96, 97, 15, 16, 98, 18, 99,
20, 21, 100, 101, 102, 103, 25, 0, 27, 28,
@@ -1139,7 +1126,7 @@ static const yytype_int16 yytable[] =
48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
58, 59, 144, 61, 62, 145, 64, 65, 108, 109,
110, 111, 0, 0, 0, 112, 0, 0, 0, 146,
- 147, 0, 0, 0, 0, 166, 295, 149, 129, 130,
+ 147, 0, 0, 0, 0, 166, 297, 149, 129, 130,
1, 131, 132, 90, 133, 134, 135, 136, 91, 8,
92, 93, 10, 94, 95, 96, 97, 15, 16, 98,
18, 99, 20, 21, 100, 101, 102, 103, 25, 0,
@@ -1149,7 +1136,7 @@ static const yytype_int16 yytable[] =
52, 53, 54, 55, 56, 57, 58, 59, 144, 61,
62, 145, 64, 65, 108, 109, 110, 111, 0, 0,
0, 112, 0, 0, 0, 146, 147, 0, 0, 0,
- 0, 166, 337, 149, 129, 130, 1, 131, 132, 90,
+ 0, 166, 341, 149, 129, 130, 1, 131, 132, 90,
133, 134, 135, 136, 91, 8, 92, 93, 10, 94,
95, 96, 97, 15, 16, 98, 18, 99, 20, 21,
100, 101, 102, 103, 25, 0, 27, 28, 104, 105,
@@ -1158,7 +1145,7 @@ static const yytype_int16 yytable[] =
46, 143, 48, 49, 50, 51, 52, 53, 54, 55,
56, 57, 58, 59, 144, 61, 62, 145, 64, 65,
108, 109, 110, 111, 0, 0, 0, 112, 0, 0,
- 0, 146, 147, 0, 0, 0, 0, 166, 434, 149,
+ 0, 146, 147, 0, 0, 0, 0, 166, 438, 149,
129, 130, 1, 131, 132, 90, 133, 134, 135, 136,
91, 8, 92, 93, 10, 94, 95, 96, 97, 15,
16, 98, 18, 99, 20, 21, 100, 101, 102, 103,
@@ -1168,7 +1155,7 @@ static const yytype_int16 yytable[] =
50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
144, 61, 62, 145, 64, 65, 108, 109, 110, 111,
0, 0, 0, 112, 0, 0, 0, 146, 147, 0,
- 0, 0, 0, 166, 493, 149, 129, 130, 1, 131,
+ 0, 0, 0, 166, 501, 149, 129, 130, 1, 131,
132, 90, 133, 134, 135, 136, 91, 8, 92, 93,
137, 94, 95, 96, 97, 15, 16, 98, 138, 99,
20, 21, 100, 101, 102, 103, 25, 0, 27, 28,
@@ -1221,9 +1208,9 @@ static const yytype_int16 yytable[] =
10, 94, 95, 96, 97, 15, 16, 98, 18, 99,
20, 21, 100, 101, 102, 103, 25, 0, 27, 28,
104, 105, 106, 107, 0, 0, 0, 0, 33, 34,
- 139, 36, 37, 38, 0, 39, 40, 140, 419, 141,
- 420, 142, 421, 143, 422, 49, 50, 51, 52, 53,
- 54, 55, 423, 424, 425, 59, 144, 61, 426, 427,
+ 139, 36, 37, 38, 0, 39, 40, 140, 423, 141,
+ 424, 142, 425, 143, 426, 49, 50, 51, 52, 53,
+ 54, 55, 427, 428, 429, 59, 144, 61, 430, 431,
64, 65, 108, 109, 110, 111, 0, 0, 0, 112,
0, 0, 0, 146, 147, 0, 0, 0, 0, 166,
0, 149, 129, 130, 1, 131, 132, 90, 133, 134,
@@ -1232,8 +1219,8 @@ static const yytype_int16 yytable[] =
102, 103, 25, 0, 27, 28, 104, 105, 106, 107,
0, 0, 0, 0, 33, 34, 139, 36, 37, 38,
0, 39, 40, 140, 42, 141, 44, 142, 46, 143,
- 48, 49, 50, 51, 52, 53, 54, 55, 423, 424,
- 58, 59, 144, 61, 426, 427, 64, 65, 108, 109,
+ 48, 49, 50, 51, 52, 53, 54, 55, 427, 428,
+ 58, 59, 144, 61, 430, 431, 64, 65, 108, 109,
110, 111, 0, 0, 0, 112, 0, 0, 0, 146,
147, 0, 0, 0, 0, 166, 0, 149, 129, 130,
1, 131, 132, 90, 133, 134, 135, 136, 91, 8,
@@ -1242,8 +1229,8 @@ static const yytype_int16 yytable[] =
27, 28, 104, 105, 106, 107, 0, 0, 0, 0,
33, 34, 139, 36, 37, 38, 0, 39, 40, 140,
42, 141, 44, 142, 46, 143, 48, 49, 50, 51,
- 52, 53, 54, 55, 479, 480, 58, 59, 144, 61,
- 481, 482, 64, 65, 108, 109, 110, 111, 0, 0,
+ 52, 53, 54, 55, 487, 488, 58, 59, 144, 61,
+ 489, 490, 64, 65, 108, 109, 110, 111, 0, 0,
0, 112, 0, 0, 0, 146, 147, 0, 0, 0,
0, 166, 0, 149, 129, 130, 1, 131, 132, 90,
133, 134, 135, 136, 91, 8, 92, 93, 10, 94,
@@ -1290,7 +1277,7 @@ static const yytype_int16 yytable[] =
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
63, 64, 65, 66, 67, 0, 0, 69, 1, 0,
- 70, 0, 3, 4, 5, 6, 7, 8, 377, 9,
+ 70, 0, 3, 4, 5, 6, 7, 8, 381, 9,
10, 11, 12, 13, 14, 15, 16, 0, 18, 19,
20, 21, 22, 23, 24, 0, 25, 26, 27, 28,
0, 30, 31, 32, 0, 0, 0, 0, 33, 34,
@@ -1298,7 +1285,7 @@ static const yytype_int16 yytable[] =
44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 67, 0, 0, 69, 1, 0, 70,
- 0, 3, 4, 5, 6, 7, 8, 400, 9, 10,
+ 0, 3, 4, 5, 6, 7, 8, 404, 9, 10,
11, 12, 13, 14, 15, 16, 0, 18, 19, 20,
21, 22, 23, 24, 0, 25, 26, 27, 28, 0,
30, 31, 32, 0, 0, 0, 0, 33, 34, 35,
@@ -1306,7 +1293,7 @@ static const yytype_int16 yytable[] =
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 0, 0, 69, 1, 0, 70, 0,
- 3, 4, 5, 6, 7, 8, 517, 9, 10, 11,
+ 3, 4, 5, 6, 7, 8, 525, 9, 10, 11,
12, 13, 14, 15, 16, 0, 18, 19, 20, 21,
22, 23, 24, 0, 25, 26, 27, 28, 0, 30,
31, 32, 0, 0, 0, 0, 33, 34, 35, 36,
@@ -1314,7 +1301,7 @@ static const yytype_int16 yytable[] =
46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
66, 67, 0, 0, 69, 1, 0, 70, 0, 3,
- 4, 5, 6, 7, 8, 546, 9, 10, 11, 12,
+ 4, 5, 6, 7, 8, 554, 9, 10, 11, 12,
13, 14, 15, 16, 0, 18, 19, 20, 21, 22,
23, 24, 0, 25, 26, 27, 28, 0, 30, 31,
32, 0, 0, 0, 0, 33, 34, 35, 36, 37,
@@ -1322,194 +1309,202 @@ static const yytype_int16 yytable[] =
47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
67, 0, 0, 0, 0, 0, 70, 0, 0, 0,
- 0, 0, 0, 0, 466, 1, 439, 440, 90, 3,
+ 0, 0, 0, 0, 474, 445, 446, 1, 447, 448,
+ 90, 3, 4, 5, 6, 91, 8, 92, 93, 10,
+ 94, 95, 96, 97, 15, 16, 98, 18, 99, 20,
+ 21, 100, 101, 102, 103, 25, 0, 27, 28, 104,
+ 105, 106, 107, 0, 0, 0, 0, 33, 34, 35,
+ 36, 37, 38, 0, 39, 40, 41, 42, 43, 44,
+ 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
+ 65, 108, 109, 110, 111, 0, 1, 0, 112, 90,
+ 3, 4, 5, 6, 91, 8, 92, 93, 10, 94,
+ 95, 96, 97, 15, 16, 98, 18, 99, 20, 21,
+ 100, 101, 102, 103, 25, 0, 27, 28, 104, 105,
+ 106, 107, 0, 0, 0, 0, 33, 34, 35, 36,
+ 37, 38, 0, 39, 40, 41, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
+ 108, 109, 110, 111, 0, 1, 0, 112, 90, 3,
4, 5, 6, 91, 8, 92, 93, 10, 94, 95,
96, 97, 15, 16, 98, 18, 99, 20, 21, 100,
101, 102, 103, 25, 0, 27, 28, 104, 105, 106,
107, 0, 0, 0, 0, 33, 34, 35, 36, 37,
38, 0, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 108,
+ 57, 58, 59, 174, 61, 62, 63, 64, 65, 108,
109, 110, 111, 0, 1, 0, 112, 90, 3, 4,
5, 6, 91, 8, 92, 93, 10, 94, 95, 96,
97, 15, 16, 98, 18, 99, 20, 21, 100, 101,
102, 103, 25, 0, 27, 28, 104, 105, 106, 107,
0, 0, 0, 0, 33, 34, 35, 36, 37, 38,
0, 39, 40, 41, 42, 43, 44, 45, 46, 47,
- 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, 108, 109,
- 110, 111, 0, 1, 0, 112, 90, 3, 4, 5,
+ 48, 215, 216, 217, 218, 219, 54, 220, 56, 57,
+ 58, 221, 60, 61, 62, 63, 64, 65, 108, 109,
+ 110, 111, 0, 1, 0, 112, 90, 133, 134, 5,
6, 91, 8, 92, 93, 10, 94, 95, 96, 97,
15, 16, 98, 18, 99, 20, 21, 100, 101, 102,
103, 25, 0, 27, 28, 104, 105, 106, 107, 0,
0, 0, 0, 33, 34, 35, 36, 37, 38, 0,
- 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 39, 40, 140, 42, 141, 44, 142, 46, 143, 48,
49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 174, 61, 62, 63, 64, 65, 108, 109, 110,
- 111, 0, 1, 0, 112, 90, 3, 4, 5, 6,
- 91, 8, 92, 93, 10, 94, 95, 96, 97, 15,
- 16, 98, 18, 99, 20, 21, 100, 101, 102, 103,
- 25, 0, 27, 28, 104, 105, 106, 107, 0, 0,
- 0, 0, 33, 34, 35, 36, 37, 38, 0, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 215,
- 216, 217, 218, 219, 54, 220, 56, 57, 58, 221,
- 60, 61, 62, 63, 64, 65, 108, 109, 110, 111,
- 0, 1, 0, 112, 90, 133, 134, 5, 6, 91,
- 8, 92, 93, 10, 94, 95, 96, 97, 15, 16,
- 98, 18, 99, 20, 21, 100, 101, 102, 103, 25,
- 0, 27, 28, 104, 105, 106, 107, 0, 0, 0,
+ 59, 384, 61, 62, 63, 64, 65, 108, 109, 110,
+ 111, 1, 0, 0, 112, 3, 4, 5, 6, 7,
+ 8, 0, 9, 10, 11, 12, 13, 0, 15, 16,
+ 0, 18, 19, 20, 21, 22, 101, 24, 0, 25,
+ 0, 27, 28, 0, 30, 31, 32, 0, 0, 0,
0, 33, 34, 35, 36, 37, 38, 0, 39, 40,
- 140, 42, 141, 44, 142, 46, 143, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, 57, 58, 59, 380,
- 61, 62, 63, 64, 65, 108, 109, 110, 111, 1,
- 0, 0, 112, 3, 4, 5, 6, 7, 8, 0,
- 9, 10, 11, 12, 13, 0, 15, 16, 0, 18,
- 19, 20, 21, 22, 101, 24, 0, 25, 0, 27,
- 28, 0, 30, 31, 32, 0, 0, 0, 0, 33,
- 34, 35, 36, 37, 38, 0, 39, 40, 41, 42,
- 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
- 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
- 63, 64, 65, 497, 67, 0, 0, 0, 0, 0,
- 70, 0, 0, 0, 0, 0, 498, 241, 242, 243,
- 244, 266, 267, 0, 268, 0, 0, 248, 269, 270,
- 241, 242, 243, 244, 266, 267, 570, 268, 0, 0,
- 248, 269, 270, 0, 0, 0, 0, 0, 0, 0,
- 554, 555, 0, 556, 557, 558, 0, 559, 0, 0,
- 560, 561, 562, 251, 252, 253, 254, 255, 256, 257,
- 0, 0, 0, 0, 265, 0, 251, 252, 253, 254,
- 255, 256, 257, 241, 242, 243, 244, 266, 267, 0,
- 268, 0, 0, 248, 269, 270, 563, 564, 565, 566,
- 567, 568, 569, 241, 242, 243, 244, 266, 267, 0,
- 268, 0, 0, 248, 269, 270, 241, 242, 243, 244,
- 266, 267, 0, 268, 0, 0, 248, 269, 270, 251,
- 252, 253, 254, 255, 256, 257, 241, 242, 243, 244,
- 266, 267, 0, 268, 0, 0, 248, 269, 270, 251,
- 252, 253, 254, 255, 256, 257, 0, 327, 0, 328,
- 0, 0, 251, 252, 253, 254, 255, 256, 257, 0,
- 406, 0, 328, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 251, 252, 253, 254, 255, 256, 257, 0,
- 0, 0, 328, 358, 359, 360, 361, 362, 363, 0,
- 364, 0, 0, 365, 366, 367, 241, 242, 243, 244,
- 266, 267, 0, 268, 0, 0, 248, 269, 270, 241,
- 242, 243, 244, 266, 267, 0, 268, 0, 0, 248,
- 269, 270, 0, 0, 0, 0, 0, 0, 0, 368,
- 369, 370, 371, 372, 373, 374, 0, 375, 0, 0,
- 0, 0, 251, 252, 253, 254, 255, 256, 257, 388,
- 0, 0, 0, 0, 0, 251, 252, 253, 254, 255,
- 256, 257, 485, 241, 242, 243, 244, 266, 267, 0,
- 268, 0, 0, 248, 269, 270, 241, 242, 243, 244,
- 266, 267, 0, 268, 0, 0, 248, 269, 270, 241,
- 242, 243, 244, 266, 267, 0, 268, 0, 0, 248,
- 269, 270, 0, 0, 0, 0, 0, 0, 0, 251,
- 252, 253, 254, 255, 256, 257, 489, 0, 0, 0,
- 0, 0, 251, 252, 253, 254, 255, 256, 257, 519,
- 0, 0, 0, 0, 0, 251, 252, 253, 254, 255,
- 256, 257, 579, 241, 242, 243, 244, 266, 267, 0,
- 268, 0, 0, 248, 269, 270, 0, 0, 0, 0,
- 0, 241, 242, 243, 244, 266, 267, 0, 268, 0,
- 0, 248, 269, 270, 241, 242, 243, 244, 266, 267,
- 0, 268, 0, 0, 248, 269, 270, 0, 0, 251,
- 252, 253, 254, 255, 256, 257, 602, 325, 326, 0,
- 0, 0, 0, 0, 0, 0, 0, 251, 252, 253,
- 254, 255, 256, 257, 0, 0, 0, 0, 0, 0,
- 251, 252, 253, 254, 255, 256, 257, 358, 359, 360,
- 361, 362, 363, 0, 364, 0, 0, 365, 366, 367,
- 554, 555, 0, 556, 557, 558, 0, 559, 0, 0,
- 560, 561, 562, 241, 242, 243, 244, 0, 0, 0,
- 268, 0, 0, 248, 269, 270, 0, 0, 0, 0,
- 0, 0, 0, 368, 369, 370, 371, 372, 373, 374,
- 0, 0, 0, 0, 0, 0, 563, 564, 565, 566,
- 567, 568, 569, 0, 0, 0, 0, 0, 0, 251,
- 252, 253, 254, 255, 256, 257, 554, 555, 0, 556,
- 0, 0, 0, 559, 0, 0, 560, 561, 562, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+ 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 305, 67, 0, 0, 0,
+ 0, 306, 70, 0, 0, 0, 0, 0, 503, 243,
+ 244, 245, 246, 268, 269, 0, 270, 0, 0, 250,
+ 271, 272, 243, 244, 245, 246, 268, 269, 504, 270,
+ 0, 0, 250, 271, 272, 0, 0, 0, 0, 0,
+ 0, 0, 243, 244, 245, 246, 268, 269, 0, 270,
+ 0, 0, 250, 271, 272, 253, 254, 255, 256, 257,
+ 258, 259, 0, 0, 0, 0, 0, 0, 253, 254,
+ 255, 256, 257, 258, 259, 0, 0, 0, 0, 0,
+ 0, 505, 0, 0, 0, 0, 0, 0, 253, 254,
+ 255, 256, 257, 258, 259, 243, 244, 245, 246, 268,
+ 269, 506, 270, 0, 0, 250, 271, 272, 0, 0,
+ 0, 0, 0, 0, 578, 243, 244, 245, 246, 268,
+ 269, 0, 270, 0, 0, 250, 271, 272, 562, 563,
+ 0, 564, 565, 566, 0, 567, 0, 0, 568, 569,
+ 570, 253, 254, 255, 256, 257, 258, 259, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 253, 254, 255, 256, 257, 258, 259, 0, 0,
+ 0, 0, 0, 291, 571, 572, 573, 574, 575, 576,
+ 577, 243, 244, 245, 246, 268, 269, 267, 270, 0,
+ 0, 250, 271, 272, 0, 0, 243, 244, 245, 246,
+ 268, 269, 0, 270, 0, 0, 250, 271, 272, 243,
+ 244, 245, 246, 268, 269, 0, 270, 0, 0, 250,
+ 271, 272, 0, 0, 0, 0, 0, 253, 254, 255,
+ 256, 257, 258, 259, 292, 0, 0, 0, 0, 0,
+ 0, 0, 253, 254, 255, 256, 257, 258, 259, 0,
+ 0, 0, 0, 0, 0, 253, 254, 255, 256, 257,
+ 258, 259, 0, 329, 0, 330, 243, 244, 245, 246,
+ 268, 269, 0, 270, 0, 0, 250, 271, 272, 243,
+ 244, 245, 246, 268, 269, 0, 270, 0, 0, 250,
+ 271, 272, 362, 363, 364, 365, 366, 367, 0, 368,
+ 0, 0, 369, 370, 371, 0, 0, 0, 0, 0,
+ 0, 0, 253, 254, 255, 256, 257, 258, 259, 0,
+ 410, 0, 330, 0, 0, 253, 254, 255, 256, 257,
+ 258, 259, 0, 0, 0, 330, 0, 0, 372, 373,
+ 374, 375, 376, 377, 378, 0, 379, 243, 244, 245,
+ 246, 268, 269, 0, 270, 0, 0, 250, 271, 272,
+ 243, 244, 245, 246, 268, 269, 0, 270, 0, 0,
+ 250, 271, 272, 243, 244, 245, 246, 268, 269, 0,
+ 270, 0, 0, 250, 271, 272, 0, 0, 0, 0,
+ 0, 0, 0, 253, 254, 255, 256, 257, 258, 259,
+ 392, 0, 0, 0, 0, 0, 253, 254, 255, 256,
+ 257, 258, 259, 493, 0, 0, 0, 0, 0, 253,
+ 254, 255, 256, 257, 258, 259, 497, 243, 244, 245,
+ 246, 268, 269, 0, 270, 0, 0, 250, 271, 272,
+ 243, 244, 245, 246, 268, 269, 0, 270, 0, 0,
+ 250, 271, 272, 243, 244, 245, 246, 268, 269, 0,
+ 270, 0, 0, 250, 271, 272, 0, 0, 0, 0,
+ 0, 0, 0, 253, 254, 255, 256, 257, 258, 259,
+ 527, 0, 0, 0, 0, 0, 253, 254, 255, 256,
+ 257, 258, 259, 587, 0, 0, 0, 0, 0, 253,
+ 254, 255, 256, 257, 258, 259, 610, 243, 244, 245,
+ 246, 268, 269, 0, 270, 0, 0, 250, 271, 272,
+ 243, 244, 245, 246, 268, 269, 0, 270, 0, 0,
+ 250, 271, 272, 0, 0, 362, 363, 364, 365, 366,
+ 367, 0, 368, 327, 328, 369, 370, 371, 0, 0,
+ 0, 0, 0, 253, 254, 255, 256, 257, 258, 259,
+ 0, 0, 0, 0, 0, 0, 253, 254, 255, 256,
+ 257, 258, 259, 0, 0, 0, 0, 0, 0, 0,
+ 0, 372, 373, 374, 375, 376, 377, 378, 562, 563,
+ 0, 564, 565, 566, 0, 567, 0, 0, 568, 569,
+ 570, 562, 563, 0, 564, 0, 0, 0, 567, 0,
+ 0, 568, 569, 570, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 563, 564, 565, 566, 567, 568, 569
+ 0, 0, 0, 0, 571, 572, 573, 574, 575, 576,
+ 577, 0, 0, 0, 0, 0, 0, 571, 572, 573,
+ 574, 575, 576, 577
};
static const yytype_int16 yycheck[] =
{
- 0, 0, 24, 7, 70, 32, 12, 237, 14, 13,
- 379, 2, 9, 391, 16, 377, 22, 31, 49, 388,
- 11, 517, 261, 49, 30, 31, 17, 15, 258, 34,
- 23, 95, 96, 24, 95, 68, 405, 31, 29, 44,
- 67, 32, 75, 549, 10, 11, 34, 23, 95, 97,
- 546, 44, 28, 101, 42, 43, 44, 45, 46, 47,
- 66, 49, 93, 94, 52, 53, 54, 93, 94, 575,
- 70, 22, 78, 73, 73, 0, 67, 68, 68, 30,
- 31, 95, 84, 68, 96, 75, 83, 68, 100, 55,
- 75, 57, 117, 59, 75, 61, 69, 327, 95, 338,
- 88, 89, 90, 91, 92, 93, 94, 469, 74, 134,
- 135, 136, 118, 119, 120, 121, 68, 95, 357, 96,
- 49, 163, 55, 75, 57, 95, 59, 78, 61, 171,
- 49, 137, 138, 52, 140, 141, 142, 143, 95, 145,
- 182, 168, 148, 97, 49, 375, 95, 52, 36, 37,
- 519, 95, 194, 144, 532, 517, 49, 95, 149, 95,
- 166, 188, 91, 92, 93, 94, 28, 173, 95, 96,
- 212, 90, 91, 92, 93, 94, 406, 168, 95, 96,
- 95, 172, 95, 174, 546, 90, 91, 92, 93, 94,
- 28, 197, 275, 276, 95, 95, 435, 188, 91, 92,
- 93, 94, 571, 95, 95, 196, 419, 420, 421, 422,
- 579, 95, 425, 95, 101, 101, 96, 100, 209, 100,
- 26, 95, 95, 289, 28, 26, 465, 480, 481, 482,
- 96, 16, 95, 602, 95, 241, 242, 243, 244, 245,
+ 0, 0, 24, 7, 383, 32, 12, 381, 14, 13,
+ 395, 2, 70, 392, 239, 9, 22, 31, 263, 16,
+ 11, 525, 557, 31, 30, 31, 17, 23, 95, 34,
+ 409, 23, 28, 24, 163, 260, 95, 22, 29, 44,
+ 67, 32, 171, 10, 11, 30, 31, 68, 583, 163,
+ 554, 49, 44, 182, 75, 68, 68, 171, 36, 37,
+ 66, 0, 75, 75, 95, 194, 49, 97, 182, 95,
+ 70, 101, 78, 73, 73, 95, 67, 68, 68, 49,
+ 194, 95, 52, 212, 49, 75, 96, 84, 55, 83,
+ 57, 28, 59, 78, 61, 93, 94, 342, 212, 68,
+ 117, 95, 49, 477, 329, 52, 75, 74, 91, 92,
+ 93, 94, 118, 119, 120, 121, 361, 134, 135, 136,
+ 90, 91, 92, 93, 94, 97, 91, 92, 93, 94,
+ 28, 137, 138, 69, 140, 141, 142, 143, 95, 145,
+ 95, 168, 148, 90, 91, 92, 93, 94, 527, 95,
+ 96, 525, 96, 144, 379, 540, 100, 49, 149, 101,
+ 166, 188, 95, 42, 43, 44, 45, 173, 95, 96,
+ 49, 95, 96, 52, 53, 54, 95, 168, 277, 278,
+ 554, 172, 95, 174, 95, 410, 423, 424, 425, 426,
+ 95, 197, 429, 95, 439, 95, 95, 188, 95, 95,
+ 579, 93, 94, 96, 26, 196, 101, 101, 587, 88,
+ 89, 90, 91, 92, 93, 94, 101, 55, 209, 57,
+ 100, 59, 100, 61, 95, 28, 95, 26, 473, 96,
+ 16, 610, 95, 291, 95, 95, 86, 243, 244, 245,
246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
- 256, 257, 274, 275, 276, 494, 95, 86, 98, 101,
- 266, 267, 268, 269, 270, 265, 265, 85, 95, 9,
- 274, 275, 276, 28, 70, 98, 282, 34, 95, 285,
- 95, 95, 98, 274, 275, 276, 70, 84, 70, 289,
- 290, 85, 298, 95, 300, 85, 302, 85, 304, 73,
- 95, 554, 555, 556, 557, 558, 559, 560, 561, 562,
- 563, 564, 565, 566, 567, 568, 569, 116, 117, 95,
- 163, 396, 31, 329, 330, 403, 332, 469, 171, 324,
- 336, 507, 333, 339, 133, 134, 135, 136, -1, 182,
- 139, 212, 333, 596, -1, -1, -1, 146, 147, -1,
- -1, 194, 358, 359, 360, 361, 362, 363, 364, 365,
- 366, 367, 368, 369, 370, 371, 372, 373, 374, 212,
- -1, -1, -1, -1, -1, -1, -1, 377, -1, 379,
- 386, 387, -1, -1, -1, -1, -1, -1, 388, -1,
- -1, -1, 28, -1, -1, -1, -1, -1, 34, -1,
- 391, 392, -1, 403, -1, 405, 42, 43, 44, 45,
- 46, 47, 418, 49, -1, 28, 52, 53, 54, -1,
- -1, 34, -1, -1, -1, -1, -1, -1, -1, 42,
- 43, 44, 45, 46, 47, -1, 49, -1, 444, 52,
- 53, 54, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 88, 89, 90, 91, 92, 93, 94, -1,
- 487, -1, -1, -1, -1, -1, -1, -1, 28, 469,
- -1, 471, 471, -1, 34, 88, 89, 90, 91, 92,
- 93, 94, 42, 43, 44, 45, 46, 47, -1, 49,
- -1, -1, 52, 53, 54, -1, 487, -1, 297, -1,
- 299, -1, 301, -1, 303, -1, -1, -1, -1, -1,
- -1, -1, -1, 513, 513, 521, -1, 517, -1, 519,
- -1, -1, -1, -1, 323, 324, 325, 326, 88, 89,
- 90, 91, 92, 93, 94, -1, -1, -1, -1, -1,
- -1, 532, -1, 28, -1, 551, 546, -1, -1, 34,
- -1, -1, -1, -1, -1, -1, -1, 42, 43, 44,
- 45, 46, 47, -1, 49, -1, -1, 52, 53, 54,
- -1, 571, -1, -1, -1, -1, -1, -1, -1, 579,
+ 256, 257, 258, 259, 276, 277, 278, 502, 101, 98,
+ 85, 95, 268, 269, 270, 271, 272, 267, 267, 9,
+ 28, 95, 276, 277, 278, 70, 95, 98, 284, 34,
+ 95, 287, 98, 70, 84, 276, 277, 278, 85, 116,
+ 117, 291, 292, 70, 300, 85, 302, 95, 304, 95,
+ 306, 85, 95, 73, 400, 31, 133, 134, 135, 136,
+ 407, 477, 139, 515, 337, 326, -1, -1, -1, 146,
+ 147, 212, -1, -1, -1, 331, 332, 333, 334, -1,
+ 336, -1, -1, -1, 340, -1, -1, 343, -1, -1,
+ -1, -1, -1, -1, -1, -1, 337, -1, 488, 489,
+ 490, -1, -1, -1, -1, -1, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 487, 488, 489, 490, -1, -1, -1,
+ -1, 381, -1, 383, 390, 391, -1, -1, -1, -1,
+ -1, -1, 392, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 395, 396, -1, 407, -1, 409,
+ -1, -1, -1, -1, -1, -1, 422, -1, -1, -1,
+ -1, -1, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, -1, -1,
+ -1, -1, -1, -1, -1, -1, 452, -1, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 604, -1, -1, -1, 495, -1,
+ -1, -1, 299, -1, 301, -1, 303, 477, 305, 479,
+ 479, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 604, -1, -1, -1, -1, -1, -1, -1, 325, 326,
+ 327, 328, -1, -1, 495, -1, -1, 15, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 389, -1, -1, -1, -1, -1, 28, -1, -1, -1,
- -1, -1, 602, 88, 89, 90, 91, 92, 93, 94,
- 42, 43, 44, 45, 46, 47, -1, 49, 417, -1,
- 52, 53, 54, -1, 423, 424, 28, 426, 427, -1,
- -1, -1, -1, -1, -1, -1, 479, 480, 481, 482,
+ -1, 521, 521, 529, -1, 525, 34, 527, -1, -1,
+ -1, -1, -1, -1, 42, 43, 44, 45, 46, 47,
+ -1, 49, -1, -1, 52, 53, 54, -1, -1, 540,
+ -1, -1, -1, 559, 554, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 393, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 579,
+ 88, 89, 90, 91, 92, 93, 94, 587, -1, -1,
+ -1, -1, -1, -1, 421, -1, -1, -1, -1, -1,
+ 427, 428, -1, 430, 431, 28, -1, -1, -1, -1,
+ 610, 34, -1, -1, -1, -1, -1, -1, -1, 42,
+ 43, 44, 45, 46, 47, -1, 49, 28, -1, 52,
+ 53, 54, -1, 34, -1, -1, -1, -1, -1, -1,
+ -1, 42, 43, 44, 45, 46, 47, -1, 49, -1,
+ -1, 52, 53, 54, -1, -1, -1, -1, -1, -1,
+ 487, 488, 489, 490, -1, 88, 89, 90, 91, 92,
+ 93, 94, -1, -1, -1, -1, 503, 504, 505, 506,
+ -1, -1, 509, 510, 511, 512, -1, 88, 89, 90,
+ 91, 92, 93, 94, -1, -1, 28, -1, -1, -1,
+ -1, -1, 34, -1, -1, -1, -1, -1, -1, -1,
42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
- 52, 53, 54, -1, -1, -1, 88, 89, 90, 91,
+ 52, 53, 54, -1, 551, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, -1, -1, -1, -1, 582, 88, 89, 90, 91,
92, 93, 94, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 479, 480, 481, 482, -1, -1, 88, 89, 90, 91,
- 92, 93, 94, -1, -1, -1, 495, 496, 497, 498,
- -1, -1, 501, 502, 503, 504, -1, -1, -1, -1,
- -1, 554, 555, 556, 557, 558, 559, 560, 561, 562,
- 563, 564, 565, 566, 567, 568, 569, 34, -1, -1,
- -1, -1, -1, -1, -1, 42, 43, 44, 45, 46,
- 47, -1, 49, -1, 543, 52, 53, 54, -1, -1,
- -1, -1, -1, 596, -1, 554, 555, 556, 557, 558,
- 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
- 569, -1, -1, -1, -1, 574, -1, -1, -1, -1,
- -1, 88, 89, 90, 91, 92, 93, 94, 95, -1,
- -1, -1, -1, -1, -1, -1, -1, 596, 4, 5,
+ -1, -1, -1, -1, -1, -1, -1, 604, 4, 5,
6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, -1,
@@ -1769,7 +1764,23 @@ static const yytype_int16 yycheck[] =
61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
81, -1, -1, -1, -1, -1, 87, -1, -1, -1,
- -1, -1, -1, -1, 95, 6, 7, 8, 9, 10,
+ -1, -1, -1, -1, 95, 4, 5, 6, 7, 8,
+ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
+ 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, -1, 36, 37, 38,
+ 39, 40, 41, -1, -1, -1, -1, 46, 47, 48,
+ 49, 50, 51, -1, 53, 54, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
+ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 80, 81, 82, 83, -1, 6, -1, 87, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ 30, 31, 32, 33, 34, -1, 36, 37, 38, 39,
+ 40, 41, -1, -1, -1, -1, 46, 47, 48, 49,
+ 50, 51, -1, 53, 54, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
+ 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
+ 80, 81, 82, 83, -1, 6, -1, 87, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, -1, 36, 37, 38, 39, 40,
@@ -1793,90 +1804,84 @@ static const yytype_int16 yycheck[] =
53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
- 83, -1, 6, -1, 87, 9, 10, 11, 12, 13,
- 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
- 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
- 34, -1, 36, 37, 38, 39, 40, 41, -1, -1,
- -1, -1, 46, 47, 48, 49, 50, 51, -1, 53,
- 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
- 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
- 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
- -1, 6, -1, 87, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
- 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
- -1, 36, 37, 38, 39, 40, 41, -1, -1, -1,
+ 83, 6, -1, -1, 87, 10, 11, 12, 13, 14,
+ 15, -1, 17, 18, 19, 20, 21, -1, 23, 24,
+ -1, 26, 27, 28, 29, 30, 31, 32, -1, 34,
+ -1, 36, 37, -1, 39, 40, 41, -1, -1, -1,
-1, 46, 47, 48, 49, 50, 51, -1, 53, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
- 75, 76, 77, 78, 79, 80, 81, 82, 83, 6,
- -1, -1, 87, 10, 11, 12, 13, 14, 15, -1,
- 17, 18, 19, 20, 21, -1, 23, 24, -1, 26,
- 27, 28, 29, 30, 31, 32, -1, 34, -1, 36,
- 37, -1, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 28, 81, -1, -1, -1, -1, -1,
- 87, -1, -1, -1, -1, -1, 28, 42, 43, 44,
- 45, 46, 47, -1, 49, -1, -1, 52, 53, 54,
- 42, 43, 44, 45, 46, 47, 28, 49, -1, -1,
- 52, 53, 54, -1, -1, -1, -1, -1, -1, -1,
- 42, 43, -1, 45, 46, 47, -1, 49, -1, -1,
- 52, 53, 54, 88, 89, 90, 91, 92, 93, 94,
- -1, -1, -1, -1, 33, -1, 88, 89, 90, 91,
- 92, 93, 94, 42, 43, 44, 45, 46, 47, -1,
- 49, -1, -1, 52, 53, 54, 88, 89, 90, 91,
- 92, 93, 94, 42, 43, 44, 45, 46, 47, -1,
- 49, -1, -1, 52, 53, 54, 42, 43, 44, 45,
- 46, 47, -1, 49, -1, -1, 52, 53, 54, 88,
- 89, 90, 91, 92, 93, 94, 42, 43, 44, 45,
- 46, 47, -1, 49, -1, -1, 52, 53, 54, 88,
- 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
- -1, -1, 88, 89, 90, 91, 92, 93, 94, -1,
- 96, -1, 98, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 88, 89, 90, 91, 92, 93, 94, -1,
- -1, -1, 98, 42, 43, 44, 45, 46, 47, -1,
- 49, -1, -1, 52, 53, 54, 42, 43, 44, 45,
+ 75, 76, 77, 78, 79, 28, 81, -1, -1, -1,
+ -1, 34, 87, -1, -1, -1, -1, -1, 28, 42,
+ 43, 44, 45, 46, 47, -1, 49, -1, -1, 52,
+ 53, 54, 42, 43, 44, 45, 46, 47, 28, 49,
+ -1, -1, 52, 53, 54, -1, -1, -1, -1, -1,
+ -1, -1, 42, 43, 44, 45, 46, 47, -1, 49,
+ -1, -1, 52, 53, 54, 88, 89, 90, 91, 92,
+ 93, 94, -1, -1, -1, -1, -1, -1, 88, 89,
+ 90, 91, 92, 93, 94, -1, -1, -1, -1, -1,
+ -1, 28, -1, -1, -1, -1, -1, -1, 88, 89,
+ 90, 91, 92, 93, 94, 42, 43, 44, 45, 46,
+ 47, 28, 49, -1, -1, 52, 53, 54, -1, -1,
+ -1, -1, -1, -1, 28, 42, 43, 44, 45, 46,
+ 47, -1, 49, -1, -1, 52, 53, 54, 42, 43,
+ -1, 45, 46, 47, -1, 49, -1, -1, 52, 53,
+ 54, 88, 89, 90, 91, 92, 93, 94, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, 89, 90, 91, 92, 93, 94, -1, -1,
+ -1, -1, -1, 34, 88, 89, 90, 91, 92, 93,
+ 94, 42, 43, 44, 45, 46, 47, 33, 49, -1,
+ -1, 52, 53, 54, -1, -1, 42, 43, 44, 45,
46, 47, -1, 49, -1, -1, 52, 53, 54, 42,
43, 44, 45, 46, 47, -1, 49, -1, -1, 52,
- 53, 54, -1, -1, -1, -1, -1, -1, -1, 88,
- 89, 90, 91, 92, 93, 94, -1, 96, -1, -1,
- -1, -1, 88, 89, 90, 91, 92, 93, 94, 95,
+ 53, 54, -1, -1, -1, -1, -1, 88, 89, 90,
+ 91, 92, 93, 94, 95, -1, -1, -1, -1, -1,
+ -1, -1, 88, 89, 90, 91, 92, 93, 94, -1,
-1, -1, -1, -1, -1, 88, 89, 90, 91, 92,
- 93, 94, 95, 42, 43, 44, 45, 46, 47, -1,
- 49, -1, -1, 52, 53, 54, 42, 43, 44, 45,
+ 93, 94, -1, 96, -1, 98, 42, 43, 44, 45,
46, 47, -1, 49, -1, -1, 52, 53, 54, 42,
43, 44, 45, 46, 47, -1, 49, -1, -1, 52,
- 53, 54, -1, -1, -1, -1, -1, -1, -1, 88,
- 89, 90, 91, 92, 93, 94, 95, -1, -1, -1,
- -1, -1, 88, 89, 90, 91, 92, 93, 94, 95,
- -1, -1, -1, -1, -1, 88, 89, 90, 91, 92,
- 93, 94, 95, 42, 43, 44, 45, 46, 47, -1,
+ 53, 54, 42, 43, 44, 45, 46, 47, -1, 49,
+ -1, -1, 52, 53, 54, -1, -1, -1, -1, -1,
+ -1, -1, 88, 89, 90, 91, 92, 93, 94, -1,
+ 96, -1, 98, -1, -1, 88, 89, 90, 91, 92,
+ 93, 94, -1, -1, -1, 98, -1, -1, 88, 89,
+ 90, 91, 92, 93, 94, -1, 96, 42, 43, 44,
+ 45, 46, 47, -1, 49, -1, -1, 52, 53, 54,
+ 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
+ 52, 53, 54, 42, 43, 44, 45, 46, 47, -1,
49, -1, -1, 52, 53, 54, -1, -1, -1, -1,
- -1, 42, 43, 44, 45, 46, 47, -1, 49, -1,
- -1, 52, 53, 54, 42, 43, 44, 45, 46, 47,
- -1, 49, -1, -1, 52, 53, 54, -1, -1, 88,
- 89, 90, 91, 92, 93, 94, 95, 78, 79, -1,
- -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
- 91, 92, 93, 94, -1, -1, -1, -1, -1, -1,
- 88, 89, 90, 91, 92, 93, 94, 42, 43, 44,
+ -1, -1, -1, 88, 89, 90, 91, 92, 93, 94,
+ 95, -1, -1, -1, -1, -1, 88, 89, 90, 91,
+ 92, 93, 94, 95, -1, -1, -1, -1, -1, 88,
+ 89, 90, 91, 92, 93, 94, 95, 42, 43, 44,
45, 46, 47, -1, 49, -1, -1, 52, 53, 54,
- 42, 43, -1, 45, 46, 47, -1, 49, -1, -1,
- 52, 53, 54, 42, 43, 44, 45, -1, -1, -1,
+ 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
+ 52, 53, 54, 42, 43, 44, 45, 46, 47, -1,
49, -1, -1, 52, 53, 54, -1, -1, -1, -1,
-1, -1, -1, 88, 89, 90, 91, 92, 93, 94,
+ 95, -1, -1, -1, -1, -1, 88, 89, 90, 91,
+ 92, 93, 94, 95, -1, -1, -1, -1, -1, 88,
+ 89, 90, 91, 92, 93, 94, 95, 42, 43, 44,
+ 45, 46, 47, -1, 49, -1, -1, 52, 53, 54,
+ 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
+ 52, 53, 54, -1, -1, 42, 43, 44, 45, 46,
+ 47, -1, 49, 78, 79, 52, 53, 54, -1, -1,
+ -1, -1, -1, 88, 89, 90, 91, 92, 93, 94,
-1, -1, -1, -1, -1, -1, 88, 89, 90, 91,
- 92, 93, 94, -1, -1, -1, -1, -1, -1, 88,
- 89, 90, 91, 92, 93, 94, 42, 43, -1, 45,
- -1, -1, -1, 49, -1, -1, 52, 53, 54, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 92, 93, 94, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, 89, 90, 91, 92, 93, 94, 42, 43,
+ -1, 45, 46, 47, -1, 49, -1, -1, 52, 53,
+ 54, 42, 43, -1, 45, -1, -1, -1, 49, -1,
+ -1, 52, 53, 54, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 88, 89, 90, 91, 92, 93, 94
+ -1, -1, -1, -1, 88, 89, 90, 91, 92, 93,
+ 94, -1, -1, -1, -1, -1, -1, 88, 89, 90,
+ 91, 92, 93, 94
};
- /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
- symbol of state STATE-NUM. */
+/* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
+ state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
0, 6, 9, 10, 11, 12, 13, 14, 15, 17,
@@ -1901,48 +1906,49 @@ static const yytype_uint8 yystos[] =
120, 0, 105, 122, 161, 95, 96, 97, 147, 160,
147, 161, 161, 161, 161, 69, 95, 95, 95, 96,
147, 147, 161, 161, 160, 63, 64, 65, 66, 67,
- 69, 73, 115, 161, 160, 160, 98, 161, 7, 8,
- 101, 115, 157, 158, 161, 165, 166, 97, 95, 95,
- 28, 42, 43, 44, 45, 46, 47, 49, 52, 53,
- 54, 88, 89, 90, 91, 92, 93, 94, 96, 123,
- 140, 162, 164, 95, 161, 33, 46, 47, 49, 53,
- 54, 116, 95, 95, 24, 50, 51, 115, 161, 115,
- 34, 44, 126, 95, 95, 36, 95, 95, 95, 34,
- 95, 95, 116, 95, 115, 98, 161, 28, 34, 28,
- 34, 28, 34, 28, 34, 55, 57, 59, 61, 145,
- 115, 28, 162, 68, 75, 68, 75, 68, 75, 68,
- 75, 68, 75, 28, 28, 78, 79, 96, 98, 101,
- 101, 100, 101, 96, 100, 100, 96, 98, 166, 26,
+ 69, 73, 115, 161, 160, 160, 98, 161, 4, 5,
+ 7, 8, 101, 115, 157, 158, 161, 165, 166, 97,
+ 95, 95, 28, 42, 43, 44, 45, 46, 47, 49,
+ 52, 53, 54, 88, 89, 90, 91, 92, 93, 94,
+ 96, 123, 140, 162, 164, 95, 161, 33, 46, 47,
+ 49, 53, 54, 116, 95, 95, 24, 50, 51, 115,
+ 161, 115, 34, 44, 126, 95, 95, 36, 95, 95,
+ 95, 34, 95, 95, 116, 95, 115, 98, 161, 28,
+ 34, 28, 34, 28, 34, 28, 34, 55, 57, 59,
+ 61, 145, 115, 28, 162, 68, 75, 68, 75, 68,
+ 75, 68, 75, 68, 75, 28, 28, 78, 79, 96,
+ 98, 101, 101, 101, 101, 100, 101, 96, 100, 100,
+ 96, 98, 166, 26, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 166, 42, 43,
- 44, 45, 46, 47, 49, 52, 53, 54, 88, 89,
- 90, 91, 92, 93, 94, 96, 123, 95, 118, 95,
- 74, 141, 142, 144, 142, 142, 23, 44, 95, 28,
- 161, 9, 83, 95, 108, 109, 110, 111, 161, 120,
- 95, 118, 134, 135, 136, 95, 96, 160, 161, 160,
- 161, 160, 161, 160, 161, 23, 28, 153, 26, 56,
- 58, 60, 62, 70, 71, 72, 76, 77, 149, 150,
- 160, 149, 160, 160, 98, 166, 161, 161, 161, 7,
- 8, 115, 158, 161, 96, 123, 161, 123, 161, 161,
+ 161, 166, 42, 43, 44, 45, 46, 47, 49, 52,
+ 53, 54, 88, 89, 90, 91, 92, 93, 94, 96,
+ 123, 95, 118, 95, 74, 141, 142, 144, 142, 142,
+ 23, 44, 95, 28, 161, 9, 83, 95, 108, 109,
+ 110, 111, 161, 120, 95, 118, 134, 135, 136, 95,
+ 96, 160, 161, 160, 161, 160, 161, 160, 161, 23,
+ 28, 153, 26, 56, 58, 60, 62, 70, 71, 72,
+ 76, 77, 149, 150, 160, 149, 160, 160, 98, 166,
+ 161, 161, 161, 161, 161, 4, 5, 7, 8, 115,
+ 158, 161, 96, 123, 161, 123, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 166, 95, 119, 137, 138,
- 139, 16, 134, 95, 95, 95, 161, 161, 134, 70,
- 71, 76, 77, 155, 160, 95, 113, 115, 111, 95,
- 86, 136, 134, 98, 166, 28, 28, 28, 28, 160,
- 161, 153, 153, 153, 153, 160, 160, 153, 160, 160,
- 123, 98, 123, 16, 84, 130, 139, 95, 118, 95,
- 15, 34, 85, 160, 163, 164, 163, 163, 163, 95,
- 116, 95, 9, 123, 160, 160, 160, 160, 160, 160,
- 160, 160, 28, 70, 150, 98, 95, 118, 95, 137,
- 134, 34, 161, 95, 42, 43, 45, 46, 47, 49,
- 52, 53, 54, 88, 89, 90, 91, 92, 93, 94,
- 28, 95, 113, 98, 70, 137, 130, 85, 161, 95,
+ 161, 161, 161, 166, 95, 119, 137, 138, 139, 16,
+ 134, 95, 95, 95, 161, 161, 134, 70, 71, 76,
+ 77, 155, 160, 95, 113, 115, 111, 95, 86, 136,
+ 134, 98, 166, 28, 28, 28, 28, 160, 161, 153,
+ 153, 153, 153, 160, 160, 153, 160, 160, 123, 98,
+ 123, 16, 84, 130, 139, 95, 118, 95, 15, 34,
+ 85, 160, 163, 164, 163, 163, 163, 95, 116, 95,
+ 9, 123, 160, 160, 160, 160, 160, 160, 160, 160,
+ 28, 70, 150, 98, 95, 118, 95, 137, 134, 34,
+ 161, 95, 42, 43, 45, 46, 47, 49, 52, 53,
+ 54, 88, 89, 90, 91, 92, 93, 94, 28, 95,
+ 113, 98, 70, 137, 130, 85, 161, 95, 163, 163,
163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 70, 134, 95, 160,
- 130, 95, 95, 134, 163, 134, 85, 85, 95, 95
+ 163, 163, 163, 163, 70, 134, 95, 160, 130, 95,
+ 95, 134, 163, 134, 85, 85, 95, 95
};
- /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
+/* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */
static const yytype_uint8 yyr1[] =
{
0, 102, 103, 104, 104, 105, 105, 105, 105, 105,
@@ -1971,16 +1977,16 @@ static const yytype_uint8 yyr1[] =
151, 151, 151, 151, 151, 151, 151, 151, 151, 152,
152, 152, 152, 152, 153, 153, 154, 154, 155, 155,
155, 155, 155, 156, 156, 156, 157, 157, 158, 158,
- 158, 159, 159, 160, 160, 161, 161, 161, 161, 161,
+ 158, 158, 158, 159, 159, 160, 160, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 162, 162, 162, 162, 162, 162,
+ 161, 161, 161, 161, 161, 161, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 163, 163, 163, 163, 163, 163, 163,
+ 162, 162, 162, 162, 162, 163, 163, 163, 163, 163,
163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 164, 164, 165, 165, 166, 166
+ 163, 163, 163, 164, 164, 165, 165, 166, 166
};
- /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
+/* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */
static const yytype_int8 yyr2[] =
{
0, 2, 1, 1, 2, 1, 1, 1, 1, 1,
@@ -2009,13 +2015,13 @@ static const yytype_int8 yyr2[] =
3, 3, 3, 3, 3, 3, 3, 3, 3, 6,
6, 6, 6, 6, 1, 1, 2, 4, 1, 2,
5, 2, 2, 3, 3, 3, 1, 3, 3, 3,
- 3, 2, 2, 1, 1, 1, 1, 3, 3, 3,
+ 3, 3, 3, 2, 2, 1, 1, 1, 1, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 1, 1, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 1, 1, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 1, 1, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 1, 1, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 4, 4, 0, 1, 1, 3
+ 3, 3, 3, 4, 4, 0, 1, 1, 3
};
@@ -2027,6 +2033,7 @@ enum { YYENOMEM = -2 };
#define YYACCEPT goto yyacceptlab
#define YYABORT goto yyabortlab
#define YYERROR goto yyerrorlab
+#define YYNOMEM goto yyexhaustedlab
#define YYRECOVERING() (!!yyerrstatus)
@@ -2067,10 +2074,7 @@ do { \
YYFPRINTF Args; \
} while (0)
-/* This macro is provided for backward compatibility. */
-# ifndef YY_LOCATION_PRINT
-# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
-# endif
+
# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \
@@ -2097,10 +2101,6 @@ yy_symbol_value_print (FILE *yyo,
YY_USE (yyoutput);
if (!yyvaluep)
return;
-# ifdef YYPRINT
- if (yykind < YYNTOKENS)
- YYPRINT (yyo, yytoknum[yykind], *yyvaluep);
-# endif
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
YY_USE (yykind);
YY_IGNORE_MAYBE_UNINITIALIZED_END
@@ -2287,37 +2287,37 @@ yydestruct (const char *yymsg,
switch (yykind)
{
case YYSYMBOL_tVARID: /* tVARID */
-#line 195 "engines/director/lingo/lingo-gr.y"
+#line 194 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
#line 2293 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_tSTRING: /* tSTRING */
-#line 195 "engines/director/lingo/lingo-gr.y"
+#line 194 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
#line 2299 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_tSYMBOL: /* tSYMBOL */
-#line 195 "engines/director/lingo/lingo-gr.y"
+#line 194 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
#line 2305 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_tENDCLAUSE: /* tENDCLAUSE */
-#line 195 "engines/director/lingo/lingo-gr.y"
+#line 194 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
#line 2311 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_CMDID: /* CMDID */
-#line 195 "engines/director/lingo/lingo-gr.y"
+#line 194 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
#line 2317 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_ID: /* ID */
-#line 195 "engines/director/lingo/lingo-gr.y"
+#line 194 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
#line 2323 "engines/director/lingo/lingo-gr.cpp"
break;
@@ -2387,6 +2387,7 @@ yyparse (void)
YYDPRINTF ((stderr, "Starting parse\n"));
yychar = YYEMPTY; /* Cause a token to be read. */
+
goto yysetstate;
@@ -2412,7 +2413,7 @@ yysetstate:
if (yyss + yystacksize - 1 <= yyssp)
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
- goto yyexhaustedlab;
+ YYNOMEM;
#else
{
/* Get the current used size of the three stacks, in elements. */
@@ -2440,7 +2441,7 @@ yysetstate:
# else /* defined YYSTACK_RELOCATE */
/* Extend the stack our own way. */
if (YYMAXDEPTH <= yystacksize)
- goto yyexhaustedlab;
+ YYNOMEM;
yystacksize *= 2;
if (YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
@@ -2451,7 +2452,7 @@ yysetstate:
YY_CAST (union yyalloc *,
YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
if (! yyptr)
- goto yyexhaustedlab;
+ YYNOMEM;
YYSTACK_RELOCATE (yyss_alloc, yyss);
YYSTACK_RELOCATE (yyvs_alloc, yyvs);
# undef YYSTACK_RELOCATE
@@ -2473,6 +2474,7 @@ yysetstate:
}
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
+
if (yystate == YYFINAL)
YYACCEPT;
@@ -2585,1782 +2587,1794 @@ yyreduce:
switch (yyn)
{
case 2: /* script: scriptpartlist */
-#line 201 "engines/director/lingo/lingo-gr.y"
+#line 200 "engines/director/lingo/lingo-gr.y"
{ g_lingo->_compiler->_assemblyAST = new ScriptNode((yyvsp[0].nodelist)); }
-#line 2591 "engines/director/lingo/lingo-gr.cpp"
+#line 2593 "engines/director/lingo/lingo-gr.cpp"
break;
case 3: /* scriptpartlist: scriptpart */
-#line 203 "engines/director/lingo/lingo-gr.y"
+#line 202 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
if ((yyvsp[0].node)) {
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 2602 "engines/director/lingo/lingo-gr.cpp"
+#line 2604 "engines/director/lingo/lingo-gr.cpp"
break;
case 4: /* scriptpartlist: scriptpartlist scriptpart */
-#line 209 "engines/director/lingo/lingo-gr.y"
+#line 208 "engines/director/lingo/lingo-gr.y"
{
if ((yyvsp[0].node)) {
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 2612 "engines/director/lingo/lingo-gr.cpp"
+#line 2614 "engines/director/lingo/lingo-gr.cpp"
break;
case 5: /* scriptpart: '\n' */
-#line 216 "engines/director/lingo/lingo-gr.y"
+#line 215 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 2618 "engines/director/lingo/lingo-gr.cpp"
+#line 2620 "engines/director/lingo/lingo-gr.cpp"
break;
case 10: /* scriptpart: tENDCLAUSE endargdef '\n' */
-#line 221 "engines/director/lingo/lingo-gr.y"
+#line 220 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; delete (yyvsp[-2].s); }
-#line 2624 "engines/director/lingo/lingo-gr.cpp"
+#line 2626 "engines/director/lingo/lingo-gr.cpp"
break;
case 11: /* macro: tMACRO ID idlist '\n' stmtlist */
-#line 250 "engines/director/lingo/lingo-gr.y"
+#line 249 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new HandlerNode((yyvsp[-3].s), (yyvsp[-2].idlist), (yyvsp[0].nodelist)); }
-#line 2630 "engines/director/lingo/lingo-gr.cpp"
+#line 2632 "engines/director/lingo/lingo-gr.cpp"
break;
case 12: /* factory: tFACTORY ID '\n' methodlist */
-#line 254 "engines/director/lingo/lingo-gr.y"
+#line 253 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FactoryNode((yyvsp[-2].s), (yyvsp[0].nodelist)); }
-#line 2636 "engines/director/lingo/lingo-gr.cpp"
+#line 2638 "engines/director/lingo/lingo-gr.cpp"
break;
case 13: /* method: tMETHOD ID idlist '\n' stmtlist */
-#line 256 "engines/director/lingo/lingo-gr.y"
+#line 255 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new HandlerNode((yyvsp[-3].s), (yyvsp[-2].idlist), (yyvsp[0].nodelist)); }
-#line 2642 "engines/director/lingo/lingo-gr.cpp"
+#line 2644 "engines/director/lingo/lingo-gr.cpp"
break;
case 14: /* methodlist: %empty */
-#line 258 "engines/director/lingo/lingo-gr.y"
+#line 257 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 2648 "engines/director/lingo/lingo-gr.cpp"
+#line 2650 "engines/director/lingo/lingo-gr.cpp"
break;
case 16: /* nonemptymethodlist: methodlistline */
-#line 262 "engines/director/lingo/lingo-gr.y"
+#line 261 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
if ((yyvsp[0].node)) {
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 2659 "engines/director/lingo/lingo-gr.cpp"
+#line 2661 "engines/director/lingo/lingo-gr.cpp"
break;
case 17: /* nonemptymethodlist: nonemptymethodlist methodlistline */
-#line 268 "engines/director/lingo/lingo-gr.y"
+#line 267 "engines/director/lingo/lingo-gr.y"
{
if ((yyvsp[0].node)) {
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 2669 "engines/director/lingo/lingo-gr.cpp"
+#line 2671 "engines/director/lingo/lingo-gr.cpp"
break;
case 18: /* methodlistline: '\n' */
-#line 275 "engines/director/lingo/lingo-gr.y"
+#line 274 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 2675 "engines/director/lingo/lingo-gr.cpp"
+#line 2677 "engines/director/lingo/lingo-gr.cpp"
break;
case 20: /* methodlistline: tENDCLAUSE endargdef '\n' */
-#line 277 "engines/director/lingo/lingo-gr.y"
+#line 276 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; delete (yyvsp[-2].s); }
-#line 2681 "engines/director/lingo/lingo-gr.cpp"
+#line 2683 "engines/director/lingo/lingo-gr.cpp"
break;
case 21: /* handler: tON ID idlist '\n' stmtlist tENDCLAUSE endargdef '\n' */
-#line 282 "engines/director/lingo/lingo-gr.y"
+#line 281 "engines/director/lingo/lingo-gr.y"
{ // D3
(yyval.node) = new HandlerNode((yyvsp[-6].s), (yyvsp[-5].idlist), (yyvsp[-3].nodelist));
checkEnd((yyvsp[-2].s), (yyvsp[-6].s), false);
delete (yyvsp[-2].s); }
-#line 2690 "engines/director/lingo/lingo-gr.cpp"
+#line 2692 "engines/director/lingo/lingo-gr.cpp"
break;
case 22: /* handler: tON ID idlist '\n' stmtlist */
-#line 286 "engines/director/lingo/lingo-gr.y"
+#line 285 "engines/director/lingo/lingo-gr.y"
{ // D4. No 'end' clause
(yyval.node) = new HandlerNode((yyvsp[-3].s), (yyvsp[-2].idlist), (yyvsp[0].nodelist)); }
-#line 2697 "engines/director/lingo/lingo-gr.cpp"
+#line 2699 "engines/director/lingo/lingo-gr.cpp"
break;
case 24: /* endargdef: ID */
-#line 291 "engines/director/lingo/lingo-gr.y"
+#line 290 "engines/director/lingo/lingo-gr.y"
{ delete (yyvsp[0].s); }
-#line 2703 "engines/director/lingo/lingo-gr.cpp"
+#line 2705 "engines/director/lingo/lingo-gr.cpp"
break;
case 25: /* endargdef: endargdef ',' ID */
-#line 292 "engines/director/lingo/lingo-gr.y"
+#line 291 "engines/director/lingo/lingo-gr.y"
{ delete (yyvsp[0].s); }
-#line 2709 "engines/director/lingo/lingo-gr.cpp"
+#line 2711 "engines/director/lingo/lingo-gr.cpp"
break;
case 27: /* CMDID: tABBREVIATED */
-#line 300 "engines/director/lingo/lingo-gr.y"
+#line 299 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("abbreviated"); }
-#line 2715 "engines/director/lingo/lingo-gr.cpp"
+#line 2717 "engines/director/lingo/lingo-gr.cpp"
break;
case 28: /* CMDID: tABBREV */
-#line 301 "engines/director/lingo/lingo-gr.y"
+#line 300 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("abbrev"); }
-#line 2721 "engines/director/lingo/lingo-gr.cpp"
+#line 2723 "engines/director/lingo/lingo-gr.cpp"
break;
case 29: /* CMDID: tABBR */
-#line 302 "engines/director/lingo/lingo-gr.y"
+#line 301 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("abbr"); }
-#line 2727 "engines/director/lingo/lingo-gr.cpp"
+#line 2729 "engines/director/lingo/lingo-gr.cpp"
break;
case 30: /* CMDID: tAFTER */
-#line 303 "engines/director/lingo/lingo-gr.y"
+#line 302 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("after"); }
-#line 2733 "engines/director/lingo/lingo-gr.cpp"
+#line 2735 "engines/director/lingo/lingo-gr.cpp"
break;
case 31: /* CMDID: tAND */
-#line 304 "engines/director/lingo/lingo-gr.y"
+#line 303 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("and"); }
-#line 2739 "engines/director/lingo/lingo-gr.cpp"
+#line 2741 "engines/director/lingo/lingo-gr.cpp"
break;
case 32: /* CMDID: tBEFORE */
-#line 305 "engines/director/lingo/lingo-gr.y"
+#line 304 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("before"); }
-#line 2745 "engines/director/lingo/lingo-gr.cpp"
+#line 2747 "engines/director/lingo/lingo-gr.cpp"
break;
case 33: /* CMDID: tCAST */
-#line 306 "engines/director/lingo/lingo-gr.y"
+#line 305 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("cast"); }
-#line 2751 "engines/director/lingo/lingo-gr.cpp"
+#line 2753 "engines/director/lingo/lingo-gr.cpp"
break;
case 34: /* CMDID: tCHAR */
-#line 307 "engines/director/lingo/lingo-gr.y"
+#line 306 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("char"); }
-#line 2757 "engines/director/lingo/lingo-gr.cpp"
+#line 2759 "engines/director/lingo/lingo-gr.cpp"
break;
case 35: /* CMDID: tCHARS */
-#line 308 "engines/director/lingo/lingo-gr.y"
+#line 307 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("chars"); }
-#line 2763 "engines/director/lingo/lingo-gr.cpp"
+#line 2765 "engines/director/lingo/lingo-gr.cpp"
break;
case 36: /* CMDID: tCONTAINS */
-#line 309 "engines/director/lingo/lingo-gr.y"
+#line 308 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("contains"); }
-#line 2769 "engines/director/lingo/lingo-gr.cpp"
+#line 2771 "engines/director/lingo/lingo-gr.cpp"
break;
case 37: /* CMDID: tDATE */
-#line 310 "engines/director/lingo/lingo-gr.y"
+#line 309 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("date"); }
-#line 2775 "engines/director/lingo/lingo-gr.cpp"
+#line 2777 "engines/director/lingo/lingo-gr.cpp"
break;
case 38: /* CMDID: tDELETE */
-#line 311 "engines/director/lingo/lingo-gr.y"
+#line 310 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("delete"); }
-#line 2781 "engines/director/lingo/lingo-gr.cpp"
+#line 2783 "engines/director/lingo/lingo-gr.cpp"
break;
case 39: /* CMDID: tDOWN */
-#line 312 "engines/director/lingo/lingo-gr.y"
+#line 311 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("down"); }
-#line 2787 "engines/director/lingo/lingo-gr.cpp"
+#line 2789 "engines/director/lingo/lingo-gr.cpp"
break;
case 40: /* CMDID: tFIELD */
-#line 313 "engines/director/lingo/lingo-gr.y"
+#line 312 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("field"); }
-#line 2793 "engines/director/lingo/lingo-gr.cpp"
+#line 2795 "engines/director/lingo/lingo-gr.cpp"
break;
case 41: /* CMDID: tFRAME */
-#line 314 "engines/director/lingo/lingo-gr.y"
+#line 313 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("frame"); }
-#line 2799 "engines/director/lingo/lingo-gr.cpp"
+#line 2801 "engines/director/lingo/lingo-gr.cpp"
break;
case 42: /* CMDID: tHILITE */
-#line 315 "engines/director/lingo/lingo-gr.y"
+#line 314 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("hilite"); }
-#line 2805 "engines/director/lingo/lingo-gr.cpp"
+#line 2807 "engines/director/lingo/lingo-gr.cpp"
break;
case 43: /* CMDID: tIN */
-#line 316 "engines/director/lingo/lingo-gr.y"
+#line 315 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("in"); }
-#line 2811 "engines/director/lingo/lingo-gr.cpp"
+#line 2813 "engines/director/lingo/lingo-gr.cpp"
break;
case 44: /* CMDID: tINTERSECTS */
-#line 317 "engines/director/lingo/lingo-gr.y"
+#line 316 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("intersects"); }
-#line 2817 "engines/director/lingo/lingo-gr.cpp"
+#line 2819 "engines/director/lingo/lingo-gr.cpp"
break;
case 45: /* CMDID: tINTO */
-#line 318 "engines/director/lingo/lingo-gr.y"
+#line 317 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("into"); }
-#line 2823 "engines/director/lingo/lingo-gr.cpp"
+#line 2825 "engines/director/lingo/lingo-gr.cpp"
break;
case 46: /* CMDID: tITEM */
-#line 319 "engines/director/lingo/lingo-gr.y"
+#line 318 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("item"); }
-#line 2829 "engines/director/lingo/lingo-gr.cpp"
+#line 2831 "engines/director/lingo/lingo-gr.cpp"
break;
case 47: /* CMDID: tITEMS */
-#line 320 "engines/director/lingo/lingo-gr.y"
+#line 319 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("items"); }
-#line 2835 "engines/director/lingo/lingo-gr.cpp"
+#line 2837 "engines/director/lingo/lingo-gr.cpp"
break;
case 48: /* CMDID: tLAST */
-#line 321 "engines/director/lingo/lingo-gr.y"
+#line 320 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("last"); }
-#line 2841 "engines/director/lingo/lingo-gr.cpp"
+#line 2843 "engines/director/lingo/lingo-gr.cpp"
break;
case 49: /* CMDID: tLINE */
-#line 322 "engines/director/lingo/lingo-gr.y"
+#line 321 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("line"); }
-#line 2847 "engines/director/lingo/lingo-gr.cpp"
+#line 2849 "engines/director/lingo/lingo-gr.cpp"
break;
case 50: /* CMDID: tLINES */
-#line 323 "engines/director/lingo/lingo-gr.y"
+#line 322 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("lines"); }
-#line 2853 "engines/director/lingo/lingo-gr.cpp"
+#line 2855 "engines/director/lingo/lingo-gr.cpp"
break;
case 51: /* CMDID: tLONG */
-#line 324 "engines/director/lingo/lingo-gr.y"
+#line 323 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("long"); }
-#line 2859 "engines/director/lingo/lingo-gr.cpp"
+#line 2861 "engines/director/lingo/lingo-gr.cpp"
break;
case 52: /* CMDID: tMENU */
-#line 325 "engines/director/lingo/lingo-gr.y"
+#line 324 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("menu"); }
-#line 2865 "engines/director/lingo/lingo-gr.cpp"
+#line 2867 "engines/director/lingo/lingo-gr.cpp"
break;
case 53: /* CMDID: tMENUITEM */
-#line 326 "engines/director/lingo/lingo-gr.y"
+#line 325 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("menuItem"); }
-#line 2871 "engines/director/lingo/lingo-gr.cpp"
+#line 2873 "engines/director/lingo/lingo-gr.cpp"
break;
case 54: /* CMDID: tMENUITEMS */
-#line 327 "engines/director/lingo/lingo-gr.y"
+#line 326 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("menuItems"); }
-#line 2877 "engines/director/lingo/lingo-gr.cpp"
+#line 2879 "engines/director/lingo/lingo-gr.cpp"
break;
case 55: /* CMDID: tMOD */
-#line 328 "engines/director/lingo/lingo-gr.y"
+#line 327 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("mod"); }
-#line 2883 "engines/director/lingo/lingo-gr.cpp"
+#line 2885 "engines/director/lingo/lingo-gr.cpp"
break;
case 56: /* CMDID: tMOVIE */
-#line 329 "engines/director/lingo/lingo-gr.y"
+#line 328 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("movie"); }
-#line 2889 "engines/director/lingo/lingo-gr.cpp"
+#line 2891 "engines/director/lingo/lingo-gr.cpp"
break;
case 57: /* CMDID: tNEXT */
-#line 330 "engines/director/lingo/lingo-gr.y"
+#line 329 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("next"); }
-#line 2895 "engines/director/lingo/lingo-gr.cpp"
+#line 2897 "engines/director/lingo/lingo-gr.cpp"
break;
case 58: /* CMDID: tNOT */
-#line 331 "engines/director/lingo/lingo-gr.y"
+#line 330 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("not"); }
-#line 2901 "engines/director/lingo/lingo-gr.cpp"
+#line 2903 "engines/director/lingo/lingo-gr.cpp"
break;
case 59: /* CMDID: tNUMBER */
-#line 332 "engines/director/lingo/lingo-gr.y"
+#line 331 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("number"); }
-#line 2907 "engines/director/lingo/lingo-gr.cpp"
+#line 2909 "engines/director/lingo/lingo-gr.cpp"
break;
case 60: /* CMDID: tOF */
-#line 333 "engines/director/lingo/lingo-gr.y"
+#line 332 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("of"); }
-#line 2913 "engines/director/lingo/lingo-gr.cpp"
+#line 2915 "engines/director/lingo/lingo-gr.cpp"
break;
case 61: /* CMDID: tOR */
-#line 334 "engines/director/lingo/lingo-gr.y"
+#line 333 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("or"); }
-#line 2919 "engines/director/lingo/lingo-gr.cpp"
+#line 2921 "engines/director/lingo/lingo-gr.cpp"
break;
case 62: /* CMDID: tPREVIOUS */
-#line 335 "engines/director/lingo/lingo-gr.y"
+#line 334 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("previous"); }
-#line 2925 "engines/director/lingo/lingo-gr.cpp"
+#line 2927 "engines/director/lingo/lingo-gr.cpp"
break;
case 63: /* CMDID: tREPEAT */
-#line 336 "engines/director/lingo/lingo-gr.y"
+#line 335 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("repeat"); }
-#line 2931 "engines/director/lingo/lingo-gr.cpp"
+#line 2933 "engines/director/lingo/lingo-gr.cpp"
break;
case 64: /* CMDID: tSCRIPT */
-#line 337 "engines/director/lingo/lingo-gr.y"
+#line 336 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("script"); }
-#line 2937 "engines/director/lingo/lingo-gr.cpp"
+#line 2939 "engines/director/lingo/lingo-gr.cpp"
break;
case 65: /* CMDID: tASSERTERROR */
-#line 338 "engines/director/lingo/lingo-gr.y"
+#line 337 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("scummvmAssertError"); }
-#line 2943 "engines/director/lingo/lingo-gr.cpp"
+#line 2945 "engines/director/lingo/lingo-gr.cpp"
break;
case 66: /* CMDID: tSHORT */
-#line 339 "engines/director/lingo/lingo-gr.y"
+#line 338 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("short"); }
-#line 2949 "engines/director/lingo/lingo-gr.cpp"
+#line 2951 "engines/director/lingo/lingo-gr.cpp"
break;
case 67: /* CMDID: tSOUND */
-#line 340 "engines/director/lingo/lingo-gr.y"
+#line 339 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("sound"); }
-#line 2955 "engines/director/lingo/lingo-gr.cpp"
+#line 2957 "engines/director/lingo/lingo-gr.cpp"
break;
case 68: /* CMDID: tSPRITE */
-#line 341 "engines/director/lingo/lingo-gr.y"
+#line 340 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("sprite"); }
-#line 2961 "engines/director/lingo/lingo-gr.cpp"
+#line 2963 "engines/director/lingo/lingo-gr.cpp"
break;
case 69: /* CMDID: tSTARTS */
-#line 342 "engines/director/lingo/lingo-gr.y"
+#line 341 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("starts"); }
-#line 2967 "engines/director/lingo/lingo-gr.cpp"
+#line 2969 "engines/director/lingo/lingo-gr.cpp"
break;
case 70: /* CMDID: tTHE */
-#line 343 "engines/director/lingo/lingo-gr.y"
+#line 342 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("the"); }
-#line 2973 "engines/director/lingo/lingo-gr.cpp"
+#line 2975 "engines/director/lingo/lingo-gr.cpp"
break;
case 71: /* CMDID: tTIME */
-#line 344 "engines/director/lingo/lingo-gr.y"
+#line 343 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("time"); }
-#line 2979 "engines/director/lingo/lingo-gr.cpp"
+#line 2981 "engines/director/lingo/lingo-gr.cpp"
break;
case 72: /* CMDID: tTO */
-#line 345 "engines/director/lingo/lingo-gr.y"
+#line 344 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("to"); }
-#line 2985 "engines/director/lingo/lingo-gr.cpp"
+#line 2987 "engines/director/lingo/lingo-gr.cpp"
break;
case 73: /* CMDID: tWHILE */
-#line 346 "engines/director/lingo/lingo-gr.y"
+#line 345 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("while"); }
-#line 2991 "engines/director/lingo/lingo-gr.cpp"
+#line 2993 "engines/director/lingo/lingo-gr.cpp"
break;
case 74: /* CMDID: tWINDOW */
-#line 347 "engines/director/lingo/lingo-gr.y"
+#line 346 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("window"); }
-#line 2997 "engines/director/lingo/lingo-gr.cpp"
+#line 2999 "engines/director/lingo/lingo-gr.cpp"
break;
case 75: /* CMDID: tWITH */
-#line 348 "engines/director/lingo/lingo-gr.y"
+#line 347 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("with"); }
-#line 3003 "engines/director/lingo/lingo-gr.cpp"
+#line 3005 "engines/director/lingo/lingo-gr.cpp"
break;
case 76: /* CMDID: tWITHIN */
-#line 349 "engines/director/lingo/lingo-gr.y"
+#line 348 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("within"); }
-#line 3009 "engines/director/lingo/lingo-gr.cpp"
+#line 3011 "engines/director/lingo/lingo-gr.cpp"
break;
case 77: /* CMDID: tWORD */
-#line 350 "engines/director/lingo/lingo-gr.y"
+#line 349 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("word"); }
-#line 3015 "engines/director/lingo/lingo-gr.cpp"
+#line 3017 "engines/director/lingo/lingo-gr.cpp"
break;
case 78: /* CMDID: tWORDS */
-#line 351 "engines/director/lingo/lingo-gr.y"
+#line 350 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("words"); }
-#line 3021 "engines/director/lingo/lingo-gr.cpp"
+#line 3023 "engines/director/lingo/lingo-gr.cpp"
break;
case 80: /* ID: tELSE */
-#line 355 "engines/director/lingo/lingo-gr.y"
+#line 354 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("else"); }
-#line 3027 "engines/director/lingo/lingo-gr.cpp"
+#line 3029 "engines/director/lingo/lingo-gr.cpp"
break;
case 81: /* ID: tENDCLAUSE */
-#line 356 "engines/director/lingo/lingo-gr.y"
+#line 355 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("end"); delete (yyvsp[0].s); }
-#line 3033 "engines/director/lingo/lingo-gr.cpp"
+#line 3035 "engines/director/lingo/lingo-gr.cpp"
break;
case 82: /* ID: tEXIT */
-#line 357 "engines/director/lingo/lingo-gr.y"
+#line 356 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("exit"); }
-#line 3039 "engines/director/lingo/lingo-gr.cpp"
+#line 3041 "engines/director/lingo/lingo-gr.cpp"
break;
case 83: /* ID: tFACTORY */
-#line 358 "engines/director/lingo/lingo-gr.y"
+#line 357 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("factory"); }
-#line 3045 "engines/director/lingo/lingo-gr.cpp"
+#line 3047 "engines/director/lingo/lingo-gr.cpp"
break;
case 84: /* ID: tGLOBAL */
-#line 359 "engines/director/lingo/lingo-gr.y"
+#line 358 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("global"); }
-#line 3051 "engines/director/lingo/lingo-gr.cpp"
+#line 3053 "engines/director/lingo/lingo-gr.cpp"
break;
case 85: /* ID: tGO */
-#line 360 "engines/director/lingo/lingo-gr.y"
+#line 359 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("go"); }
-#line 3057 "engines/director/lingo/lingo-gr.cpp"
+#line 3059 "engines/director/lingo/lingo-gr.cpp"
break;
case 86: /* ID: tIF */
-#line 361 "engines/director/lingo/lingo-gr.y"
+#line 360 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("if"); }
-#line 3063 "engines/director/lingo/lingo-gr.cpp"
+#line 3065 "engines/director/lingo/lingo-gr.cpp"
break;
case 87: /* ID: tINSTANCE */
-#line 362 "engines/director/lingo/lingo-gr.y"
+#line 361 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("instance"); }
-#line 3069 "engines/director/lingo/lingo-gr.cpp"
+#line 3071 "engines/director/lingo/lingo-gr.cpp"
break;
case 88: /* ID: tMACRO */
-#line 363 "engines/director/lingo/lingo-gr.y"
+#line 362 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("macro"); }
-#line 3075 "engines/director/lingo/lingo-gr.cpp"
+#line 3077 "engines/director/lingo/lingo-gr.cpp"
break;
case 89: /* ID: tMETHOD */
-#line 364 "engines/director/lingo/lingo-gr.y"
+#line 363 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("method"); }
-#line 3081 "engines/director/lingo/lingo-gr.cpp"
+#line 3083 "engines/director/lingo/lingo-gr.cpp"
break;
case 90: /* ID: tON */
-#line 365 "engines/director/lingo/lingo-gr.y"
+#line 364 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("on"); }
-#line 3087 "engines/director/lingo/lingo-gr.cpp"
+#line 3089 "engines/director/lingo/lingo-gr.cpp"
break;
case 91: /* ID: tOPEN */
-#line 366 "engines/director/lingo/lingo-gr.y"
+#line 365 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("open"); }
-#line 3093 "engines/director/lingo/lingo-gr.cpp"
+#line 3095 "engines/director/lingo/lingo-gr.cpp"
break;
case 92: /* ID: tPLAY */
-#line 367 "engines/director/lingo/lingo-gr.y"
+#line 366 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("play"); }
-#line 3099 "engines/director/lingo/lingo-gr.cpp"
+#line 3101 "engines/director/lingo/lingo-gr.cpp"
break;
case 93: /* ID: tPROPERTY */
-#line 368 "engines/director/lingo/lingo-gr.y"
+#line 367 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("property"); }
-#line 3105 "engines/director/lingo/lingo-gr.cpp"
+#line 3107 "engines/director/lingo/lingo-gr.cpp"
break;
case 94: /* ID: tPUT */
-#line 369 "engines/director/lingo/lingo-gr.y"
+#line 368 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("put"); }
-#line 3111 "engines/director/lingo/lingo-gr.cpp"
+#line 3113 "engines/director/lingo/lingo-gr.cpp"
break;
case 95: /* ID: tSET */
-#line 370 "engines/director/lingo/lingo-gr.y"
+#line 369 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("set"); }
-#line 3117 "engines/director/lingo/lingo-gr.cpp"
+#line 3119 "engines/director/lingo/lingo-gr.cpp"
break;
case 96: /* ID: tTELL */
-#line 371 "engines/director/lingo/lingo-gr.y"
+#line 370 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("tell"); }
-#line 3123 "engines/director/lingo/lingo-gr.cpp"
+#line 3125 "engines/director/lingo/lingo-gr.cpp"
break;
case 97: /* ID: tTHEN */
-#line 372 "engines/director/lingo/lingo-gr.y"
+#line 371 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("then"); }
-#line 3129 "engines/director/lingo/lingo-gr.cpp"
+#line 3131 "engines/director/lingo/lingo-gr.cpp"
break;
case 98: /* idlist: %empty */
-#line 375 "engines/director/lingo/lingo-gr.y"
+#line 374 "engines/director/lingo/lingo-gr.y"
{ (yyval.idlist) = new IDList; }
-#line 3135 "engines/director/lingo/lingo-gr.cpp"
+#line 3137 "engines/director/lingo/lingo-gr.cpp"
break;
case 101: /* nonemptyidlist: ID */
-#line 380 "engines/director/lingo/lingo-gr.y"
+#line 379 "engines/director/lingo/lingo-gr.y"
{
Common::Array<Common::String *> *list = new IDList;
list->push_back((yyvsp[0].s));
(yyval.idlist) = list; }
-#line 3144 "engines/director/lingo/lingo-gr.cpp"
+#line 3146 "engines/director/lingo/lingo-gr.cpp"
break;
case 102: /* nonemptyidlist: nonemptyidlist ',' ID */
-#line 384 "engines/director/lingo/lingo-gr.y"
+#line 383 "engines/director/lingo/lingo-gr.y"
{
(yyvsp[-2].idlist)->push_back((yyvsp[0].s));
(yyval.idlist) = (yyvsp[-2].idlist); }
-#line 3152 "engines/director/lingo/lingo-gr.cpp"
+#line 3154 "engines/director/lingo/lingo-gr.cpp"
break;
case 104: /* stmt: tENDIF '\n' */
-#line 395 "engines/director/lingo/lingo-gr.y"
+#line 394 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 3158 "engines/director/lingo/lingo-gr.cpp"
+#line 3160 "engines/director/lingo/lingo-gr.cpp"
break;
case 114: /* proc: CMDID cmdargs '\n' */
-#line 411 "engines/director/lingo/lingo-gr.y"
+#line 410 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode((yyvsp[-2].s), (yyvsp[-1].nodelist), g_lingo->_compiler->_linenumber - 1); }
-#line 3164 "engines/director/lingo/lingo-gr.cpp"
+#line 3166 "engines/director/lingo/lingo-gr.cpp"
break;
case 115: /* proc: tPUT cmdargs '\n' */
-#line 412 "engines/director/lingo/lingo-gr.y"
+#line 411 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("put"), (yyvsp[-1].nodelist), g_lingo->_compiler->_linenumber - 1); }
-#line 3170 "engines/director/lingo/lingo-gr.cpp"
+#line 3172 "engines/director/lingo/lingo-gr.cpp"
break;
case 116: /* proc: tGO cmdargs '\n' */
-#line 413 "engines/director/lingo/lingo-gr.y"
+#line 412 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("go"), (yyvsp[-1].nodelist), g_lingo->_compiler->_linenumber - 1); }
-#line 3176 "engines/director/lingo/lingo-gr.cpp"
+#line 3178 "engines/director/lingo/lingo-gr.cpp"
break;
case 117: /* proc: tGO frameargs '\n' */
-#line 414 "engines/director/lingo/lingo-gr.y"
+#line 413 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("go"), (yyvsp[-1].nodelist), g_lingo->_compiler->_linenumber - 1); }
-#line 3182 "engines/director/lingo/lingo-gr.cpp"
+#line 3184 "engines/director/lingo/lingo-gr.cpp"
break;
case 118: /* proc: tPLAY cmdargs '\n' */
-#line 415 "engines/director/lingo/lingo-gr.y"
+#line 414 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("play"), (yyvsp[-1].nodelist), g_lingo->_compiler->_linenumber - 1); }
-#line 3188 "engines/director/lingo/lingo-gr.cpp"
+#line 3190 "engines/director/lingo/lingo-gr.cpp"
break;
case 119: /* proc: tPLAY frameargs '\n' */
-#line 416 "engines/director/lingo/lingo-gr.y"
+#line 415 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("play"), (yyvsp[-1].nodelist), g_lingo->_compiler->_linenumber - 1); }
-#line 3194 "engines/director/lingo/lingo-gr.cpp"
+#line 3196 "engines/director/lingo/lingo-gr.cpp"
break;
case 120: /* proc: tOPEN cmdargs '\n' */
-#line 417 "engines/director/lingo/lingo-gr.y"
+#line 416 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("open"), (yyvsp[-1].nodelist), g_lingo->_compiler->_linenumber - 1); }
-#line 3200 "engines/director/lingo/lingo-gr.cpp"
+#line 3202 "engines/director/lingo/lingo-gr.cpp"
break;
case 121: /* proc: tOPEN expr tWITH expr '\n' */
-#line 418 "engines/director/lingo/lingo-gr.y"
+#line 417 "engines/director/lingo/lingo-gr.y"
{
NodeList *args = new NodeList;
args->push_back((yyvsp[-3].node));
args->push_back((yyvsp[-1].node));
(yyval.node) = new CmdNode(new Common::String("open"), args, g_lingo->_compiler->_linenumber - 1); }
-#line 3210 "engines/director/lingo/lingo-gr.cpp"
+#line 3212 "engines/director/lingo/lingo-gr.cpp"
break;
case 122: /* proc: tNEXT tREPEAT '\n' */
-#line 423 "engines/director/lingo/lingo-gr.y"
+#line 422 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new NextRepeatNode(); }
-#line 3216 "engines/director/lingo/lingo-gr.cpp"
+#line 3218 "engines/director/lingo/lingo-gr.cpp"
break;
case 123: /* proc: tEXIT tREPEAT '\n' */
-#line 424 "engines/director/lingo/lingo-gr.y"
+#line 423 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new ExitRepeatNode(); }
-#line 3222 "engines/director/lingo/lingo-gr.cpp"
+#line 3224 "engines/director/lingo/lingo-gr.cpp"
break;
case 124: /* proc: tEXIT '\n' */
-#line 425 "engines/director/lingo/lingo-gr.y"
+#line 424 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new ExitNode(); }
-#line 3228 "engines/director/lingo/lingo-gr.cpp"
+#line 3230 "engines/director/lingo/lingo-gr.cpp"
break;
case 125: /* proc: tDELETE chunk '\n' */
-#line 426 "engines/director/lingo/lingo-gr.y"
+#line 425 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new DeleteNode((yyvsp[-1].node)); }
-#line 3234 "engines/director/lingo/lingo-gr.cpp"
+#line 3236 "engines/director/lingo/lingo-gr.cpp"
break;
case 126: /* proc: tHILITE chunk '\n' */
-#line 427 "engines/director/lingo/lingo-gr.y"
+#line 426 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new HiliteNode((yyvsp[-1].node)); }
-#line 3240 "engines/director/lingo/lingo-gr.cpp"
+#line 3242 "engines/director/lingo/lingo-gr.cpp"
break;
case 127: /* proc: tASSERTERROR stmtoneliner */
-#line 428 "engines/director/lingo/lingo-gr.y"
+#line 427 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new AssertErrorNode((yyvsp[0].node)); }
-#line 3246 "engines/director/lingo/lingo-gr.cpp"
+#line 3248 "engines/director/lingo/lingo-gr.cpp"
break;
case 128: /* cmdargs: %empty */
-#line 431 "engines/director/lingo/lingo-gr.y"
+#line 430 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd`
(yyval.nodelist) = new NodeList; }
-#line 3254 "engines/director/lingo/lingo-gr.cpp"
+#line 3256 "engines/director/lingo/lingo-gr.cpp"
break;
case 129: /* cmdargs: expr trailingcomma */
-#line 434 "engines/director/lingo/lingo-gr.y"
+#line 433 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd arg` and `cmd(arg)`
NodeList *args = new NodeList;
args->push_back((yyvsp[-1].node));
(yyval.nodelist) = args; }
-#line 3264 "engines/director/lingo/lingo-gr.cpp"
+#line 3266 "engines/director/lingo/lingo-gr.cpp"
break;
case 130: /* cmdargs: expr ',' nonemptyexprlist trailingcomma */
-#line 439 "engines/director/lingo/lingo-gr.y"
+#line 438 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd args, ...)
(yyvsp[-1].nodelist)->insert_at(0, (yyvsp[-3].node));
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3273 "engines/director/lingo/lingo-gr.cpp"
+#line 3275 "engines/director/lingo/lingo-gr.cpp"
break;
case 131: /* cmdargs: expr expr_nounarymath trailingcomma */
-#line 443 "engines/director/lingo/lingo-gr.y"
+#line 442 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd arg arg`
NodeList *args = new NodeList;
args->push_back((yyvsp[-2].node));
args->push_back((yyvsp[-1].node));
(yyval.nodelist) = args; }
-#line 3284 "engines/director/lingo/lingo-gr.cpp"
+#line 3286 "engines/director/lingo/lingo-gr.cpp"
break;
case 132: /* cmdargs: expr expr_nounarymath ',' nonemptyexprlist trailingcomma */
-#line 449 "engines/director/lingo/lingo-gr.y"
+#line 448 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd arg arg, ...`
(yyvsp[-1].nodelist)->insert_at(0, (yyvsp[-3].node));
(yyvsp[-1].nodelist)->insert_at(0, (yyvsp[-4].node));
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3294 "engines/director/lingo/lingo-gr.cpp"
+#line 3296 "engines/director/lingo/lingo-gr.cpp"
break;
case 133: /* cmdargs: '(' ')' */
-#line 454 "engines/director/lingo/lingo-gr.y"
+#line 453 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd()`
(yyval.nodelist) = new NodeList; }
-#line 3302 "engines/director/lingo/lingo-gr.cpp"
+#line 3304 "engines/director/lingo/lingo-gr.cpp"
break;
case 134: /* cmdargs: '(' expr ',' ')' */
-#line 457 "engines/director/lingo/lingo-gr.y"
+#line 456 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd(args,)`
NodeList *args = new NodeList;
args->push_back((yyvsp[-2].node));
(yyval.nodelist) = args; }
-#line 3312 "engines/director/lingo/lingo-gr.cpp"
+#line 3314 "engines/director/lingo/lingo-gr.cpp"
break;
case 135: /* cmdargs: '(' expr ',' nonemptyexprlist trailingcomma ')' */
-#line 462 "engines/director/lingo/lingo-gr.y"
+#line 461 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd(args, ...)`
(yyvsp[-2].nodelist)->insert_at(0, (yyvsp[-4].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 3321 "engines/director/lingo/lingo-gr.cpp"
+#line 3323 "engines/director/lingo/lingo-gr.cpp"
break;
case 138: /* frameargs: tFRAME expr */
-#line 474 "engines/director/lingo/lingo-gr.y"
+#line 473 "engines/director/lingo/lingo-gr.y"
{
// This matches `play frame arg`
NodeList *args = new NodeList;
args->push_back(new FrameNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3331 "engines/director/lingo/lingo-gr.cpp"
+#line 3333 "engines/director/lingo/lingo-gr.cpp"
break;
case 139: /* frameargs: tMOVIE expr */
-#line 479 "engines/director/lingo/lingo-gr.y"
+#line 478 "engines/director/lingo/lingo-gr.y"
{
// This matches `play movie arg`
NodeList *args = new NodeList;
args->push_back(new IntNode(1));
args->push_back(new MovieNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3342 "engines/director/lingo/lingo-gr.cpp"
+#line 3344 "engines/director/lingo/lingo-gr.cpp"
break;
case 140: /* frameargs: tFRAME expr tOF tMOVIE expr */
-#line 485 "engines/director/lingo/lingo-gr.y"
+#line 484 "engines/director/lingo/lingo-gr.y"
{
// This matches `play frame arg of movie arg`
NodeList *args = new NodeList;
args->push_back(new FrameNode((yyvsp[-3].node)));
args->push_back(new MovieNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3353 "engines/director/lingo/lingo-gr.cpp"
+#line 3355 "engines/director/lingo/lingo-gr.cpp"
break;
case 141: /* frameargs: expr tOF tMOVIE expr */
-#line 491 "engines/director/lingo/lingo-gr.y"
+#line 490 "engines/director/lingo/lingo-gr.y"
{
// This matches `play arg of movie arg` (weird but valid)
NodeList *args = new NodeList;
args->push_back((yyvsp[-3].node));
args->push_back(new MovieNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3364 "engines/director/lingo/lingo-gr.cpp"
+#line 3366 "engines/director/lingo/lingo-gr.cpp"
break;
case 142: /* frameargs: tFRAME expr expr_nounarymath */
-#line 497 "engines/director/lingo/lingo-gr.y"
+#line 496 "engines/director/lingo/lingo-gr.y"
{
// This matches `play frame arg arg` (also weird but valid)
NodeList *args = new NodeList;
args->push_back(new FrameNode((yyvsp[-1].node)));
args->push_back((yyvsp[0].node));
(yyval.nodelist) = args; }
-#line 3375 "engines/director/lingo/lingo-gr.cpp"
+#line 3377 "engines/director/lingo/lingo-gr.cpp"
break;
case 143: /* asgn: tPUT expr tINTO varorchunk '\n' */
-#line 505 "engines/director/lingo/lingo-gr.y"
+#line 504 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PutIntoNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3381 "engines/director/lingo/lingo-gr.cpp"
+#line 3383 "engines/director/lingo/lingo-gr.cpp"
break;
case 144: /* asgn: tPUT expr tAFTER varorchunk '\n' */
-#line 506 "engines/director/lingo/lingo-gr.y"
+#line 505 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PutAfterNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3387 "engines/director/lingo/lingo-gr.cpp"
+#line 3389 "engines/director/lingo/lingo-gr.cpp"
break;
case 145: /* asgn: tPUT expr tBEFORE varorchunk '\n' */
-#line 507 "engines/director/lingo/lingo-gr.y"
+#line 506 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PutBeforeNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3393 "engines/director/lingo/lingo-gr.cpp"
+#line 3395 "engines/director/lingo/lingo-gr.cpp"
break;
case 146: /* asgn: tSET varorthe to expr '\n' */
-#line 508 "engines/director/lingo/lingo-gr.y"
+#line 507 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SetNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3399 "engines/director/lingo/lingo-gr.cpp"
+#line 3401 "engines/director/lingo/lingo-gr.cpp"
break;
case 149: /* definevars: tGLOBAL idlist '\n' */
-#line 513 "engines/director/lingo/lingo-gr.y"
+#line 512 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new GlobalNode((yyvsp[-1].idlist)); }
-#line 3405 "engines/director/lingo/lingo-gr.cpp"
+#line 3407 "engines/director/lingo/lingo-gr.cpp"
break;
case 150: /* definevars: tPROPERTY idlist '\n' */
-#line 514 "engines/director/lingo/lingo-gr.y"
+#line 513 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropertyNode((yyvsp[-1].idlist)); }
-#line 3411 "engines/director/lingo/lingo-gr.cpp"
+#line 3413 "engines/director/lingo/lingo-gr.cpp"
break;
case 151: /* definevars: tINSTANCE idlist '\n' */
-#line 515 "engines/director/lingo/lingo-gr.y"
+#line 514 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new InstanceNode((yyvsp[-1].idlist)); }
-#line 3417 "engines/director/lingo/lingo-gr.cpp"
+#line 3419 "engines/director/lingo/lingo-gr.cpp"
break;
case 152: /* ifstmt: tIF expr tTHEN stmt */
-#line 518 "engines/director/lingo/lingo-gr.y"
+#line 517 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist = new NodeList;
stmtlist->push_back((yyvsp[0].node));
(yyval.node) = new IfStmtNode((yyvsp[-2].node), stmtlist); }
-#line 3426 "engines/director/lingo/lingo-gr.cpp"
+#line 3428 "engines/director/lingo/lingo-gr.cpp"
break;
case 153: /* ifstmt: tIF expr tTHEN '\n' stmtlist_insideif endif */
-#line 522 "engines/director/lingo/lingo-gr.y"
+#line 521 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new IfStmtNode((yyvsp[-4].node), (yyvsp[-1].nodelist)); }
-#line 3433 "engines/director/lingo/lingo-gr.cpp"
+#line 3435 "engines/director/lingo/lingo-gr.cpp"
break;
case 154: /* ifelsestmt: tIF expr tTHEN stmt tELSE stmt */
-#line 526 "engines/director/lingo/lingo-gr.y"
+#line 525 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist1 = new NodeList;
stmtlist1->push_back((yyvsp[-2].node));
NodeList *stmtlist2 = new NodeList;
stmtlist2->push_back((yyvsp[0].node));
(yyval.node) = new IfElseStmtNode((yyvsp[-4].node), stmtlist1, stmtlist2); }
-#line 3444 "engines/director/lingo/lingo-gr.cpp"
+#line 3446 "engines/director/lingo/lingo-gr.cpp"
break;
case 155: /* ifelsestmt: tIF expr tTHEN stmt tELSE '\n' stmtlist_insideif endif */
-#line 532 "engines/director/lingo/lingo-gr.y"
+#line 531 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist1 = new NodeList;
stmtlist1->push_back((yyvsp[-4].node));
(yyval.node) = new IfElseStmtNode((yyvsp[-6].node), stmtlist1, (yyvsp[-1].nodelist)); }
-#line 3453 "engines/director/lingo/lingo-gr.cpp"
+#line 3455 "engines/director/lingo/lingo-gr.cpp"
break;
case 156: /* ifelsestmt: tIF expr tTHEN '\n' stmtlist_insideif tELSE stmt */
-#line 536 "engines/director/lingo/lingo-gr.y"
+#line 535 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist2 = new NodeList;
stmtlist2->push_back((yyvsp[0].node));
(yyval.node) = new IfElseStmtNode((yyvsp[-5].node), (yyvsp[-2].nodelist), stmtlist2); }
-#line 3462 "engines/director/lingo/lingo-gr.cpp"
+#line 3464 "engines/director/lingo/lingo-gr.cpp"
break;
case 157: /* ifelsestmt: tIF expr tTHEN '\n' stmtlist_insideif tELSE '\n' stmtlist_insideif endif */
-#line 540 "engines/director/lingo/lingo-gr.y"
+#line 539 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new IfElseStmtNode((yyvsp[-7].node), (yyvsp[-4].nodelist), (yyvsp[-1].nodelist)); }
-#line 3469 "engines/director/lingo/lingo-gr.cpp"
+#line 3471 "engines/director/lingo/lingo-gr.cpp"
break;
case 158: /* endif: %empty */
-#line 544 "engines/director/lingo/lingo-gr.y"
+#line 543 "engines/director/lingo/lingo-gr.y"
{ warning("LingoCompiler::parse: no end if"); }
-#line 3475 "engines/director/lingo/lingo-gr.cpp"
+#line 3477 "engines/director/lingo/lingo-gr.cpp"
break;
case 160: /* loop: tREPEAT tWHILE expr '\n' stmtlist tENDREPEAT '\n' */
-#line 547 "engines/director/lingo/lingo-gr.y"
+#line 546 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWhileNode((yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3482 "engines/director/lingo/lingo-gr.cpp"
+#line 3484 "engines/director/lingo/lingo-gr.cpp"
break;
case 161: /* loop: tREPEAT tWITH ID tEQ expr tTO expr '\n' stmtlist tENDREPEAT '\n' */
-#line 549 "engines/director/lingo/lingo-gr.y"
+#line 548 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWithToNode((yyvsp[-8].s), (yyvsp[-6].node), false, (yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3489 "engines/director/lingo/lingo-gr.cpp"
+#line 3491 "engines/director/lingo/lingo-gr.cpp"
break;
case 162: /* loop: tREPEAT tWITH ID tEQ expr tDOWN tTO expr '\n' stmtlist tENDREPEAT '\n' */
-#line 551 "engines/director/lingo/lingo-gr.y"
+#line 550 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWithToNode((yyvsp[-9].s), (yyvsp[-7].node), true, (yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3496 "engines/director/lingo/lingo-gr.cpp"
+#line 3498 "engines/director/lingo/lingo-gr.cpp"
break;
case 163: /* loop: tREPEAT tWITH ID tIN expr '\n' stmtlist tENDREPEAT '\n' */
-#line 553 "engines/director/lingo/lingo-gr.y"
+#line 552 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWithInNode((yyvsp[-6].s), (yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3503 "engines/director/lingo/lingo-gr.cpp"
+#line 3505 "engines/director/lingo/lingo-gr.cpp"
break;
case 164: /* tell: tTELL expr tTO stmtoneliner */
-#line 557 "engines/director/lingo/lingo-gr.y"
+#line 556 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist = new NodeList;
stmtlist->push_back((yyvsp[0].node));
(yyval.node) = new TellNode((yyvsp[-2].node), stmtlist); }
-#line 3512 "engines/director/lingo/lingo-gr.cpp"
+#line 3514 "engines/director/lingo/lingo-gr.cpp"
break;
case 165: /* tell: tTELL expr '\n' stmtlist tENDTELL '\n' */
-#line 561 "engines/director/lingo/lingo-gr.y"
+#line 560 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new TellNode((yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3519 "engines/director/lingo/lingo-gr.cpp"
+#line 3521 "engines/director/lingo/lingo-gr.cpp"
break;
case 166: /* when: tWHEN '\n' */
-#line 565 "engines/director/lingo/lingo-gr.y"
+#line 564 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new WhenNode((yyvsp[-1].w).eventName, (yyvsp[-1].w).stmt); }
-#line 3525 "engines/director/lingo/lingo-gr.cpp"
+#line 3527 "engines/director/lingo/lingo-gr.cpp"
break;
case 167: /* stmtlist: %empty */
-#line 567 "engines/director/lingo/lingo-gr.y"
+#line 566 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 3531 "engines/director/lingo/lingo-gr.cpp"
+#line 3533 "engines/director/lingo/lingo-gr.cpp"
break;
case 169: /* nonemptystmtlist: stmtlistline */
-#line 572 "engines/director/lingo/lingo-gr.y"
+#line 571 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
if ((yyvsp[0].node)) {
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 3542 "engines/director/lingo/lingo-gr.cpp"
+#line 3544 "engines/director/lingo/lingo-gr.cpp"
break;
case 170: /* nonemptystmtlist: nonemptystmtlist stmtlistline */
-#line 578 "engines/director/lingo/lingo-gr.y"
+#line 577 "engines/director/lingo/lingo-gr.y"
{
if ((yyvsp[0].node)) {
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3552 "engines/director/lingo/lingo-gr.cpp"
+#line 3554 "engines/director/lingo/lingo-gr.cpp"
break;
case 171: /* stmtlistline: '\n' */
-#line 585 "engines/director/lingo/lingo-gr.y"
+#line 584 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 3558 "engines/director/lingo/lingo-gr.cpp"
+#line 3560 "engines/director/lingo/lingo-gr.cpp"
break;
case 173: /* stmtlist_insideif: %empty */
-#line 589 "engines/director/lingo/lingo-gr.y"
+#line 588 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 3564 "engines/director/lingo/lingo-gr.cpp"
+#line 3566 "engines/director/lingo/lingo-gr.cpp"
break;
case 175: /* nonemptystmtlist_insideif: stmtlistline_insideif */
-#line 594 "engines/director/lingo/lingo-gr.y"
+#line 593 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
if ((yyvsp[0].node)) {
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 3575 "engines/director/lingo/lingo-gr.cpp"
+#line 3577 "engines/director/lingo/lingo-gr.cpp"
break;
case 176: /* nonemptystmtlist_insideif: nonemptystmtlist_insideif stmtlistline_insideif */
-#line 600 "engines/director/lingo/lingo-gr.y"
+#line 599 "engines/director/lingo/lingo-gr.y"
{
if ((yyvsp[0].node)) {
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3585 "engines/director/lingo/lingo-gr.cpp"
+#line 3587 "engines/director/lingo/lingo-gr.cpp"
break;
case 177: /* stmtlistline_insideif: '\n' */
-#line 607 "engines/director/lingo/lingo-gr.y"
+#line 606 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 3591 "engines/director/lingo/lingo-gr.cpp"
+#line 3593 "engines/director/lingo/lingo-gr.cpp"
break;
case 179: /* simpleexpr_nounarymath: tINT */
-#line 614 "engines/director/lingo/lingo-gr.y"
+#line 613 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new IntNode((yyvsp[0].i)); }
-#line 3597 "engines/director/lingo/lingo-gr.cpp"
+#line 3599 "engines/director/lingo/lingo-gr.cpp"
break;
case 180: /* simpleexpr_nounarymath: tFLOAT */
-#line 615 "engines/director/lingo/lingo-gr.y"
+#line 614 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FloatNode((yyvsp[0].f)); }
-#line 3603 "engines/director/lingo/lingo-gr.cpp"
+#line 3605 "engines/director/lingo/lingo-gr.cpp"
break;
case 181: /* simpleexpr_nounarymath: tSYMBOL */
-#line 616 "engines/director/lingo/lingo-gr.y"
+#line 615 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SymbolNode((yyvsp[0].s)); }
-#line 3609 "engines/director/lingo/lingo-gr.cpp"
+#line 3611 "engines/director/lingo/lingo-gr.cpp"
break;
case 182: /* simpleexpr_nounarymath: tSTRING */
-#line 617 "engines/director/lingo/lingo-gr.y"
+#line 616 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new StringNode((yyvsp[0].s)); }
-#line 3615 "engines/director/lingo/lingo-gr.cpp"
+#line 3617 "engines/director/lingo/lingo-gr.cpp"
break;
case 183: /* simpleexpr_nounarymath: tNOT simpleexpr */
-#line 618 "engines/director/lingo/lingo-gr.y"
+#line 617 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new UnaryOpNode(LC::c_not, (yyvsp[0].node)); }
-#line 3621 "engines/director/lingo/lingo-gr.cpp"
+#line 3623 "engines/director/lingo/lingo-gr.cpp"
break;
case 184: /* simpleexpr_nounarymath: ID '(' ')' */
-#line 619 "engines/director/lingo/lingo-gr.y"
+#line 618 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode((yyvsp[-2].s), new NodeList); }
-#line 3627 "engines/director/lingo/lingo-gr.cpp"
+#line 3629 "engines/director/lingo/lingo-gr.cpp"
break;
case 185: /* simpleexpr_nounarymath: ID '(' nonemptyexprlist trailingcomma ')' */
-#line 620 "engines/director/lingo/lingo-gr.y"
+#line 619 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode((yyvsp[-4].s), (yyvsp[-2].nodelist)); }
-#line 3633 "engines/director/lingo/lingo-gr.cpp"
+#line 3635 "engines/director/lingo/lingo-gr.cpp"
break;
case 186: /* simpleexpr_nounarymath: '(' expr ')' */
-#line 621 "engines/director/lingo/lingo-gr.y"
+#line 620 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = (yyvsp[-1].node); }
-#line 3639 "engines/director/lingo/lingo-gr.cpp"
+#line 3641 "engines/director/lingo/lingo-gr.cpp"
break;
case 192: /* var: ID */
-#line 629 "engines/director/lingo/lingo-gr.y"
+#line 628 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new VarNode((yyvsp[0].s)); }
-#line 3645 "engines/director/lingo/lingo-gr.cpp"
+#line 3647 "engines/director/lingo/lingo-gr.cpp"
break;
case 197: /* chunk: tFIELD refargs */
-#line 639 "engines/director/lingo/lingo-gr.y"
+#line 638 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("field"), (yyvsp[0].nodelist)); }
-#line 3651 "engines/director/lingo/lingo-gr.cpp"
+#line 3653 "engines/director/lingo/lingo-gr.cpp"
break;
case 198: /* chunk: tCAST refargs */
-#line 640 "engines/director/lingo/lingo-gr.y"
+#line 639 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("cast"), (yyvsp[0].nodelist)); }
-#line 3657 "engines/director/lingo/lingo-gr.cpp"
+#line 3659 "engines/director/lingo/lingo-gr.cpp"
break;
case 199: /* chunk: tCHAR expr tOF simpleexpr */
-#line 641 "engines/director/lingo/lingo-gr.y"
+#line 640 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkChar, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3664 "engines/director/lingo/lingo-gr.cpp"
+#line 3666 "engines/director/lingo/lingo-gr.cpp"
break;
case 200: /* chunk: tCHAR expr tTO expr tOF simpleexpr */
-#line 643 "engines/director/lingo/lingo-gr.y"
+#line 642 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkChar, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3671 "engines/director/lingo/lingo-gr.cpp"
+#line 3673 "engines/director/lingo/lingo-gr.cpp"
break;
case 201: /* chunk: tWORD expr tOF simpleexpr */
-#line 645 "engines/director/lingo/lingo-gr.y"
+#line 644 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkWord, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3678 "engines/director/lingo/lingo-gr.cpp"
+#line 3680 "engines/director/lingo/lingo-gr.cpp"
break;
case 202: /* chunk: tWORD expr tTO expr tOF simpleexpr */
-#line 647 "engines/director/lingo/lingo-gr.y"
+#line 646 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkWord, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3685 "engines/director/lingo/lingo-gr.cpp"
+#line 3687 "engines/director/lingo/lingo-gr.cpp"
break;
case 203: /* chunk: tITEM expr tOF simpleexpr */
-#line 649 "engines/director/lingo/lingo-gr.y"
+#line 648 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkItem, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3692 "engines/director/lingo/lingo-gr.cpp"
+#line 3694 "engines/director/lingo/lingo-gr.cpp"
break;
case 204: /* chunk: tITEM expr tTO expr tOF simpleexpr */
-#line 651 "engines/director/lingo/lingo-gr.y"
+#line 650 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkItem, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3699 "engines/director/lingo/lingo-gr.cpp"
+#line 3701 "engines/director/lingo/lingo-gr.cpp"
break;
case 205: /* chunk: tLINE expr tOF simpleexpr */
-#line 653 "engines/director/lingo/lingo-gr.y"
+#line 652 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkLine, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3706 "engines/director/lingo/lingo-gr.cpp"
+#line 3708 "engines/director/lingo/lingo-gr.cpp"
break;
case 206: /* chunk: tLINE expr tTO expr tOF simpleexpr */
-#line 655 "engines/director/lingo/lingo-gr.y"
+#line 654 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkLine, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3713 "engines/director/lingo/lingo-gr.cpp"
+#line 3715 "engines/director/lingo/lingo-gr.cpp"
break;
case 207: /* chunk: tTHE tLAST chunktype inof simpleexpr */
-#line 657 "engines/director/lingo/lingo-gr.y"
+#line 656 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheLastNode((yyvsp[-2].chunktype), (yyvsp[0].node)); }
-#line 3719 "engines/director/lingo/lingo-gr.cpp"
+#line 3721 "engines/director/lingo/lingo-gr.cpp"
break;
case 208: /* chunktype: tCHAR */
-#line 660 "engines/director/lingo/lingo-gr.y"
+#line 659 "engines/director/lingo/lingo-gr.y"
{ (yyval.chunktype) = kChunkChar; }
-#line 3725 "engines/director/lingo/lingo-gr.cpp"
+#line 3727 "engines/director/lingo/lingo-gr.cpp"
break;
case 209: /* chunktype: tWORD */
-#line 661 "engines/director/lingo/lingo-gr.y"
+#line 660 "engines/director/lingo/lingo-gr.y"
{ (yyval.chunktype) = kChunkWord; }
-#line 3731 "engines/director/lingo/lingo-gr.cpp"
+#line 3733 "engines/director/lingo/lingo-gr.cpp"
break;
case 210: /* chunktype: tITEM */
-#line 662 "engines/director/lingo/lingo-gr.y"
+#line 661 "engines/director/lingo/lingo-gr.y"
{ (yyval.chunktype) = kChunkItem; }
-#line 3737 "engines/director/lingo/lingo-gr.cpp"
+#line 3739 "engines/director/lingo/lingo-gr.cpp"
break;
case 211: /* chunktype: tLINE */
-#line 663 "engines/director/lingo/lingo-gr.y"
+#line 662 "engines/director/lingo/lingo-gr.y"
{ (yyval.chunktype) = kChunkLine; }
-#line 3743 "engines/director/lingo/lingo-gr.cpp"
+#line 3745 "engines/director/lingo/lingo-gr.cpp"
break;
case 212: /* object: tSCRIPT refargs */
-#line 666 "engines/director/lingo/lingo-gr.y"
+#line 665 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("script"), (yyvsp[0].nodelist)); }
-#line 3749 "engines/director/lingo/lingo-gr.cpp"
+#line 3751 "engines/director/lingo/lingo-gr.cpp"
break;
case 213: /* object: tWINDOW refargs */
-#line 667 "engines/director/lingo/lingo-gr.y"
+#line 666 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("window"), (yyvsp[0].nodelist)); }
-#line 3755 "engines/director/lingo/lingo-gr.cpp"
+#line 3757 "engines/director/lingo/lingo-gr.cpp"
break;
case 214: /* refargs: simpleexpr */
-#line 670 "engines/director/lingo/lingo-gr.y"
+#line 669 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref arg` and `ref(arg)`
NodeList *args = new NodeList;
args->push_back((yyvsp[0].node));
(yyval.nodelist) = args; }
-#line 3765 "engines/director/lingo/lingo-gr.cpp"
+#line 3767 "engines/director/lingo/lingo-gr.cpp"
break;
case 215: /* refargs: '(' ')' */
-#line 675 "engines/director/lingo/lingo-gr.y"
+#line 674 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref()`
(yyval.nodelist) = new NodeList; }
-#line 3773 "engines/director/lingo/lingo-gr.cpp"
+#line 3775 "engines/director/lingo/lingo-gr.cpp"
break;
case 216: /* refargs: '(' expr ',' ')' */
-#line 678 "engines/director/lingo/lingo-gr.y"
+#line 677 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref(args,)`
NodeList *args = new NodeList;
args->push_back((yyvsp[-2].node));
(yyval.nodelist) = args; }
-#line 3783 "engines/director/lingo/lingo-gr.cpp"
+#line 3785 "engines/director/lingo/lingo-gr.cpp"
break;
case 217: /* refargs: '(' expr ',' nonemptyexprlist trailingcomma ')' */
-#line 683 "engines/director/lingo/lingo-gr.y"
+#line 682 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref(args, ...)`
(yyvsp[-2].nodelist)->insert_at(0, (yyvsp[-4].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 3792 "engines/director/lingo/lingo-gr.cpp"
+#line 3794 "engines/director/lingo/lingo-gr.cpp"
break;
case 218: /* the: tTHE ID */
-#line 689 "engines/director/lingo/lingo-gr.y"
+#line 688 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNode((yyvsp[0].s)); }
-#line 3798 "engines/director/lingo/lingo-gr.cpp"
+#line 3800 "engines/director/lingo/lingo-gr.cpp"
break;
case 219: /* the: tTHE ID tOF theobj */
-#line 690 "engines/director/lingo/lingo-gr.y"
+#line 689 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheOfNode((yyvsp[-2].s), (yyvsp[0].node)); }
-#line 3804 "engines/director/lingo/lingo-gr.cpp"
+#line 3806 "engines/director/lingo/lingo-gr.cpp"
break;
case 220: /* the: tTHE tNUMBER tOF theobj */
-#line 691 "engines/director/lingo/lingo-gr.y"
+#line 690 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheOfNode(new Common::String("number"), (yyvsp[0].node)); }
-#line 3810 "engines/director/lingo/lingo-gr.cpp"
+#line 3812 "engines/director/lingo/lingo-gr.cpp"
break;
case 225: /* theobj: tMENUITEM simpleexpr tOF tMENU simpleexpr */
-#line 698 "engines/director/lingo/lingo-gr.y"
+#line 697 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuItemNode((yyvsp[-3].node), (yyvsp[0].node)); }
-#line 3816 "engines/director/lingo/lingo-gr.cpp"
+#line 3818 "engines/director/lingo/lingo-gr.cpp"
break;
case 226: /* theobj: tSOUND simpleexpr */
-#line 699 "engines/director/lingo/lingo-gr.y"
+#line 698 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SoundNode((yyvsp[0].node)); }
-#line 3822 "engines/director/lingo/lingo-gr.cpp"
+#line 3824 "engines/director/lingo/lingo-gr.cpp"
break;
case 227: /* theobj: tSPRITE simpleexpr */
-#line 700 "engines/director/lingo/lingo-gr.y"
+#line 699 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SpriteNode((yyvsp[0].node)); }
-#line 3828 "engines/director/lingo/lingo-gr.cpp"
+#line 3830 "engines/director/lingo/lingo-gr.cpp"
break;
case 228: /* menu: tMENU simpleexpr */
-#line 703 "engines/director/lingo/lingo-gr.y"
+#line 702 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuNode((yyvsp[0].node)); }
-#line 3834 "engines/director/lingo/lingo-gr.cpp"
+#line 3836 "engines/director/lingo/lingo-gr.cpp"
break;
case 229: /* thedatetime: tTHE tABBREVIATED tDATE */
-#line 705 "engines/director/lingo/lingo-gr.y"
+#line 704 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheDate); }
-#line 3840 "engines/director/lingo/lingo-gr.cpp"
+#line 3842 "engines/director/lingo/lingo-gr.cpp"
break;
case 230: /* thedatetime: tTHE tABBREVIATED tTIME */
-#line 706 "engines/director/lingo/lingo-gr.y"
+#line 705 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheTime); }
-#line 3846 "engines/director/lingo/lingo-gr.cpp"
+#line 3848 "engines/director/lingo/lingo-gr.cpp"
break;
case 231: /* thedatetime: tTHE tABBREV tDATE */
-#line 707 "engines/director/lingo/lingo-gr.y"
+#line 706 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheDate); }
-#line 3852 "engines/director/lingo/lingo-gr.cpp"
+#line 3854 "engines/director/lingo/lingo-gr.cpp"
break;
case 232: /* thedatetime: tTHE tABBREV tTIME */
-#line 708 "engines/director/lingo/lingo-gr.y"
+#line 707 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheTime); }
-#line 3858 "engines/director/lingo/lingo-gr.cpp"
+#line 3860 "engines/director/lingo/lingo-gr.cpp"
break;
case 233: /* thedatetime: tTHE tABBR tDATE */
-#line 709 "engines/director/lingo/lingo-gr.y"
+#line 708 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheDate); }
-#line 3864 "engines/director/lingo/lingo-gr.cpp"
+#line 3866 "engines/director/lingo/lingo-gr.cpp"
break;
case 234: /* thedatetime: tTHE tABBR tTIME */
-#line 710 "engines/director/lingo/lingo-gr.y"
+#line 709 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheTime); }
-#line 3870 "engines/director/lingo/lingo-gr.cpp"
+#line 3872 "engines/director/lingo/lingo-gr.cpp"
break;
case 235: /* thedatetime: tTHE tLONG tDATE */
-#line 711 "engines/director/lingo/lingo-gr.y"
+#line 710 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheLong, kTheDate); }
-#line 3876 "engines/director/lingo/lingo-gr.cpp"
+#line 3878 "engines/director/lingo/lingo-gr.cpp"
break;
case 236: /* thedatetime: tTHE tLONG tTIME */
-#line 712 "engines/director/lingo/lingo-gr.y"
+#line 711 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheLong, kTheTime); }
-#line 3882 "engines/director/lingo/lingo-gr.cpp"
+#line 3884 "engines/director/lingo/lingo-gr.cpp"
break;
case 237: /* thedatetime: tTHE tSHORT tDATE */
-#line 713 "engines/director/lingo/lingo-gr.y"
+#line 712 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheShort, kTheDate); }
-#line 3888 "engines/director/lingo/lingo-gr.cpp"
+#line 3890 "engines/director/lingo/lingo-gr.cpp"
break;
case 238: /* thedatetime: tTHE tSHORT tTIME */
-#line 714 "engines/director/lingo/lingo-gr.y"
+#line 713 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheShort, kTheTime); }
-#line 3894 "engines/director/lingo/lingo-gr.cpp"
+#line 3896 "engines/director/lingo/lingo-gr.cpp"
break;
case 239: /* thenumberof: tTHE tNUMBER tOF tCHARS inof simpleexpr */
-#line 718 "engines/director/lingo/lingo-gr.y"
+#line 717 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfChars, (yyvsp[0].node)); }
-#line 3900 "engines/director/lingo/lingo-gr.cpp"
+#line 3902 "engines/director/lingo/lingo-gr.cpp"
break;
case 240: /* thenumberof: tTHE tNUMBER tOF tWORDS inof simpleexpr */
-#line 719 "engines/director/lingo/lingo-gr.y"
+#line 718 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfWords, (yyvsp[0].node)); }
-#line 3906 "engines/director/lingo/lingo-gr.cpp"
+#line 3908 "engines/director/lingo/lingo-gr.cpp"
break;
case 241: /* thenumberof: tTHE tNUMBER tOF tITEMS inof simpleexpr */
-#line 720 "engines/director/lingo/lingo-gr.y"
+#line 719 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfItems, (yyvsp[0].node)); }
-#line 3912 "engines/director/lingo/lingo-gr.cpp"
+#line 3914 "engines/director/lingo/lingo-gr.cpp"
break;
case 242: /* thenumberof: tTHE tNUMBER tOF tLINES inof simpleexpr */
-#line 721 "engines/director/lingo/lingo-gr.y"
+#line 720 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfLines, (yyvsp[0].node)); }
-#line 3918 "engines/director/lingo/lingo-gr.cpp"
+#line 3920 "engines/director/lingo/lingo-gr.cpp"
break;
case 243: /* thenumberof: tTHE tNUMBER tOF tMENUITEMS inof menu */
-#line 722 "engines/director/lingo/lingo-gr.y"
+#line 721 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfMenuItems, (yyvsp[0].node)); }
-#line 3924 "engines/director/lingo/lingo-gr.cpp"
+#line 3926 "engines/director/lingo/lingo-gr.cpp"
break;
case 246: /* writablethe: tTHE ID */
-#line 727 "engines/director/lingo/lingo-gr.y"
+#line 726 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNode((yyvsp[0].s)); }
-#line 3930 "engines/director/lingo/lingo-gr.cpp"
+#line 3932 "engines/director/lingo/lingo-gr.cpp"
break;
case 247: /* writablethe: tTHE ID tOF writabletheobj */
-#line 728 "engines/director/lingo/lingo-gr.y"
+#line 727 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheOfNode((yyvsp[-2].s), (yyvsp[0].node)); }
-#line 3936 "engines/director/lingo/lingo-gr.cpp"
+#line 3938 "engines/director/lingo/lingo-gr.cpp"
break;
case 249: /* writabletheobj: tMENU expr_noeq */
-#line 732 "engines/director/lingo/lingo-gr.y"
+#line 731 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuNode((yyvsp[0].node)); }
-#line 3942 "engines/director/lingo/lingo-gr.cpp"
+#line 3944 "engines/director/lingo/lingo-gr.cpp"
break;
case 250: /* writabletheobj: tMENUITEM expr_noeq tOF tMENU expr_noeq */
-#line 733 "engines/director/lingo/lingo-gr.y"
+#line 732 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuItemNode((yyvsp[-3].node), (yyvsp[0].node)); }
-#line 3948 "engines/director/lingo/lingo-gr.cpp"
+#line 3950 "engines/director/lingo/lingo-gr.cpp"
break;
case 251: /* writabletheobj: tSOUND expr_noeq */
-#line 734 "engines/director/lingo/lingo-gr.y"
+#line 733 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SoundNode((yyvsp[0].node)); }
-#line 3954 "engines/director/lingo/lingo-gr.cpp"
+#line 3956 "engines/director/lingo/lingo-gr.cpp"
break;
case 252: /* writabletheobj: tSPRITE expr_noeq */
-#line 735 "engines/director/lingo/lingo-gr.y"
+#line 734 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SpriteNode((yyvsp[0].node)); }
-#line 3960 "engines/director/lingo/lingo-gr.cpp"
+#line 3962 "engines/director/lingo/lingo-gr.cpp"
break;
case 253: /* list: '[' exprlist ']' */
-#line 738 "engines/director/lingo/lingo-gr.y"
+#line 737 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new ListNode((yyvsp[-1].nodelist)); }
-#line 3966 "engines/director/lingo/lingo-gr.cpp"
+#line 3968 "engines/director/lingo/lingo-gr.cpp"
break;
case 254: /* list: '[' ':' ']' */
-#line 739 "engines/director/lingo/lingo-gr.y"
+#line 738 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropListNode(new NodeList); }
-#line 3972 "engines/director/lingo/lingo-gr.cpp"
+#line 3974 "engines/director/lingo/lingo-gr.cpp"
break;
case 255: /* list: '[' proplist ']' */
-#line 740 "engines/director/lingo/lingo-gr.y"
+#line 739 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropListNode((yyvsp[-1].nodelist)); }
-#line 3978 "engines/director/lingo/lingo-gr.cpp"
+#line 3980 "engines/director/lingo/lingo-gr.cpp"
break;
case 256: /* proplist: proppair */
-#line 743 "engines/director/lingo/lingo-gr.y"
+#line 742 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
list->push_back((yyvsp[0].node));
(yyval.nodelist) = list; }
-#line 3987 "engines/director/lingo/lingo-gr.cpp"
+#line 3989 "engines/director/lingo/lingo-gr.cpp"
break;
case 257: /* proplist: proplist ',' proppair */
-#line 747 "engines/director/lingo/lingo-gr.y"
+#line 746 "engines/director/lingo/lingo-gr.y"
{
(yyvsp[-2].nodelist)->push_back((yyvsp[0].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 3995 "engines/director/lingo/lingo-gr.cpp"
+#line 3997 "engines/director/lingo/lingo-gr.cpp"
break;
case 258: /* proppair: tSYMBOL ':' expr */
-#line 752 "engines/director/lingo/lingo-gr.y"
+#line 751 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropPairNode(new SymbolNode((yyvsp[-2].s)), (yyvsp[0].node)); }
-#line 4001 "engines/director/lingo/lingo-gr.cpp"
+#line 4003 "engines/director/lingo/lingo-gr.cpp"
break;
case 259: /* proppair: ID ':' expr */
-#line 753 "engines/director/lingo/lingo-gr.y"
+#line 752 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropPairNode(new SymbolNode((yyvsp[-2].s)), (yyvsp[0].node)); }
-#line 4007 "engines/director/lingo/lingo-gr.cpp"
+#line 4009 "engines/director/lingo/lingo-gr.cpp"
break;
case 260: /* proppair: tSTRING ':' expr */
-#line 754 "engines/director/lingo/lingo-gr.y"
+#line 753 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropPairNode(new StringNode((yyvsp[-2].s)), (yyvsp[0].node)); }
-#line 4013 "engines/director/lingo/lingo-gr.cpp"
+#line 4015 "engines/director/lingo/lingo-gr.cpp"
break;
- case 261: /* unarymath: '+' simpleexpr */
-#line 757 "engines/director/lingo/lingo-gr.y"
- { (yyval.node) = (yyvsp[0].node); }
-#line 4019 "engines/director/lingo/lingo-gr.cpp"
+ case 261: /* proppair: tINT ':' expr */
+#line 754 "engines/director/lingo/lingo-gr.y"
+ { (yyval.node) = new PropPairNode(new IntNode((yyvsp[-2].i)), (yyvsp[0].node)); }
+#line 4021 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 262: /* proppair: tFLOAT ':' expr */
+#line 755 "engines/director/lingo/lingo-gr.y"
+ { (yyval.node) = new PropPairNode(new FloatNode((yyvsp[-2].f)), (yyvsp[0].node)); }
+#line 4027 "engines/director/lingo/lingo-gr.cpp"
break;
- case 262: /* unarymath: '-' simpleexpr */
+ case 263: /* unarymath: '+' simpleexpr */
#line 758 "engines/director/lingo/lingo-gr.y"
+ { (yyval.node) = (yyvsp[0].node); }
+#line 4033 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 264: /* unarymath: '-' simpleexpr */
+#line 759 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new UnaryOpNode(LC::c_negate, (yyvsp[0].node)); }
-#line 4025 "engines/director/lingo/lingo-gr.cpp"
+#line 4039 "engines/director/lingo/lingo-gr.cpp"
break;
- case 267: /* expr: expr '+' expr */
-#line 768 "engines/director/lingo/lingo-gr.y"
+ case 269: /* expr: expr '+' expr */
+#line 769 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_add, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4031 "engines/director/lingo/lingo-gr.cpp"
+#line 4045 "engines/director/lingo/lingo-gr.cpp"
break;
- case 268: /* expr: expr '-' expr */
-#line 769 "engines/director/lingo/lingo-gr.y"
+ case 270: /* expr: expr '-' expr */
+#line 770 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_sub, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4037 "engines/director/lingo/lingo-gr.cpp"
+#line 4051 "engines/director/lingo/lingo-gr.cpp"
break;
- case 269: /* expr: expr '*' expr */
-#line 770 "engines/director/lingo/lingo-gr.y"
+ case 271: /* expr: expr '*' expr */
+#line 771 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mul, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4043 "engines/director/lingo/lingo-gr.cpp"
+#line 4057 "engines/director/lingo/lingo-gr.cpp"
break;
- case 270: /* expr: expr '/' expr */
-#line 771 "engines/director/lingo/lingo-gr.y"
+ case 272: /* expr: expr '/' expr */
+#line 772 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_div, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4049 "engines/director/lingo/lingo-gr.cpp"
+#line 4063 "engines/director/lingo/lingo-gr.cpp"
break;
- case 271: /* expr: expr tMOD expr */
-#line 772 "engines/director/lingo/lingo-gr.y"
+ case 273: /* expr: expr tMOD expr */
+#line 773 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mod, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4055 "engines/director/lingo/lingo-gr.cpp"
+#line 4069 "engines/director/lingo/lingo-gr.cpp"
break;
- case 272: /* expr: expr '>' expr */
-#line 773 "engines/director/lingo/lingo-gr.y"
+ case 274: /* expr: expr '>' expr */
+#line 774 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_gt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4061 "engines/director/lingo/lingo-gr.cpp"
+#line 4075 "engines/director/lingo/lingo-gr.cpp"
break;
- case 273: /* expr: expr '<' expr */
-#line 774 "engines/director/lingo/lingo-gr.y"
+ case 275: /* expr: expr '<' expr */
+#line 775 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_lt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4067 "engines/director/lingo/lingo-gr.cpp"
+#line 4081 "engines/director/lingo/lingo-gr.cpp"
break;
- case 274: /* expr: expr tEQ expr */
-#line 775 "engines/director/lingo/lingo-gr.y"
+ case 276: /* expr: expr tEQ expr */
+#line 776 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_eq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4073 "engines/director/lingo/lingo-gr.cpp"
+#line 4087 "engines/director/lingo/lingo-gr.cpp"
break;
- case 275: /* expr: expr tNEQ expr */
-#line 776 "engines/director/lingo/lingo-gr.y"
+ case 277: /* expr: expr tNEQ expr */
+#line 777 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_neq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4079 "engines/director/lingo/lingo-gr.cpp"
+#line 4093 "engines/director/lingo/lingo-gr.cpp"
break;
- case 276: /* expr: expr tGE expr */
-#line 777 "engines/director/lingo/lingo-gr.y"
+ case 278: /* expr: expr tGE expr */
+#line 778 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ge, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4085 "engines/director/lingo/lingo-gr.cpp"
+#line 4099 "engines/director/lingo/lingo-gr.cpp"
break;
- case 277: /* expr: expr tLE expr */
-#line 778 "engines/director/lingo/lingo-gr.y"
+ case 279: /* expr: expr tLE expr */
+#line 779 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_le, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4091 "engines/director/lingo/lingo-gr.cpp"
+#line 4105 "engines/director/lingo/lingo-gr.cpp"
break;
- case 278: /* expr: expr tAND expr */
-#line 779 "engines/director/lingo/lingo-gr.y"
+ case 280: /* expr: expr tAND expr */
+#line 780 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_and, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4097 "engines/director/lingo/lingo-gr.cpp"
+#line 4111 "engines/director/lingo/lingo-gr.cpp"
break;
- case 279: /* expr: expr tOR expr */
-#line 780 "engines/director/lingo/lingo-gr.y"
+ case 281: /* expr: expr tOR expr */
+#line 781 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_or, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4103 "engines/director/lingo/lingo-gr.cpp"
+#line 4117 "engines/director/lingo/lingo-gr.cpp"
break;
- case 280: /* expr: expr '&' expr */
-#line 781 "engines/director/lingo/lingo-gr.y"
+ case 282: /* expr: expr '&' expr */
+#line 782 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ampersand, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4109 "engines/director/lingo/lingo-gr.cpp"
+#line 4123 "engines/director/lingo/lingo-gr.cpp"
break;
- case 281: /* expr: expr tCONCAT expr */
-#line 782 "engines/director/lingo/lingo-gr.y"
+ case 283: /* expr: expr tCONCAT expr */
+#line 783 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_concat, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4115 "engines/director/lingo/lingo-gr.cpp"
+#line 4129 "engines/director/lingo/lingo-gr.cpp"
break;
- case 282: /* expr: expr tCONTAINS expr */
-#line 783 "engines/director/lingo/lingo-gr.y"
+ case 284: /* expr: expr tCONTAINS expr */
+#line 784 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_contains, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4121 "engines/director/lingo/lingo-gr.cpp"
+#line 4135 "engines/director/lingo/lingo-gr.cpp"
break;
- case 283: /* expr: expr tSTARTS expr */
-#line 784 "engines/director/lingo/lingo-gr.y"
+ case 285: /* expr: expr tSTARTS expr */
+#line 785 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_starts, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4127 "engines/director/lingo/lingo-gr.cpp"
+#line 4141 "engines/director/lingo/lingo-gr.cpp"
break;
- case 286: /* expr_nounarymath: expr_nounarymath '+' expr */
-#line 793 "engines/director/lingo/lingo-gr.y"
+ case 288: /* expr_nounarymath: expr_nounarymath '+' expr */
+#line 794 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_add, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4133 "engines/director/lingo/lingo-gr.cpp"
+#line 4147 "engines/director/lingo/lingo-gr.cpp"
break;
- case 287: /* expr_nounarymath: expr_nounarymath '-' expr */
-#line 794 "engines/director/lingo/lingo-gr.y"
+ case 289: /* expr_nounarymath: expr_nounarymath '-' expr */
+#line 795 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_sub, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4139 "engines/director/lingo/lingo-gr.cpp"
+#line 4153 "engines/director/lingo/lingo-gr.cpp"
break;
- case 288: /* expr_nounarymath: expr_nounarymath '*' expr */
-#line 795 "engines/director/lingo/lingo-gr.y"
+ case 290: /* expr_nounarymath: expr_nounarymath '*' expr */
+#line 796 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mul, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4145 "engines/director/lingo/lingo-gr.cpp"
+#line 4159 "engines/director/lingo/lingo-gr.cpp"
break;
- case 289: /* expr_nounarymath: expr_nounarymath '/' expr */
-#line 796 "engines/director/lingo/lingo-gr.y"
+ case 291: /* expr_nounarymath: expr_nounarymath '/' expr */
+#line 797 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_div, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4151 "engines/director/lingo/lingo-gr.cpp"
+#line 4165 "engines/director/lingo/lingo-gr.cpp"
break;
- case 290: /* expr_nounarymath: expr_nounarymath tMOD expr */
-#line 797 "engines/director/lingo/lingo-gr.y"
+ case 292: /* expr_nounarymath: expr_nounarymath tMOD expr */
+#line 798 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mod, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4157 "engines/director/lingo/lingo-gr.cpp"
+#line 4171 "engines/director/lingo/lingo-gr.cpp"
break;
- case 291: /* expr_nounarymath: expr_nounarymath '>' expr */
-#line 798 "engines/director/lingo/lingo-gr.y"
+ case 293: /* expr_nounarymath: expr_nounarymath '>' expr */
+#line 799 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_gt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4163 "engines/director/lingo/lingo-gr.cpp"
+#line 4177 "engines/director/lingo/lingo-gr.cpp"
break;
- case 292: /* expr_nounarymath: expr_nounarymath '<' expr */
-#line 799 "engines/director/lingo/lingo-gr.y"
+ case 294: /* expr_nounarymath: expr_nounarymath '<' expr */
+#line 800 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_lt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4169 "engines/director/lingo/lingo-gr.cpp"
+#line 4183 "engines/director/lingo/lingo-gr.cpp"
break;
- case 293: /* expr_nounarymath: expr_nounarymath tEQ expr */
-#line 800 "engines/director/lingo/lingo-gr.y"
+ case 295: /* expr_nounarymath: expr_nounarymath tEQ expr */
+#line 801 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_eq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4175 "engines/director/lingo/lingo-gr.cpp"
+#line 4189 "engines/director/lingo/lingo-gr.cpp"
break;
- case 294: /* expr_nounarymath: expr_nounarymath tNEQ expr */
-#line 801 "engines/director/lingo/lingo-gr.y"
+ case 296: /* expr_nounarymath: expr_nounarymath tNEQ expr */
+#line 802 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_neq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4181 "engines/director/lingo/lingo-gr.cpp"
+#line 4195 "engines/director/lingo/lingo-gr.cpp"
break;
- case 295: /* expr_nounarymath: expr_nounarymath tGE expr */
-#line 802 "engines/director/lingo/lingo-gr.y"
+ case 297: /* expr_nounarymath: expr_nounarymath tGE expr */
+#line 803 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ge, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4187 "engines/director/lingo/lingo-gr.cpp"
+#line 4201 "engines/director/lingo/lingo-gr.cpp"
break;
- case 296: /* expr_nounarymath: expr_nounarymath tLE expr */
-#line 803 "engines/director/lingo/lingo-gr.y"
+ case 298: /* expr_nounarymath: expr_nounarymath tLE expr */
+#line 804 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_le, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4193 "engines/director/lingo/lingo-gr.cpp"
+#line 4207 "engines/director/lingo/lingo-gr.cpp"
break;
- case 297: /* expr_nounarymath: expr_nounarymath tAND expr */
-#line 804 "engines/director/lingo/lingo-gr.y"
+ case 299: /* expr_nounarymath: expr_nounarymath tAND expr */
+#line 805 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_and, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4199 "engines/director/lingo/lingo-gr.cpp"
+#line 4213 "engines/director/lingo/lingo-gr.cpp"
break;
- case 298: /* expr_nounarymath: expr_nounarymath tOR expr */
-#line 805 "engines/director/lingo/lingo-gr.y"
+ case 300: /* expr_nounarymath: expr_nounarymath tOR expr */
+#line 806 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_or, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4205 "engines/director/lingo/lingo-gr.cpp"
+#line 4219 "engines/director/lingo/lingo-gr.cpp"
break;
- case 299: /* expr_nounarymath: expr_nounarymath '&' expr */
-#line 806 "engines/director/lingo/lingo-gr.y"
+ case 301: /* expr_nounarymath: expr_nounarymath '&' expr */
+#line 807 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ampersand, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4211 "engines/director/lingo/lingo-gr.cpp"
+#line 4225 "engines/director/lingo/lingo-gr.cpp"
break;
- case 300: /* expr_nounarymath: expr_nounarymath tCONCAT expr */
-#line 807 "engines/director/lingo/lingo-gr.y"
+ case 302: /* expr_nounarymath: expr_nounarymath tCONCAT expr */
+#line 808 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_concat, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4217 "engines/director/lingo/lingo-gr.cpp"
+#line 4231 "engines/director/lingo/lingo-gr.cpp"
break;
- case 301: /* expr_nounarymath: expr_nounarymath tCONTAINS expr */
-#line 808 "engines/director/lingo/lingo-gr.y"
+ case 303: /* expr_nounarymath: expr_nounarymath tCONTAINS expr */
+#line 809 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_contains, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4223 "engines/director/lingo/lingo-gr.cpp"
+#line 4237 "engines/director/lingo/lingo-gr.cpp"
break;
- case 302: /* expr_nounarymath: expr_nounarymath tSTARTS expr */
-#line 809 "engines/director/lingo/lingo-gr.y"
+ case 304: /* expr_nounarymath: expr_nounarymath tSTARTS expr */
+#line 810 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_starts, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4229 "engines/director/lingo/lingo-gr.cpp"
+#line 4243 "engines/director/lingo/lingo-gr.cpp"
break;
- case 305: /* expr_noeq: expr_noeq '+' expr_noeq */
-#line 814 "engines/director/lingo/lingo-gr.y"
+ case 307: /* expr_noeq: expr_noeq '+' expr_noeq */
+#line 815 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_add, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4235 "engines/director/lingo/lingo-gr.cpp"
+#line 4249 "engines/director/lingo/lingo-gr.cpp"
break;
- case 306: /* expr_noeq: expr_noeq '-' expr_noeq */
-#line 815 "engines/director/lingo/lingo-gr.y"
+ case 308: /* expr_noeq: expr_noeq '-' expr_noeq */
+#line 816 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_sub, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4241 "engines/director/lingo/lingo-gr.cpp"
+#line 4255 "engines/director/lingo/lingo-gr.cpp"
break;
- case 307: /* expr_noeq: expr_noeq '*' expr_noeq */
-#line 816 "engines/director/lingo/lingo-gr.y"
+ case 309: /* expr_noeq: expr_noeq '*' expr_noeq */
+#line 817 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mul, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4247 "engines/director/lingo/lingo-gr.cpp"
+#line 4261 "engines/director/lingo/lingo-gr.cpp"
break;
- case 308: /* expr_noeq: expr_noeq '/' expr_noeq */
-#line 817 "engines/director/lingo/lingo-gr.y"
+ case 310: /* expr_noeq: expr_noeq '/' expr_noeq */
+#line 818 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_div, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4253 "engines/director/lingo/lingo-gr.cpp"
+#line 4267 "engines/director/lingo/lingo-gr.cpp"
break;
- case 309: /* expr_noeq: expr_noeq tMOD expr_noeq */
-#line 818 "engines/director/lingo/lingo-gr.y"
+ case 311: /* expr_noeq: expr_noeq tMOD expr_noeq */
+#line 819 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mod, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4259 "engines/director/lingo/lingo-gr.cpp"
+#line 4273 "engines/director/lingo/lingo-gr.cpp"
break;
- case 310: /* expr_noeq: expr_noeq '>' expr_noeq */
-#line 819 "engines/director/lingo/lingo-gr.y"
+ case 312: /* expr_noeq: expr_noeq '>' expr_noeq */
+#line 820 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_gt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4265 "engines/director/lingo/lingo-gr.cpp"
+#line 4279 "engines/director/lingo/lingo-gr.cpp"
break;
- case 311: /* expr_noeq: expr_noeq '<' expr_noeq */
-#line 820 "engines/director/lingo/lingo-gr.y"
+ case 313: /* expr_noeq: expr_noeq '<' expr_noeq */
+#line 821 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_lt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4271 "engines/director/lingo/lingo-gr.cpp"
+#line 4285 "engines/director/lingo/lingo-gr.cpp"
break;
- case 312: /* expr_noeq: expr_noeq tNEQ expr_noeq */
-#line 821 "engines/director/lingo/lingo-gr.y"
+ case 314: /* expr_noeq: expr_noeq tNEQ expr_noeq */
+#line 822 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_neq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4277 "engines/director/lingo/lingo-gr.cpp"
+#line 4291 "engines/director/lingo/lingo-gr.cpp"
break;
- case 313: /* expr_noeq: expr_noeq tGE expr_noeq */
-#line 822 "engines/director/lingo/lingo-gr.y"
+ case 315: /* expr_noeq: expr_noeq tGE expr_noeq */
+#line 823 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ge, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4283 "engines/director/lingo/lingo-gr.cpp"
+#line 4297 "engines/director/lingo/lingo-gr.cpp"
break;
- case 314: /* expr_noeq: expr_noeq tLE expr_noeq */
-#line 823 "engines/director/lingo/lingo-gr.y"
+ case 316: /* expr_noeq: expr_noeq tLE expr_noeq */
+#line 824 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_le, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4289 "engines/director/lingo/lingo-gr.cpp"
+#line 4303 "engines/director/lingo/lingo-gr.cpp"
break;
- case 315: /* expr_noeq: expr_noeq tAND expr_noeq */
-#line 824 "engines/director/lingo/lingo-gr.y"
+ case 317: /* expr_noeq: expr_noeq tAND expr_noeq */
+#line 825 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_and, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4295 "engines/director/lingo/lingo-gr.cpp"
+#line 4309 "engines/director/lingo/lingo-gr.cpp"
break;
- case 316: /* expr_noeq: expr_noeq tOR expr_noeq */
-#line 825 "engines/director/lingo/lingo-gr.y"
+ case 318: /* expr_noeq: expr_noeq tOR expr_noeq */
+#line 826 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_or, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4301 "engines/director/lingo/lingo-gr.cpp"
+#line 4315 "engines/director/lingo/lingo-gr.cpp"
break;
- case 317: /* expr_noeq: expr_noeq '&' expr_noeq */
-#line 826 "engines/director/lingo/lingo-gr.y"
+ case 319: /* expr_noeq: expr_noeq '&' expr_noeq */
+#line 827 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ampersand, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4307 "engines/director/lingo/lingo-gr.cpp"
+#line 4321 "engines/director/lingo/lingo-gr.cpp"
break;
- case 318: /* expr_noeq: expr_noeq tCONCAT expr_noeq */
-#line 827 "engines/director/lingo/lingo-gr.y"
+ case 320: /* expr_noeq: expr_noeq tCONCAT expr_noeq */
+#line 828 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_concat, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4313 "engines/director/lingo/lingo-gr.cpp"
+#line 4327 "engines/director/lingo/lingo-gr.cpp"
break;
- case 319: /* expr_noeq: expr_noeq tCONTAINS expr_noeq */
-#line 828 "engines/director/lingo/lingo-gr.y"
+ case 321: /* expr_noeq: expr_noeq tCONTAINS expr_noeq */
+#line 829 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_contains, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4319 "engines/director/lingo/lingo-gr.cpp"
+#line 4333 "engines/director/lingo/lingo-gr.cpp"
break;
- case 320: /* expr_noeq: expr_noeq tSTARTS expr_noeq */
-#line 829 "engines/director/lingo/lingo-gr.y"
+ case 322: /* expr_noeq: expr_noeq tSTARTS expr_noeq */
+#line 830 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_starts, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4325 "engines/director/lingo/lingo-gr.cpp"
+#line 4339 "engines/director/lingo/lingo-gr.cpp"
break;
- case 321: /* sprite: tSPRITE expr tINTERSECTS simpleexpr */
-#line 832 "engines/director/lingo/lingo-gr.y"
+ case 323: /* sprite: tSPRITE expr tINTERSECTS simpleexpr */
+#line 833 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new IntersectsNode((yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4331 "engines/director/lingo/lingo-gr.cpp"
+#line 4345 "engines/director/lingo/lingo-gr.cpp"
break;
- case 322: /* sprite: tSPRITE expr tWITHIN simpleexpr */
-#line 833 "engines/director/lingo/lingo-gr.y"
+ case 324: /* sprite: tSPRITE expr tWITHIN simpleexpr */
+#line 834 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new WithinNode((yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4337 "engines/director/lingo/lingo-gr.cpp"
+#line 4351 "engines/director/lingo/lingo-gr.cpp"
break;
- case 323: /* exprlist: %empty */
-#line 836 "engines/director/lingo/lingo-gr.y"
+ case 325: /* exprlist: %empty */
+#line 837 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 4343 "engines/director/lingo/lingo-gr.cpp"
+#line 4357 "engines/director/lingo/lingo-gr.cpp"
break;
- case 325: /* nonemptyexprlist: expr */
-#line 840 "engines/director/lingo/lingo-gr.y"
+ case 327: /* nonemptyexprlist: expr */
+#line 841 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
list->push_back((yyvsp[0].node));
(yyval.nodelist) = list; }
-#line 4352 "engines/director/lingo/lingo-gr.cpp"
+#line 4366 "engines/director/lingo/lingo-gr.cpp"
break;
- case 326: /* nonemptyexprlist: nonemptyexprlist ',' expr */
-#line 844 "engines/director/lingo/lingo-gr.y"
+ case 328: /* nonemptyexprlist: nonemptyexprlist ',' expr */
+#line 845 "engines/director/lingo/lingo-gr.y"
{
(yyvsp[-2].nodelist)->push_back((yyvsp[0].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 4360 "engines/director/lingo/lingo-gr.cpp"
+#line 4374 "engines/director/lingo/lingo-gr.cpp"
break;
-#line 4364 "engines/director/lingo/lingo-gr.cpp"
+#line 4378 "engines/director/lingo/lingo-gr.cpp"
default: break;
}
@@ -4411,7 +4425,7 @@ yyerrlab:
yypcontext_t yyctx
= {yyssp, yytoken};
if (yyreport_syntax_error (&yyctx) == 2)
- goto yyexhaustedlab;
+ YYNOMEM;
}
}
@@ -4447,6 +4461,7 @@ yyerrorlab:
label yyerrorlab therefore never appears in user code. */
if (0)
YYERROR;
+ ++yynerrs;
/* Do not reclaim the symbols of the rule whose action triggered
this YYERROR. */
@@ -4507,7 +4522,7 @@ yyerrlab1:
`-------------------------------------*/
yyacceptlab:
yyresult = 0;
- goto yyreturn;
+ goto yyreturnlab;
/*-----------------------------------.
@@ -4515,24 +4530,22 @@ yyacceptlab:
`-----------------------------------*/
yyabortlab:
yyresult = 1;
- goto yyreturn;
+ goto yyreturnlab;
-#if 1
-/*-------------------------------------------------.
-| yyexhaustedlab -- memory exhaustion comes here. |
-`-------------------------------------------------*/
+/*-----------------------------------------------------------.
+| yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. |
+`-----------------------------------------------------------*/
yyexhaustedlab:
yyerror (YY_("memory exhausted"));
yyresult = 2;
- goto yyreturn;
-#endif
+ goto yyreturnlab;
-/*-------------------------------------------------------.
-| yyreturn -- parsing is finished, clean up and return. |
-`-------------------------------------------------------*/
-yyreturn:
+/*----------------------------------------------------------.
+| yyreturnlab -- parsing is finished, clean up and return. |
+`----------------------------------------------------------*/
+yyreturnlab:
if (yychar != YYEMPTY)
{
/* Make sure we have latest lookahead translation. See comments at
@@ -4559,7 +4572,7 @@ yyreturn:
return yyresult;
}
-#line 849 "engines/director/lingo/lingo-gr.y"
+#line 850 "engines/director/lingo/lingo-gr.y"
int yyreport_syntax_error(const yypcontext_t *ctx) {
diff --git a/engines/director/lingo/lingo-gr.h b/engines/director/lingo/lingo-gr.h
index 92d7bdcf923..3a172df111c 100644
--- a/engines/director/lingo/lingo-gr.h
+++ b/engines/director/lingo/lingo-gr.h
@@ -1,4 +1,4 @@
-/* A Bison parser, made by GNU Bison 3.7.6. */
+/* A Bison parser, made by GNU Bison 3.8.2. */
/* Bison interface for Yacc-like parsers in C
@@ -147,7 +147,7 @@ extern int yydebug;
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
union YYSTYPE
{
-#line 112 "engines/director/lingo/lingo-gr.y"
+#line 111 "engines/director/lingo/lingo-gr.y"
Common::String *s;
int i;
@@ -173,6 +173,8 @@ typedef union YYSTYPE YYSTYPE;
extern YYSTYPE yylval;
-//int yyparse (void);
+
+int yyparse (void);
+
#endif /* !YY_YY_ENGINES_DIRECTOR_LINGO_LINGO_GR_H_INCLUDED */
diff --git a/engines/director/lingo/lingo-gr.y b/engines/director/lingo/lingo-gr.y
index ed1a31aa277..e41251e6e64 100644
--- a/engines/director/lingo/lingo-gr.y
+++ b/engines/director/lingo/lingo-gr.y
@@ -751,6 +751,8 @@ proplist: proppair[item] {
proppair: tSYMBOL ':' expr { $$ = new PropPairNode(new SymbolNode($tSYMBOL), $expr); }
| ID ':' expr { $$ = new PropPairNode(new SymbolNode($ID), $expr); }
| tSTRING ':' expr { $$ = new PropPairNode(new StringNode($tSTRING), $expr); }
+ | tINT ':' expr { $$ = new PropPairNode(new IntNode($tINT), $expr); }
+ | tFLOAT ':' expr { $$ = new PropPairNode(new FloatNode($tFLOAT), $expr); }
;
unarymath: '+' simpleexpr[arg] %prec tUNARY { $$ = $arg; }
diff --git a/engines/director/lingo/tests/lists.lingo b/engines/director/lingo/tests/lists.lingo
index f6a336dfe14..ffbfa83ffa5 100644
--- a/engines/director/lingo/tests/lists.lingo
+++ b/engines/director/lingo/tests/lists.lingo
@@ -47,6 +47,20 @@ set res to a >= machinery
set res to machinery = a
set res to machinery >= a
+-- property Array tests
+set propArray to [501: "cast", 502: "value", 1.5: "script", a: "score", #b: "member"]
+set var to getPropAt(propArray, 1)
+scummvmAssertEqual(var, 501)
+set var to getAt(propArray, 1)
+scummvmAssertEqual(var, "cast")
+
+set var to getProp(propArray, 1.5)
+scummvmAssertEqual(var, "script")
+set var to getProp(propArray, #a)
+scummvmAssertEqual(var, "score")
+set var to getProp(propArray, #b)
+scummvmAssertEqual(var, "member")
+
-- itemOf
set string_array to "one,, three, four"
set res to item 2 of string_array
More information about the Scummvm-git-logs
mailing list