[Scummvm-git-logs] scummvm master -> 70860a7f96b22c348f9253050232c192996af64d
sev-
sev at scummvm.org
Thu May 28 23:12:54 UTC 2020
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
f90be852d8 DIRECTOR: LINGO: Made 'repeat while' non-recursive
70860a7f96 DIRECTOR: LINGO: Remove c_if and c_repeatwhile
Commit: f90be852d827c58375dccb9f61d184a9a4d01e13
https://github.com/scummvm/scummvm/commit/f90be852d827c58375dccb9f61d184a9a4d01e13
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-05-29T01:12:45+02:00
Commit Message:
DIRECTOR: LINGO: Made 'repeat while' non-recursive
Changed paths:
engines/director/lingo/lingo-gr.cpp
engines/director/lingo/lingo-gr.y
diff --git a/engines/director/lingo/lingo-gr.cpp b/engines/director/lingo/lingo-gr.cpp
index f6da07363b..7d2e37a8c8 100644
--- a/engines/director/lingo/lingo-gr.cpp
+++ b/engines/director/lingo/lingo-gr.cpp
@@ -765,7 +765,7 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 128
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 2388
+#define YYLAST 2426
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 104
@@ -913,7 +913,7 @@ static const yytype_int16 yytoknum[] =
};
#endif
-#define YYPACT_NINF (-318)
+#define YYPACT_NINF (-281)
#define yypact_value_is_default(Yyn) \
((Yyn) == YYPACT_NINF)
@@ -927,44 +927,44 @@ static const yytype_int16 yytoknum[] =
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 775, -63, -318, -318, 199, -318, 597, 313, 199, 25,
- 498, -318, -318, -318, -318, -318, -318, 41, -318, 1622,
- -318, -318, -318, 52, 1778, -36, 43, 80, 83, 1860,
- 1659, -318, 1860, 1860, 1860, 1860, 1860, 1860, 1860, -318,
- -318, 1860, 1860, 1860, 408, 114, 19, -318, -318, -318,
- -318, 1860, -24, 1860, 1458, -318, 2280, -318, -318, -318,
- -318, -318, -318, -318, -318, -318, -318, -318, -318, 17,
- 1778, 1741, 2280, 20, 1741, 20, -318, 199, 1741, 2280,
- 21, 686, -318, -318, 91, 1860, -318, 72, -318, 1852,
- -318, 93, -318, 96, 380, 97, -318, -8, 199, 199,
- 5, 70, 74, -318, 2177, 1852, -318, 99, -318, 1900,
- 1933, 1966, 1999, 2247, 2164, 102, 103, -318, -318, 2210,
- 29, 30, -318, 2280, 51, 54, 55, -318, -318, 775,
- 2280, -318, -318, 2280, -318, -318, 1860, 2280, -318, -318,
- 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860,
- 1860, 1860, 1860, 1860, 1860, 1860, 1860, 135, 1741, 380,
- 2210, -10, 1860, 8, -318, 11, 1860, 20, 135, -318,
- 62, 2280, 1860, -318, -318, 199, 18, 1860, 1860, -318,
- 1860, 1860, 13, 115, 1860, 1860, 1860, -318, 1860, -318,
- -318, 64, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860,
- 1860, 1860, -318, -318, -318, 65, -318, -318, 199, 199,
- -318, 1860, 22, -318, -318, 1860, 1860, 116, -318, 2280,
- 7, 7, 7, 7, 2293, 2293, -318, -7, 7, 7,
- 7, 7, -7, -55, -55, -318, -318, -318, -75, -318,
- 2280, -318, -318, 2280, -44, 141, 2280, -318, 124, -318,
- -318, 2280, 2280, 2280, 7, 1860, 1860, 147, 2280, 7,
- 2280, 2280, 157, 2280, 2032, 2280, 2065, 2280, 2098, 2280,
- 2131, 2280, 2280, 1540, -318, 158, -318, -318, 2280, 29,
- 30, -318, 1202, 2280, 2280, -318, 144, -318, 172, -318,
- -318, 135, 1860, 2280, 7, 199, -318, 1860, 1860, 1860,
- 1860, -318, 1287, -318, -318, -318, 117, -318, -2, 1116,
- 1540, -318, -318, -318, -26, 2280, 148, 2280, 2280, 2280,
- 2280, -318, 113, -318, 1202, 149, 1860, -318, 120, 861,
- 946, -318, 1860, -318, 121, 1860, 2280, 76, 171, 126,
- 191, -318, 2280, -318, 2280, -318, -318, 1860, -318, 137,
- -318, -318, -318, 127, 1031, -318, 1202, -318, 2280, -318,
- 1540, 195, 1202, 142, 1372, 177, -318, -318, 145, -318,
- 150, -318, 152, -318, -318, 1116, -318, -318
+ 693, -76, -281, -281, 60, -281, 515, 313, 60, 1,
+ 416, -281, -281, -281, -281, -281, -281, -26, -281, 1625,
+ -281, -281, -281, 15, 1781, -40, 136, 33, 47, 1863,
+ 1662, -281, 1863, 1863, 1863, 1863, 1863, 1863, 1863, -281,
+ -281, 1863, 1863, 1863, 205, 84, -7, -281, -281, -281,
+ -281, 1863, -23, 1863, 1461, -281, 2318, -281, -281, -281,
+ -281, -281, -281, -281, -281, -281, -281, -281, -281, -5,
+ 1781, 1744, 2318, -3, 1744, -3, -281, 60, 1744, 2318,
+ -1, 604, -281, -281, 80, 1863, -281, 71, -281, 1905,
+ -281, 100, -281, 101, 1855, 102, -281, -46, 60, 60,
+ -43, 77, 98, -281, 2215, 1905, -281, 107, -281, 1938,
+ 1971, 2004, 2037, 2285, 2202, 131, 133, -281, -281, 2248,
+ 61, 62, -281, 2318, 65, 63, 68, -281, -281, 693,
+ 2318, -281, -281, 2318, -281, -281, 1863, 2318, -281, -281,
+ 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863,
+ 1863, 1863, 1863, 1863, 1863, 1863, 1863, 147, 1744, 1855,
+ 2248, -4, 1863, 11, -281, 24, 1863, -3, 147, -281,
+ 76, 2318, 1863, -281, -281, 60, 43, 1863, 1863, -281,
+ 1863, 1863, -2, 129, 1863, 1863, 1863, -281, 1863, -281,
+ -281, 83, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863,
+ 1863, 1863, -281, -281, -281, 85, -281, -281, 60, 60,
+ -281, 1863, 49, -281, -281, 1863, 1863, 143, -281, 2318,
+ 151, 151, 151, 151, 2331, 2331, -281, 21, 151, 151,
+ 151, 151, 21, -24, -24, -281, -281, -281, -85, -281,
+ 2318, -281, -281, 2318, -44, 158, 2318, -281, 153, -281,
+ -281, 2318, 2318, 2318, 151, 1863, 1863, 172, 2318, 151,
+ 2318, 2318, 173, 2318, 2070, 2318, 2103, 2318, 2136, 2318,
+ 2169, 2318, 2318, 1543, -281, 174, -281, -281, 2318, 61,
+ 62, -281, 1120, 2318, 2318, -281, 148, -281, 176, -281,
+ -281, 147, 1863, 2318, 151, 60, -281, 1863, 1863, 1863,
+ 1863, -281, 1205, -281, -281, -281, 116, -281, 8, 1034,
+ 1543, -281, -281, -281, -15, 2318, 150, 2318, 2318, 2318,
+ 2318, -281, 119, -281, 1290, 154, 1863, -281, 125, 779,
+ 864, -281, 1863, -281, 126, 1863, 2318, 66, 180, 132,
+ 186, -281, 2318, -281, 2318, -281, -281, 1863, -281, 134,
+ -281, -281, -281, 117, 949, -281, 1290, -281, 2318, -281,
+ 1543, 199, 1290, 146, 1375, 182, -281, -281, 149, -281,
+ 155, -281, 161, -281, -281, 1034, -281, -281
};
/* YYDEFACTSTATE-NUM -- Default reduction number in state STATE-NUM.
@@ -985,7 +985,7 @@ static const yytype_uint8 yydefact[] =
0, 0, 0, 144, 121, 136, 138, 0, 88, 0,
0, 0, 0, 0, 0, 0, 0, 93, 94, 0,
59, 58, 166, 169, 0, 167, 168, 171, 1, 0,
- 51, 50, 50, 47, 51, 26, 0, 24, 25, 23,
+ 47, 50, 50, 47, 51, 26, 0, 24, 25, 23,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 151, 0, 0,
160, 0, 0, 0, 70, 0, 0, 140, 151, 122,
@@ -1015,19 +1015,19 @@ static const yytype_uint8 yydefact[] =
/* YYPGOTONTERM-NUM. */
static const yytype_int16 yypgoto[] =
{
- -318, 104, -318, -318, -267, -318, 2, 31, -318, -318,
- -318, -318, -318, -318, -207, -317, 181, -77, -125, -89,
- -318, 6, -6, -318, 63, 186, -318, -318, -318, -318,
- -318, -318, -318, -23, -318, -318, -318, -318, -318, -318,
- -318, -318, -165, -318, -281, 187, 10, -318, -318, -318,
- -318, -318, 32
+ -281, 108, -281, -281, -266, -281, 3, 37, -281, -281,
+ -281, -281, -281, -281, -131, -268, 194, -77, -244, 795,
+ -281, 6, -6, -281, 78, 198, -281, -281, -281, -281,
+ -281, -281, -281, 20, -281, -281, -281, -281, -281, -281,
+ -281, -281, -162, -281, -280, 202, 27, -281, -281, -281,
+ -281, -281, 41
};
/* YYDEFGOTONTERM-NUM. */
static const yytype_int16 yydefgoto[] =
{
-1, 45, 46, 47, 48, 134, 305, 273, 50, 337,
- 348, 135, 51, 52, 217, 327, 53, 157, 214, 282,
+ 348, 135, 51, 52, 214, 306, 53, 157, 218, 282,
54, 55, 56, 57, 58, 59, 84, 115, 107, 170,
205, 191, 60, 90, 61, 81, 62, 91, 247, 82,
63, 116, 238, 353, 311, 64, 165, 80, 65, 124,
@@ -1039,37 +1039,37 @@ static const yytype_int16 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 72, 72, 49, 244, 79, 168, 301, 106, 313, 218,
- 68, 338, 286, 89, 76, 146, 73, 75, 94, 131,
- 95, 96, 287, 104, 105, 288, 108, 109, 110, 111,
- 112, 113, 114, 325, 66, 117, 118, 119, 123, 155,
- 156, 132, 8, 328, 249, 130, 180, 133, 137, 279,
- 341, 280, 326, 289, 215, 216, 288, 181, 377, 184,
- 97, 98, 99, 146, 159, 160, 173, 255, 160, 100,
- 185, 331, 160, 77, 288, 72, 101, 146, 256, 171,
- 147, 161, 189, 164, 163, 153, 154, 155, 156, 239,
- 162, 167, 83, 366, 33, 34, 35, 36, 152, 153,
- 154, 155, 156, 92, 182, 183, 102, 241, 162, 103,
- 242, 162, 346, 347, 128, 158, 129, 169, 172, 174,
- 162, 166, 175, 179, 186, 190, 314, 187, 204, 206,
- 219, 49, 208, 209, 220, 221, 222, 223, 224, 225,
+ 72, 72, 217, 49, 79, 168, 244, 301, 180, 313,
+ 68, 184, 287, 89, 76, 288, 95, 96, 94, 181,
+ 131, 66, 185, 104, 105, 83, 108, 109, 110, 111,
+ 112, 113, 114, 73, 75, 117, 118, 119, 123, 307,
+ 308, 327, 132, 325, 328, 130, 146, 133, 137, 77,
+ 106, 341, 255, 289, 215, 216, 288, 321, 322, 102,
+ 338, 1, 326, 256, 159, 160, 92, 8, 160, 249,
+ 155, 156, 160, 103, 2, 72, 279, 3, 280, 171,
+ 334, 5, 331, 164, 128, 288, 67, 11, 286, 12,
+ 129, 146, 345, 158, 366, 239, 162, 162, 161, 166,
+ 355, 163, 346, 347, 182, 183, 169, 377, 167, 173,
+ 241, 162, 363, 153, 154, 155, 156, 172, 368, 33,
+ 34, 35, 36, 242, 162, 189, 174, 175, 179, 314,
+ 219, 186, 49, 190, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
- 236, 365, 72, 210, 211, 212, 240, 306, 307, 308,
- 243, 237, 245, 257, 262, 275, 246, 290, 292, 285,
- 291, 251, 252, 295, 253, 254, 321, 322, 258, 259,
- 260, 248, 261, 296, 303, 302, 263, 264, 265, 266,
- 267, 268, 269, 270, 271, 272, 309, 310, 312, 334,
- 1, 333, 332, 335, 323, 278, -50, 350, 343, 283,
- 284, 345, 351, 2, 276, 277, 3, 352, 324, 355,
- 5, 367, 329, 359, 330, 67, 11, 361, 12, 369,
- 371, 363, 373, 213, 274, 136, 374, 368, 376, 250,
- 138, 139, 0, 0, 281, 0, 0, 0, 0, 293,
- 294, 339, 354, 0, 0, 0, 356, 0, 0, 0,
- 349, 0, 0, 0, 0, 0, 362, 0, 364, 357,
- 0, 0, 0, 360, 0, 0, 0, 0, 0, 0,
- 0, 0, 375, 0, 0, 0, 315, 370, 0, 372,
- 0, 317, 318, 319, 320, 0, 0, 43, 0, 0,
- 44, 316, 0, 0, 0, 0, 0, 0, 0, 0,
+ 236, 187, 72, 97, 98, 99, 240, 204, 43, 206,
+ 243, 44, 100, 211, 208, 209, 246, 210, 212, 101,
+ 291, 251, 252, 237, 253, 254, 245, 257, 258, 259,
+ 260, 248, 261, 262, 290, 275, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 285, 292, 295, 296,
+ 303, 310, 312, 323, 332, 278, 1, 333, 335, 283,
+ 284, -50, 352, 343, 276, 277, 350, 361, 351, 2,
+ 359, 146, 3, 4, 147, 367, 5, 365, 7, 8,
+ 9, 69, 120, 369, 121, 371, 373, 213, 15, 16,
+ 274, 374, 152, 153, 154, 155, 156, 376, 136, 293,
+ 294, 339, 138, 281, 250, 70, 139, 26, 0, 0,
+ 349, 0, 0, 0, 0, 0, 0, 0, 0, 357,
+ 0, 0, 0, 360, 32, 0, 0, 0, 0, 0,
+ 0, 33, 34, 35, 36, 37, 315, 370, 0, 372,
+ 0, 317, 318, 319, 320, 0, 0, 41, 42, 0,
+ 0, 316, 0, 43, 0, 0, 44, -165, 122, 0,
0, 0, 0, -159, 1, 0, 0, 0, 0, 0,
336, 0, 0, 0, 0, 0, 342, 2, 0, 344,
3, 4, 0, 0, 5, -159, 7, 8, 9, 69,
@@ -1079,240 +1079,244 @@ static const yytype_int16 yytable[] =
0, 0, 0, -159, -159, -159, -159, -159, -159, -159,
-159, -159, 32, -159, -159, -159, -159, -159, -159, 33,
34, 35, 36, 37, -159, -159, -159, -159, 0, -159,
- -159, -159, -159, -159, -159, 41, 42, -159, -159, 1,
- -159, 74, -159, -159, 44, -159, 0, 0, 0, 0,
- 0, 0, 2, 0, 176, 3, 4, 0, 0, 5,
- 0, 7, 8, 9, 69, 120, 0, 121, 0, 0,
- 0, 15, 16, 140, 141, 142, 143, 144, 145, 0,
- 146, 177, 178, 147, 148, 149, 0, 0, 70, 0,
- 26, 0, 0, 0, 0, 0, 0, 0, 0, 150,
- 151, 152, 153, 154, 155, 156, 0, 32, 0, 0,
- 0, 0, 0, 0, 33, 34, 35, 36, 37, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, -60, 1,
- 41, 42, 0, 0, 0, 0, 43, 0, 0, 44,
- -165, 122, 2, 0, 0, 3, 4, 0, 0, 5,
- -60, 7, 8, 9, 69, 11, 0, 12, -60, -60,
- 0, 15, 16, 0, -60, -60, -60, -60, -60, -60,
- -60, 0, 0, 0, 0, -60, 0, 0, 70, -60,
- 26, 0, 0, -60, 0, 0, 0, 0, -60, -60,
- -60, -60, -60, -60, -60, -60, -60, 32, -60, 0,
- 0, -60, -60, -60, 33, 34, 35, 36, 37, 0,
- 0, -60, -60, 0, -60, -60, -60, -60, -60, -60,
- 41, 42, -60, -60, 0, -60, 78, -159, 1, 44,
+ -159, -159, -159, -159, -159, 41, 42, -159, -159, 0,
+ -159, 74, -159, -159, 44, -159, -60, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 2, 0, 0, 3, 4, 0, 0, 5, -159,
- 7, 8, 9, 69, 11, 0, 12, -159, -159, 0,
- 15, 16, 0, -159, -159, -159, -159, -159, -159, -159,
- 0, 0, 0, 0, -159, 0, 0, 70, -159, 26,
- 0, 0, -159, 0, 0, 0, 0, -159, -159, -159,
- 0, 0, 0, 0, 0, 0, 32, 0, 0, 0,
- 0, 0, 0, 33, 34, 35, 36, 37, 0, 0,
- -159, -159, 0, -159, -159, -159, -159, 1, 0, 41,
- 42, 0, 0, 0, -159, 71, 0, -159, 44, 0,
- 2, 0, 0, 3, 4, 0, 0, 5, -159, 7,
- 8, 9, 69, 11, 0, 12, -159, -159, 0, 15,
- 16, 0, -159, -159, -159, -159, -159, -159, -159, 0,
- 0, 0, 0, -159, 0, 0, 70, -159, 26, 0,
- 0, -159, 0, 0, 0, 0, -159, -159, -159, 0,
- 0, 0, 0, 0, 0, 32, 0, 0, 0, 0,
- 0, 0, 33, 34, 35, 36, 37, 0, 0, -159,
- -159, 0, -159, -159, -159, -4, 1, 0, 41, 42,
- 0, 0, 0, -159, 43, 0, -159, 44, 0, 2,
- 0, 0, 3, 4, 0, 0, 5, 6, 7, 8,
- 9, 10, 11, 0, 12, 0, 13, 14, 15, 16,
+ 2, 0, 0, 3, 4, 0, 0, 5, -60, 7,
+ 8, 9, 69, 11, 0, 12, -60, -60, 0, 15,
+ 16, 0, -60, -60, -60, -60, -60, -60, -60, 0,
+ 0, 0, 0, -60, 0, 0, 70, -60, 26, 0,
+ 0, -60, 0, 0, 0, 0, -60, -60, -60, -60,
+ -60, -60, -60, -60, -60, 32, -60, 0, 0, -60,
+ -60, -60, 33, 34, 35, 36, 37, 0, 0, -60,
+ -60, 0, -60, -60, -60, -60, -60, -60, 41, 42,
+ -60, -60, 0, -60, 78, -159, 1, 44, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
+ 0, 0, 3, 4, 0, 0, 5, -159, 7, 8,
+ 9, 69, 11, 0, 12, -159, -159, 0, 15, 16,
+ 0, -159, -159, -159, -159, -159, -159, -159, 0, 0,
+ 0, 0, -159, 0, 0, 70, -159, 26, 0, 0,
+ -159, 0, 0, 0, 0, -159, -159, -159, 0, 0,
+ 0, 0, 0, 0, 32, 0, 0, 0, 0, 0,
+ 0, 33, 34, 35, 36, 37, 0, 0, -159, -159,
+ 0, -159, -159, -159, -159, 1, 0, 41, 42, 0,
+ 0, 0, -159, 71, 0, -159, 44, 0, 2, 0,
+ 0, 3, 4, 0, 0, 5, -159, 7, 8, 9,
+ 69, 11, 0, 12, -159, -159, 0, 15, 16, 0,
+ -159, -159, -159, -159, -159, -159, -159, 0, 0, 0,
+ 0, -159, 0, 0, 70, -159, 26, 0, 0, -159,
+ 0, 0, 0, 0, -159, -159, -159, 0, 0, 0,
+ 0, 0, 0, 32, 0, 0, 0, 0, 0, 0,
+ 33, 34, 35, 36, 37, 0, 0, -159, -159, 0,
+ -159, -159, -159, -4, 1, 0, 41, 42, 0, 0,
+ 0, -159, 43, 0, -159, 44, 0, 2, 0, 0,
+ 3, 4, 0, 0, 5, 6, 7, 8, 9, 10,
+ 11, 0, 12, 0, 13, 14, 15, 16, 0, 0,
+ 0, 17, 18, 19, 20, 21, 0, 0, 22, 0,
+ 23, 0, 0, 24, 25, 26, 0, 0, 27, 0,
+ 0, 0, 28, 29, 30, 31, 0, 0, 0, 0,
+ 0, 0, 32, 0, 0, 0, 0, 0, 0, 33,
+ 34, 35, 36, 37, 0, 0, 38, 39, 40, -148,
+ 1, 0, 0, 0, 0, 41, 42, 0, 0, 0,
+ -4, 43, 0, 2, 44, 0, 3, 4, 0, 0,
+ 5, 6, 7, 8, 9, 10, 11, 0, 12, 340,
+ 13, 0, 15, 16, 0, 0, 0, 17, 18, 19,
+ 20, 21, 0, 0, 0, 0, 23, 0, 0, 24,
+ 25, 26, 0, 0, 27, 0, 0, 0, 0, 29,
+ 30, 31, 0, 0, 0, 0, 0, 0, 32, 0,
+ 0, 0, 0, 0, 0, 33, 34, 35, 36, 37,
+ 0, 0, 38, 39, -146, 1, 0, 0, 0, 0,
+ 0, 41, 42, 0, 0, 0, 304, 43, 2, 0,
+ 44, 3, 4, 0, 0, 5, 6, 7, 8, 9,
+ 10, 11, 0, 12, 0, 13, 0, 15, 16, 0,
+ 0, 0, 17, 18, 19, 20, 21, 0, 0, 0,
+ 0, 23, 0, 0, 24, 25, 26, 0, 0, 27,
+ 0, 0, 0, 0, 29, 30, 31, 0, 0, 0,
+ 0, 0, 0, 32, 0, 0, 0, 0, 0, 0,
+ 33, 34, 35, 36, 37, 0, 0, 38, 39, -143,
+ 1, 0, 0, 0, 0, 0, 41, 42, 0, 0,
+ 0, 304, 43, 2, 0, 44, 3, 4, 0, 0,
+ 5, 6, 7, 8, 9, 10, 11, 0, 12, 0,
+ 13, 0, 15, 16, 0, 0, 0, 17, 18, 19,
+ 20, 21, 0, 0, 0, 0, 23, 0, 0, 24,
+ 25, 26, 0, 0, 27, 0, 0, 0, 0, 29,
+ 30, 31, 0, 0, 0, 0, 0, 0, 32, 0,
+ 0, 0, 0, 0, 0, 33, 34, 35, 36, 37,
+ 0, 0, 38, 39, 0, 1, 0, 0, 0, 0,
+ 0, 41, 42, 0, 0, 0, 304, 43, 2, 0,
+ 44, 3, 4, 0, 0, 5, 6, 7, 8, 9,
+ 10, 11, 0, 12, 0, 13, 0, 15, 16, 302,
+ -48, -48, 17, 18, 19, 20, 21, 0, 0, 0,
+ 309, 23, 0, 0, 24, 25, 26, 0, 0, 27,
+ 0, 0, 0, 0, 29, 30, 31, 0, 0, 0,
+ 0, 0, 324, 32, 0, 0, 329, 0, 330, 0,
+ 33, 34, 35, 36, 37, 0, 0, 38, 39, 0,
+ -48, 1, 0, 0, 0, 0, 41, 42, 0, 0,
+ 0, 304, 43, 0, 2, 44, 354, 3, 4, 0,
+ 356, 5, 6, 7, 8, 9, 10, 11, 0, 12,
+ 362, 13, 364, 15, 16, 0, 0, 0, 17, 18,
+ 19, 20, 21, 0, 0, 0, 375, 23, 0, 0,
+ 24, 25, 26, 0, 0, 27, 0, 0, 0, 0,
+ 29, 30, 31, 0, 0, 0, 0, 0, 0, 32,
+ 0, 0, 0, 0, 0, 0, 33, 34, 35, 36,
+ 37, 0, 0, 38, 39, 0, 1, -48, 0, 0,
+ 0, 0, 41, 42, 0, 0, 0, 304, 43, 2,
+ 0, 44, 3, 4, 0, 0, 5, 6, 7, 8,
+ 9, 10, 11, 0, 12, 0, 13, 0, 15, 16,
0, 0, 0, 17, 18, 19, 20, 21, 0, 0,
- 22, 0, 23, 0, 0, 24, 25, 26, 0, 0,
- 27, 0, 0, 0, 28, 29, 30, 31, 0, 0,
+ 0, 0, 23, 0, 0, 24, 25, 26, 0, 0,
+ 27, 0, 0, 0, 0, 29, 30, 31, 0, 0,
0, 0, 0, 0, 32, 0, 0, 0, 0, 0,
0, 33, 34, 35, 36, 37, 0, 0, 38, 39,
- 40, -148, 1, 0, 0, 0, 0, 41, 42, 0,
- 0, 0, -4, 43, 0, 2, 44, 0, 3, 4,
- 0, 0, 5, 6, 7, 8, 9, 10, 11, 0,
- 12, 340, 13, 0, 15, 16, 0, 0, 0, 17,
- 18, 19, 20, 21, 0, 0, 0, 0, 23, 0,
- 0, 24, 25, 26, 0, 0, 27, 0, 0, 0,
- 0, 29, 30, 31, 0, 0, 0, 0, 0, 0,
- 32, 0, 0, 0, 0, 0, 0, 33, 34, 35,
- 36, 37, 0, 0, 38, 39, -146, 1, 0, 0,
- 0, 0, 0, 41, 42, 0, 0, 0, 304, 43,
- 2, 0, 44, 3, 4, 0, 0, 5, 6, 7,
- 8, 9, 10, 11, 0, 12, 0, 13, 0, 15,
- 16, 0, 0, 0, 17, 18, 19, 20, 21, 0,
- 0, 0, 0, 23, 0, 0, 24, 25, 26, 0,
- 0, 27, 0, 0, 0, 0, 29, 30, 31, 0,
- 0, 0, 0, 0, 0, 32, 0, 0, 0, 0,
- 0, 0, 33, 34, 35, 36, 37, 0, 0, 38,
- 39, -143, 1, 0, 0, 0, 0, 0, 41, 42,
- 0, 0, 0, 304, 43, 2, 0, 44, 3, 4,
+ 0, 1, 0, -51, 0, 0, 0, 41, 42, 0,
+ 0, 0, 304, 43, 2, 0, 44, 3, 4, 0,
+ 0, 5, 6, 7, 8, 9, 10, 11, 0, 12,
+ 0, 13, 0, 15, 16, 0, 0, 0, 17, 18,
+ 19, 20, 21, 0, 0, 0, 0, 23, 0, 0,
+ 24, 25, 26, 0, 0, 27, 0, 0, 0, 0,
+ 29, 30, 31, 0, 0, 0, 0, 0, 0, 32,
+ 0, 0, 0, 0, 0, 0, 33, 34, 35, 36,
+ 37, 0, 0, 38, 39, 0, 1, -51, 0, 0,
+ 0, 0, 41, 42, 0, 0, 0, 304, 43, 2,
+ 0, 44, 3, 4, 0, 0, 5, 6, 7, 8,
+ 9, 10, 11, 0, 12, 0, 13, 0, 15, 16,
+ 0, 0, 0, 17, 18, 19, 20, 21, 0, 0,
+ 0, 0, 23, 0, 0, 24, 25, 26, 0, 0,
+ 27, 0, 0, 0, 0, 29, 30, 31, 0, 0,
+ 0, 0, 0, 0, 32, 0, 0, 0, 0, 0,
+ 0, 33, 34, 35, 36, 37, 0, 0, 38, 39,
+ 0, -50, 1, 0, 0, 0, 0, 41, 42, 0,
+ 0, 0, 304, 43, 0, 2, 44, 0, 3, 4,
0, 0, 5, 6, 7, 8, 9, 10, 11, 0,
12, 0, 13, 0, 15, 16, 0, 0, 0, 17,
- 18, 19, 20, 21, 0, 0, 0, 0, 23, 0,
- 0, 24, 25, 26, 0, 0, 27, 0, 0, 0,
+ 18, 19, 20, 21, 0, 0, 0, 0, 0, 0,
+ 0, 24, 0, 26, 0, 0, 0, 0, 0, 0,
0, 29, 30, 31, 0, 0, 0, 0, 0, 0,
32, 0, 0, 0, 0, 0, 0, 33, 34, 35,
- 36, 37, 0, 0, 38, 39, 0, 1, 0, 0,
- 0, 0, 0, 41, 42, 0, 0, 0, 304, 43,
- 2, 0, 44, 3, 4, 0, 0, 5, 6, 7,
- 8, 9, 10, 11, 0, 12, 0, 13, 0, 15,
- 16, 0, -48, -48, 17, 18, 19, 20, 21, 0,
- 0, 0, 0, 23, 0, 0, 24, 25, 26, 0,
- 0, 27, 0, 0, 0, 0, 29, 30, 31, 0,
- 0, 0, 0, 0, 0, 32, 0, 0, 0, 0,
- 0, 0, 33, 34, 35, 36, 37, 0, 0, 38,
- 39, 0, -48, 1, 0, 0, 0, 0, 41, 42,
- 0, 0, 0, 304, 43, 0, 2, 44, 0, 3,
- 4, 0, 0, 5, 6, 7, 8, 9, 10, 11,
- 0, 12, 0, 13, 0, 15, 16, 0, 0, 0,
- 17, 18, 19, 20, 21, 0, 0, 0, 0, 23,
- 0, 0, 24, 25, 26, 0, 0, 27, 0, 0,
- 0, 0, 29, 30, 31, 0, 0, 0, 0, 0,
- 0, 32, 0, 0, 0, 0, 0, 0, 33, 34,
- 35, 36, 37, 0, 0, 38, 39, 0, 1, -51,
- 0, 0, 0, 0, 41, 42, 0, 0, 0, 304,
- 43, 2, 0, 44, 3, 4, 0, 0, 5, 6,
- 7, 8, 9, 10, 11, 0, 12, 0, 13, 0,
- 15, 16, 0, 0, 0, 17, 18, 19, 20, 21,
- 0, 0, 0, 0, 23, 0, 0, 24, 25, 26,
- 0, 0, 27, 0, 0, 0, 0, 29, 30, 31,
- 0, 0, 0, 0, 0, 0, 32, 0, 0, 0,
- 0, 0, 0, 33, 34, 35, 36, 37, 0, 0,
- 38, 39, 0, 1, 0, -51, 0, 0, 0, 41,
- 42, 0, 0, 0, 304, 43, 2, 0, 44, 3,
- 4, 0, 0, 5, 6, 7, 8, 9, 10, 11,
- 0, 12, 0, 13, 0, 15, 16, 0, 0, 0,
- 17, 18, 19, 20, 21, 0, 0, 0, 0, 23,
- 0, 0, 24, 25, 26, 0, 0, 27, 0, 0,
- 0, 0, 29, 30, 31, 0, 0, 0, 0, 0,
+ 36, 37, 0, 0, 1, 39, 0, 0, 0, 0,
+ 0, 0, 0, 41, 42, 0, 0, 2, 0, 43,
+ 3, 4, 44, 0, 5, 6, 7, 8, 9, 10,
+ 11, 0, 12, 0, 13, 0, 15, 16, 0, 0,
+ 0, 17, 18, 19, 20, 0, 0, 0, 0, 0,
+ 0, 0, 0, 24, 0, 26, 0, 0, 0, 0,
+ 0, 0, 0, 29, 30, 31, 0, 0, 0, 0,
+ 0, 0, 32, 0, 0, 0, 0, 0, 0, 33,
+ 34, 35, 36, 37, 0, 0, 1, 39, 0, 0,
+ 0, 0, 0, 0, 0, 41, 42, 0, 0, 2,
+ 0, 43, 3, 4, 44, 0, 5, 0, 7, 8,
+ 9, 69, 11, 0, 12, 0, 0, 0, 15, 16,
+ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
+ 0, 85, 86, 87, 88, 70, 2, 26, 0, 3,
+ 4, 0, 0, 5, 0, 7, 8, 9, 69, 11,
+ 0, 12, 0, 0, 32, 15, 16, 0, 0, 0,
+ 0, 33, 34, 35, 36, 37, 0, 0, 85, 0,
+ 87, 0, 70, 0, 26, 0, 0, 41, 42, 0,
+ 0, 0, 0, 43, 0, 0, 44, 0, 0, 0,
0, 32, 0, 0, 0, 0, 0, 0, 33, 34,
- 35, 36, 37, 0, 0, 38, 39, 0, -50, 1,
- 0, 0, 0, 0, 41, 42, 0, 0, 0, 304,
- 43, 0, 2, 44, 0, 3, 4, 0, 0, 5,
- 6, 7, 8, 9, 10, 11, 0, 12, 0, 13,
- 0, 15, 16, 0, 0, 0, 17, 18, 19, 20,
- 21, 0, 0, 0, 0, 0, 0, 0, 24, 0,
- 26, 0, 0, 0, 0, 0, 0, 0, 29, 30,
- 31, 0, 0, 0, 0, 0, 0, 32, 0, 0,
- 0, 0, 0, 0, 33, 34, 35, 36, 37, 0,
- 0, 1, 39, 0, 0, 0, 0, 0, 0, 0,
- 41, 42, 0, 0, 2, 0, 43, 3, 4, 44,
- 0, 5, 6, 7, 8, 9, 10, 11, 0, 12,
- 0, 13, 0, 15, 16, 0, 0, 0, 17, 18,
- 19, 20, 0, 0, 0, 0, 0, 0, 0, 0,
- 24, 0, 26, 0, 0, 0, 0, 0, 0, 0,
- 29, 30, 31, 0, 0, 0, 0, 0, 0, 32,
- 0, 0, 0, 0, 0, 0, 33, 34, 35, 36,
- 37, 0, 0, 1, 39, 0, 0, 0, 0, 0,
- 0, 0, 41, 42, 0, 0, 2, 0, 43, 3,
- 4, 44, 0, 5, 0, 7, 8, 9, 69, 11,
- 0, 12, 0, 0, 0, 15, 16, 0, 0, 0,
- 1, 0, 0, 0, 0, 0, 0, 0, 85, 86,
- 87, 88, 70, 2, 26, 0, 3, 4, 0, 0,
- 5, 0, 7, 8, 9, 69, 11, 0, 12, 0,
- 0, 32, 15, 16, 0, 0, 0, 0, 33, 34,
- 35, 36, 37, 0, 0, 85, 0, 87, 0, 70,
- 0, 26, 0, 0, 41, 42, 0, 0, 0, 0,
- 43, 0, 0, 44, 0, 0, 0, 0, 32, 0,
- 0, 0, 0, 0, 0, 33, 34, 35, 36, 37,
+ 35, 36, 37, 0, 0, 1, 0, 0, 0, 0,
+ 0, 0, 0, 0, 41, 42, 0, 0, 2, 0,
+ 43, 3, 4, 44, 0, 5, 0, 7, 8, 9,
+ 69, 11, 0, 12, 0, 0, 0, 15, 16, 0,
0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
- 0, 41, 42, 0, 0, 2, 0, 43, 3, 4,
- 44, 0, 5, 0, 7, 8, 9, 69, 11, 0,
- 12, 0, 0, 0, 15, 16, 0, 0, 0, 1,
+ 0, 0, 0, 0, 70, 2, 26, 0, 3, 4,
+ 0, 93, 5, 0, 7, 8, 9, 69, 11, 0,
+ 12, 0, 0, 32, 15, 16, 0, 0, 0, 0,
+ 33, 34, 35, 36, 37, 0, 0, 0, 0, 0,
+ 0, 70, 0, 26, 0, 0, 41, 42, 0, 0,
+ 0, 0, 43, -159, -159, 44, 0, 0, 0, 0,
+ 32, 0, 0, 0, 0, 0, 0, 33, 34, 35,
+ 36, 37, 0, 0, 1, 0, 0, 0, 0, 0,
+ 0, 0, 0, 41, 42, 0, 0, 2, 0, 43,
+ 3, 4, 44, 0, 5, 0, 7, 8, 9, 69,
+ 11, 0, 12, 0, 0, 0, 15, 16, 0, 176,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 70, 2, 26, 0, 3, 4, 0, 93, 5,
- 0, 7, 8, 9, 69, 11, 0, 12, 0, 0,
- 32, 15, 16, 0, 0, 0, 0, 33, 34, 35,
- 36, 37, 0, 0, 0, 0, 0, 0, 70, 0,
- 26, 0, 0, 41, 42, 0, 0, 0, 0, 43,
- -159, -159, 44, 0, 0, 0, 0, 32, 0, 0,
- 0, 0, 0, 0, 33, 34, 35, 36, 37, 0,
- 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
- 41, 42, 0, 0, 2, 0, 43, 3, 4, 44,
- 0, 5, 0, 7, 8, 9, 69, 11, 0, 12,
- 0, 0, 0, 15, 16, 0, 0, 0, 85, 0,
- 87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 70, 0, 26, 0, 0, 140, 141, 142, 143, 144,
- 145, 0, 146, 0, 0, 147, 148, 149, 0, 32,
- 0, 0, 0, 0, 0, 0, 33, 34, 35, 36,
- 37, 150, 151, 152, 153, 154, 155, 156, 192, 0,
- 0, 0, 41, 42, 193, 0, 0, 0, 43, 0,
- 0, 44, 0, 140, 141, 142, 143, 144, 145, 0,
+ 0, 0, 0, 70, 0, 26, 0, 0, 140, 141,
+ 142, 143, 144, 145, 0, 146, 177, 178, 147, 148,
+ 149, 0, 32, 0, 0, 0, 0, 0, 0, 33,
+ 34, 35, 36, 37, 150, 151, 152, 153, 154, 155,
+ 156, 85, 0, 87, 0, 41, 42, 0, 0, 0,
+ 0, 43, 0, 0, 44, 0, 0, 0, 140, 141,
+ 142, 143, 144, 145, 0, 146, 0, 0, 147, 148,
+ 149, 0, 0, 0, 0, 0, 192, 0, 0, 0,
+ 0, 0, 193, 0, 150, 151, 152, 153, 154, 155,
+ 156, 140, 141, 142, 143, 144, 145, 0, 146, 0,
+ 0, 147, 148, 149, 0, 0, 0, 0, 0, 194,
+ 0, 0, 0, 0, 0, 195, 0, 150, 151, 152,
+ 153, 154, 155, 156, 140, 141, 142, 143, 144, 145,
+ 0, 146, 0, 0, 147, 148, 149, 0, 0, 0,
+ 0, 0, 196, 0, 0, 0, 0, 0, 197, 0,
+ 150, 151, 152, 153, 154, 155, 156, 140, 141, 142,
+ 143, 144, 145, 0, 146, 0, 0, 147, 148, 149,
+ 0, 0, 0, 0, 0, 198, 0, 0, 0, 0,
+ 0, 199, 0, 150, 151, 152, 153, 154, 155, 156,
+ 140, 141, 142, 143, 144, 145, 0, 146, 0, 0,
+ 147, 148, 149, 0, 0, 0, 0, 0, 297, 0,
+ 0, 0, 0, 0, 0, 0, 150, 151, 152, 153,
+ 154, 155, 156, 140, 141, 142, 143, 144, 145, 0,
146, 0, 0, 147, 148, 149, 0, 0, 0, 0,
- 0, 194, 0, 0, 0, 0, 0, 195, 0, 150,
+ 0, 298, 0, 0, 0, 0, 0, 0, 0, 150,
151, 152, 153, 154, 155, 156, 140, 141, 142, 143,
144, 145, 0, 146, 0, 0, 147, 148, 149, 0,
- 0, 0, 0, 0, 196, 0, 0, 0, 0, 0,
- 197, 0, 150, 151, 152, 153, 154, 155, 156, 140,
+ 0, 0, 0, 0, 299, 0, 0, 0, 0, 0,
+ 0, 0, 150, 151, 152, 153, 154, 155, 156, 140,
141, 142, 143, 144, 145, 0, 146, 0, 0, 147,
- 148, 149, 0, 0, 0, 0, 0, 198, 0, 0,
- 0, 0, 0, 199, 0, 150, 151, 152, 153, 154,
+ 148, 149, 0, 0, 0, 0, 0, 300, 0, 0,
+ 0, 0, 0, 0, 0, 150, 151, 152, 153, 154,
155, 156, 140, 141, 142, 143, 144, 145, 0, 146,
0, 0, 147, 148, 149, 0, 0, 0, 0, 0,
- 297, 0, 0, 0, 0, 0, 0, 0, 150, 151,
+ 0, 0, 0, 0, 0, 0, 202, 0, 150, 151,
152, 153, 154, 155, 156, 140, 141, 142, 143, 144,
- 145, 0, 146, 0, 0, 147, 148, 149, 0, 0,
- 0, 0, 0, 298, 0, 0, 0, 0, 0, 0,
- 0, 150, 151, 152, 153, 154, 155, 156, 140, 141,
+ 145, 188, 146, 0, 0, 147, 148, 149, 140, 141,
142, 143, 144, 145, 0, 146, 0, 0, 147, 148,
- 149, 0, 0, 0, 0, 0, 299, 0, 0, 0,
+ 149, 150, 151, 152, 153, 154, 155, 156, 0, 203,
0, 0, 0, 0, 150, 151, 152, 153, 154, 155,
156, 140, 141, 142, 143, 144, 145, 0, 146, 0,
- 0, 147, 148, 149, 0, 0, 0, 0, 0, 300,
+ 0, 147, 148, 149, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 150, 151, 152,
- 153, 154, 155, 156, 140, 141, 142, 143, 144, 145,
- 0, 146, 0, 0, 147, 148, 149, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 202, 0,
- 150, 151, 152, 153, 154, 155, 156, 140, 141, 142,
- 143, 144, 145, 188, 146, 0, 0, 147, 148, 149,
- 140, 141, 142, 143, 144, 145, 0, 146, 0, 0,
- 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
- 0, 203, 0, 0, 0, 0, 150, 151, 152, 153,
- 154, 155, 156, 140, 141, 142, 143, 144, 145, 0,
- 146, 0, 0, 147, 148, 149, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 150,
- 151, 152, 153, 154, 155, 156, 0, 0, 0, 207,
- 140, 141, 142, 143, 144, 145, 0, 146, 0, 0,
- 147, 148, 149, 0, 0, 0, 0, 0, 200, 201,
- 0, 0, 0, 0, 0, 0, 150, 151, 152, 153,
- 154, 155, 156, 140, 141, 142, 143, 144, 145, 0,
- 146, 0, 0, 147, 148, 149, 140, 141, 142, 143,
- 0, 0, 0, 146, 0, 0, 147, 148, 149, 150,
- 151, 152, 153, 154, 155, 156, 0, 0, 0, 0,
- 0, 0, 150, 151, 152, 153, 154, 155, 156
+ 153, 154, 155, 156, 0, 0, 0, 207, 140, 141,
+ 142, 143, 144, 145, 0, 146, 0, 0, 147, 148,
+ 149, 0, 0, 0, 0, 0, 200, 201, 0, 0,
+ 0, 0, 0, 0, 150, 151, 152, 153, 154, 155,
+ 156, 140, 141, 142, 143, 144, 145, 0, 146, 0,
+ 0, 147, 148, 149, 140, 141, 142, 143, 0, 0,
+ 0, 146, 0, 0, 147, 148, 149, 150, 151, 152,
+ 153, 154, 155, 156, 0, 0, 0, 0, 0, 0,
+ 150, 151, 152, 153, 154, 155, 156
};
static const yytype_int16 yycheck[] =
{
- 6, 7, 0, 168, 10, 82, 273, 30, 289, 134,
- 4, 328, 219, 19, 8, 70, 6, 7, 24, 43,
- 56, 57, 97, 29, 30, 100, 32, 33, 34, 35,
- 36, 37, 38, 35, 97, 41, 42, 43, 44, 94,
- 95, 65, 24, 310, 26, 51, 54, 53, 54, 27,
- 331, 29, 54, 97, 131, 132, 100, 65, 375, 54,
- 17, 18, 19, 70, 70, 71, 89, 54, 74, 26,
- 65, 97, 78, 48, 100, 81, 33, 70, 65, 85,
- 73, 71, 105, 77, 74, 92, 93, 94, 95, 99,
- 100, 81, 51, 360, 76, 77, 78, 79, 91, 92,
- 93, 94, 95, 51, 98, 99, 26, 99, 100, 26,
- 99, 100, 36, 37, 0, 98, 97, 26, 46, 26,
- 100, 100, 26, 26, 54, 26, 291, 53, 26, 26,
- 136, 129, 103, 103, 140, 141, 142, 143, 144, 145,
+ 6, 7, 133, 0, 10, 82, 168, 273, 54, 289,
+ 4, 54, 97, 19, 8, 100, 56, 57, 24, 65,
+ 43, 97, 65, 29, 30, 51, 32, 33, 34, 35,
+ 36, 37, 38, 6, 7, 41, 42, 43, 44, 283,
+ 284, 309, 65, 35, 310, 51, 70, 53, 54, 48,
+ 30, 331, 54, 97, 131, 132, 100, 301, 302, 26,
+ 328, 1, 54, 65, 70, 71, 51, 24, 74, 26,
+ 94, 95, 78, 26, 14, 81, 27, 17, 29, 85,
+ 324, 21, 97, 77, 0, 100, 26, 27, 219, 29,
+ 97, 70, 336, 98, 360, 99, 100, 100, 71, 100,
+ 344, 74, 36, 37, 98, 99, 26, 375, 81, 89,
+ 99, 100, 356, 92, 93, 94, 95, 46, 362, 76,
+ 77, 78, 79, 99, 100, 105, 26, 26, 26, 291,
+ 136, 54, 129, 26, 140, 141, 142, 143, 144, 145,
146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
- 156, 358, 158, 102, 100, 100, 162, 282, 283, 284,
- 166, 26, 100, 48, 100, 100, 172, 26, 44, 53,
- 247, 177, 178, 26, 180, 181, 301, 302, 184, 185,
- 186, 175, 188, 26, 26, 274, 192, 193, 194, 195,
- 196, 197, 198, 199, 200, 201, 285, 53, 26, 324,
- 1, 88, 54, 54, 87, 211, 86, 36, 87, 215,
- 216, 336, 86, 14, 208, 209, 17, 26, 307, 344,
- 21, 26, 311, 86, 313, 26, 27, 100, 29, 87,
- 53, 356, 87, 129, 203, 54, 86, 362, 86, 176,
- 54, 54, -1, -1, 212, -1, -1, -1, -1, 255,
- 256, 328, 341, -1, -1, -1, 345, -1, -1, -1,
- 337, -1, -1, -1, -1, -1, 355, -1, 357, 346,
- -1, -1, -1, 350, -1, -1, -1, -1, -1, -1,
- -1, -1, 371, -1, -1, -1, 292, 364, -1, 366,
- -1, 297, 298, 299, 300, -1, -1, 98, -1, -1,
- 101, 295, -1, -1, -1, -1, -1, -1, -1, -1,
+ 156, 53, 158, 17, 18, 19, 162, 26, 98, 26,
+ 166, 101, 26, 100, 103, 103, 172, 102, 100, 33,
+ 247, 177, 178, 26, 180, 181, 100, 48, 184, 185,
+ 186, 175, 188, 100, 26, 100, 192, 193, 194, 195,
+ 196, 197, 198, 199, 200, 201, 53, 44, 26, 26,
+ 26, 53, 26, 87, 54, 211, 1, 88, 54, 215,
+ 216, 86, 26, 87, 208, 209, 36, 100, 86, 14,
+ 86, 70, 17, 18, 73, 26, 21, 358, 23, 24,
+ 25, 26, 27, 87, 29, 53, 87, 129, 33, 34,
+ 203, 86, 91, 92, 93, 94, 95, 86, 54, 255,
+ 256, 328, 54, 212, 176, 50, 54, 52, -1, -1,
+ 337, -1, -1, -1, -1, -1, -1, -1, -1, 346,
+ -1, -1, -1, 350, 69, -1, -1, -1, -1, -1,
+ -1, 76, 77, 78, 79, 80, 292, 364, -1, 366,
+ -1, 297, 298, 299, 300, -1, -1, 92, 93, -1,
+ -1, 295, -1, 98, -1, -1, 101, 102, 103, -1,
-1, -1, -1, 0, 1, -1, -1, -1, -1, -1,
326, -1, -1, -1, -1, -1, 332, 14, -1, 335,
17, 18, -1, -1, 21, 22, 23, 24, 25, 26,
@@ -1322,205 +1326,209 @@ static const yytype_int16 yycheck[] =
-1, -1, -1, 60, 61, 62, 63, 64, 65, 66,
67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
77, 78, 79, 80, 81, 82, 83, 84, -1, 86,
- 87, 88, 89, 90, 91, 92, 93, 94, 95, 1,
- 97, 98, 99, 100, 101, 102, -1, -1, -1, -1,
- -1, -1, 14, -1, 44, 17, 18, -1, -1, 21,
- -1, 23, 24, 25, 26, 27, -1, 29, -1, -1,
- -1, 33, 34, 63, 64, 65, 66, 67, 68, -1,
- 70, 71, 72, 73, 74, 75, -1, -1, 50, -1,
- 52, -1, -1, -1, -1, -1, -1, -1, -1, 89,
- 90, 91, 92, 93, 94, 95, -1, 69, -1, -1,
- -1, -1, -1, -1, 76, 77, 78, 79, 80, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 0, 1,
- 92, 93, -1, -1, -1, -1, 98, -1, -1, 101,
- 102, 103, 14, -1, -1, 17, 18, -1, -1, 21,
- 22, 23, 24, 25, 26, 27, -1, 29, 30, 31,
- -1, 33, 34, -1, 36, 37, 38, 39, 40, 41,
- 42, -1, -1, -1, -1, 47, -1, -1, 50, 51,
- 52, -1, -1, 55, -1, -1, -1, -1, 60, 61,
- 62, 63, 64, 65, 66, 67, 68, 69, 70, -1,
- -1, 73, 74, 75, 76, 77, 78, 79, 80, -1,
- -1, 83, 84, -1, 86, 87, 88, 89, 90, 91,
- 92, 93, 94, 95, -1, 97, 98, 0, 1, 101,
+ 87, 88, 89, 90, 91, 92, 93, 94, 95, -1,
+ 97, 98, 99, 100, 101, 102, 0, 1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 14, -1, -1, 17, 18, -1, -1, 21, 22,
- 23, 24, 25, 26, 27, -1, 29, 30, 31, -1,
- 33, 34, -1, 36, 37, 38, 39, 40, 41, 42,
- -1, -1, -1, -1, 47, -1, -1, 50, 51, 52,
- -1, -1, 55, -1, -1, -1, -1, 60, 61, 62,
- -1, -1, -1, -1, -1, -1, 69, -1, -1, -1,
- -1, -1, -1, 76, 77, 78, 79, 80, -1, -1,
- 83, 84, -1, 86, 87, 88, 0, 1, -1, 92,
- 93, -1, -1, -1, 97, 98, -1, 100, 101, -1,
14, -1, -1, 17, 18, -1, -1, 21, 22, 23,
24, 25, 26, 27, -1, 29, 30, 31, -1, 33,
34, -1, 36, 37, 38, 39, 40, 41, 42, -1,
-1, -1, -1, 47, -1, -1, 50, 51, 52, -1,
- -1, 55, -1, -1, -1, -1, 60, 61, 62, -1,
- -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
- -1, -1, 76, 77, 78, 79, 80, -1, -1, 83,
- 84, -1, 86, 87, 88, 0, 1, -1, 92, 93,
- -1, -1, -1, 97, 98, -1, 100, 101, -1, 14,
+ -1, 55, -1, -1, -1, -1, 60, 61, 62, 63,
+ 64, 65, 66, 67, 68, 69, 70, -1, -1, 73,
+ 74, 75, 76, 77, 78, 79, 80, -1, -1, 83,
+ 84, -1, 86, 87, 88, 89, 90, 91, 92, 93,
+ 94, 95, -1, 97, 98, 0, 1, 101, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 14,
-1, -1, 17, 18, -1, -1, 21, 22, 23, 24,
- 25, 26, 27, -1, 29, -1, 31, 32, 33, 34,
+ 25, 26, 27, -1, 29, 30, 31, -1, 33, 34,
+ -1, 36, 37, 38, 39, 40, 41, 42, -1, -1,
+ -1, -1, 47, -1, -1, 50, 51, 52, -1, -1,
+ 55, -1, -1, -1, -1, 60, 61, 62, -1, -1,
+ -1, -1, -1, -1, 69, -1, -1, -1, -1, -1,
+ -1, 76, 77, 78, 79, 80, -1, -1, 83, 84,
+ -1, 86, 87, 88, 0, 1, -1, 92, 93, -1,
+ -1, -1, 97, 98, -1, 100, 101, -1, 14, -1,
+ -1, 17, 18, -1, -1, 21, 22, 23, 24, 25,
+ 26, 27, -1, 29, 30, 31, -1, 33, 34, -1,
+ 36, 37, 38, 39, 40, 41, 42, -1, -1, -1,
+ -1, 47, -1, -1, 50, 51, 52, -1, -1, 55,
+ -1, -1, -1, -1, 60, 61, 62, -1, -1, -1,
+ -1, -1, -1, 69, -1, -1, -1, -1, -1, -1,
+ 76, 77, 78, 79, 80, -1, -1, 83, 84, -1,
+ 86, 87, 88, 0, 1, -1, 92, 93, -1, -1,
+ -1, 97, 98, -1, 100, 101, -1, 14, -1, -1,
+ 17, 18, -1, -1, 21, 22, 23, 24, 25, 26,
+ 27, -1, 29, -1, 31, 32, 33, 34, -1, -1,
+ -1, 38, 39, 40, 41, 42, -1, -1, 45, -1,
+ 47, -1, -1, 50, 51, 52, -1, -1, 55, -1,
+ -1, -1, 59, 60, 61, 62, -1, -1, -1, -1,
+ -1, -1, 69, -1, -1, -1, -1, -1, -1, 76,
+ 77, 78, 79, 80, -1, -1, 83, 84, 85, 0,
+ 1, -1, -1, -1, -1, 92, 93, -1, -1, -1,
+ 97, 98, -1, 14, 101, -1, 17, 18, -1, -1,
+ 21, 22, 23, 24, 25, 26, 27, -1, 29, 30,
+ 31, -1, 33, 34, -1, -1, -1, 38, 39, 40,
+ 41, 42, -1, -1, -1, -1, 47, -1, -1, 50,
+ 51, 52, -1, -1, 55, -1, -1, -1, -1, 60,
+ 61, 62, -1, -1, -1, -1, -1, -1, 69, -1,
+ -1, -1, -1, -1, -1, 76, 77, 78, 79, 80,
+ -1, -1, 83, 84, 0, 1, -1, -1, -1, -1,
+ -1, 92, 93, -1, -1, -1, 97, 98, 14, -1,
+ 101, 17, 18, -1, -1, 21, 22, 23, 24, 25,
+ 26, 27, -1, 29, -1, 31, -1, 33, 34, -1,
+ -1, -1, 38, 39, 40, 41, 42, -1, -1, -1,
+ -1, 47, -1, -1, 50, 51, 52, -1, -1, 55,
+ -1, -1, -1, -1, 60, 61, 62, -1, -1, -1,
+ -1, -1, -1, 69, -1, -1, -1, -1, -1, -1,
+ 76, 77, 78, 79, 80, -1, -1, 83, 84, 0,
+ 1, -1, -1, -1, -1, -1, 92, 93, -1, -1,
+ -1, 97, 98, 14, -1, 101, 17, 18, -1, -1,
+ 21, 22, 23, 24, 25, 26, 27, -1, 29, -1,
+ 31, -1, 33, 34, -1, -1, -1, 38, 39, 40,
+ 41, 42, -1, -1, -1, -1, 47, -1, -1, 50,
+ 51, 52, -1, -1, 55, -1, -1, -1, -1, 60,
+ 61, 62, -1, -1, -1, -1, -1, -1, 69, -1,
+ -1, -1, -1, -1, -1, 76, 77, 78, 79, 80,
+ -1, -1, 83, 84, -1, 1, -1, -1, -1, -1,
+ -1, 92, 93, -1, -1, -1, 97, 98, 14, -1,
+ 101, 17, 18, -1, -1, 21, 22, 23, 24, 25,
+ 26, 27, -1, 29, -1, 31, -1, 33, 34, 274,
+ 36, 37, 38, 39, 40, 41, 42, -1, -1, -1,
+ 285, 47, -1, -1, 50, 51, 52, -1, -1, 55,
+ -1, -1, -1, -1, 60, 61, 62, -1, -1, -1,
+ -1, -1, 307, 69, -1, -1, 311, -1, 313, -1,
+ 76, 77, 78, 79, 80, -1, -1, 83, 84, -1,
+ 86, 1, -1, -1, -1, -1, 92, 93, -1, -1,
+ -1, 97, 98, -1, 14, 101, 341, 17, 18, -1,
+ 345, 21, 22, 23, 24, 25, 26, 27, -1, 29,
+ 355, 31, 357, 33, 34, -1, -1, -1, 38, 39,
+ 40, 41, 42, -1, -1, -1, 371, 47, -1, -1,
+ 50, 51, 52, -1, -1, 55, -1, -1, -1, -1,
+ 60, 61, 62, -1, -1, -1, -1, -1, -1, 69,
+ -1, -1, -1, -1, -1, -1, 76, 77, 78, 79,
+ 80, -1, -1, 83, 84, -1, 1, 87, -1, -1,
+ -1, -1, 92, 93, -1, -1, -1, 97, 98, 14,
+ -1, 101, 17, 18, -1, -1, 21, 22, 23, 24,
+ 25, 26, 27, -1, 29, -1, 31, -1, 33, 34,
-1, -1, -1, 38, 39, 40, 41, 42, -1, -1,
- 45, -1, 47, -1, -1, 50, 51, 52, -1, -1,
- 55, -1, -1, -1, 59, 60, 61, 62, -1, -1,
+ -1, -1, 47, -1, -1, 50, 51, 52, -1, -1,
+ 55, -1, -1, -1, -1, 60, 61, 62, -1, -1,
-1, -1, -1, -1, 69, -1, -1, -1, -1, -1,
-1, 76, 77, 78, 79, 80, -1, -1, 83, 84,
- 85, 0, 1, -1, -1, -1, -1, 92, 93, -1,
+ -1, 1, -1, 88, -1, -1, -1, 92, 93, -1,
+ -1, -1, 97, 98, 14, -1, 101, 17, 18, -1,
+ -1, 21, 22, 23, 24, 25, 26, 27, -1, 29,
+ -1, 31, -1, 33, 34, -1, -1, -1, 38, 39,
+ 40, 41, 42, -1, -1, -1, -1, 47, -1, -1,
+ 50, 51, 52, -1, -1, 55, -1, -1, -1, -1,
+ 60, 61, 62, -1, -1, -1, -1, -1, -1, 69,
+ -1, -1, -1, -1, -1, -1, 76, 77, 78, 79,
+ 80, -1, -1, 83, 84, -1, 1, 87, -1, -1,
+ -1, -1, 92, 93, -1, -1, -1, 97, 98, 14,
+ -1, 101, 17, 18, -1, -1, 21, 22, 23, 24,
+ 25, 26, 27, -1, 29, -1, 31, -1, 33, 34,
+ -1, -1, -1, 38, 39, 40, 41, 42, -1, -1,
+ -1, -1, 47, -1, -1, 50, 51, 52, -1, -1,
+ 55, -1, -1, -1, -1, 60, 61, 62, -1, -1,
+ -1, -1, -1, -1, 69, -1, -1, -1, -1, -1,
+ -1, 76, 77, 78, 79, 80, -1, -1, 83, 84,
+ -1, 86, 1, -1, -1, -1, -1, 92, 93, -1,
-1, -1, 97, 98, -1, 14, 101, -1, 17, 18,
-1, -1, 21, 22, 23, 24, 25, 26, 27, -1,
- 29, 30, 31, -1, 33, 34, -1, -1, -1, 38,
- 39, 40, 41, 42, -1, -1, -1, -1, 47, -1,
- -1, 50, 51, 52, -1, -1, 55, -1, -1, -1,
- -1, 60, 61, 62, -1, -1, -1, -1, -1, -1,
- 69, -1, -1, -1, -1, -1, -1, 76, 77, 78,
- 79, 80, -1, -1, 83, 84, 0, 1, -1, -1,
- -1, -1, -1, 92, 93, -1, -1, -1, 97, 98,
- 14, -1, 101, 17, 18, -1, -1, 21, 22, 23,
- 24, 25, 26, 27, -1, 29, -1, 31, -1, 33,
- 34, -1, -1, -1, 38, 39, 40, 41, 42, -1,
- -1, -1, -1, 47, -1, -1, 50, 51, 52, -1,
- -1, 55, -1, -1, -1, -1, 60, 61, 62, -1,
- -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
- -1, -1, 76, 77, 78, 79, 80, -1, -1, 83,
- 84, 0, 1, -1, -1, -1, -1, -1, 92, 93,
- -1, -1, -1, 97, 98, 14, -1, 101, 17, 18,
- -1, -1, 21, 22, 23, 24, 25, 26, 27, -1,
29, -1, 31, -1, 33, 34, -1, -1, -1, 38,
- 39, 40, 41, 42, -1, -1, -1, -1, 47, -1,
- -1, 50, 51, 52, -1, -1, 55, -1, -1, -1,
+ 39, 40, 41, 42, -1, -1, -1, -1, -1, -1,
+ -1, 50, -1, 52, -1, -1, -1, -1, -1, -1,
-1, 60, 61, 62, -1, -1, -1, -1, -1, -1,
69, -1, -1, -1, -1, -1, -1, 76, 77, 78,
- 79, 80, -1, -1, 83, 84, -1, 1, -1, -1,
- -1, -1, -1, 92, 93, -1, -1, -1, 97, 98,
- 14, -1, 101, 17, 18, -1, -1, 21, 22, 23,
- 24, 25, 26, 27, -1, 29, -1, 31, -1, 33,
- 34, -1, 36, 37, 38, 39, 40, 41, 42, -1,
- -1, -1, -1, 47, -1, -1, 50, 51, 52, -1,
- -1, 55, -1, -1, -1, -1, 60, 61, 62, -1,
- -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
- -1, -1, 76, 77, 78, 79, 80, -1, -1, 83,
- 84, -1, 86, 1, -1, -1, -1, -1, 92, 93,
- -1, -1, -1, 97, 98, -1, 14, 101, -1, 17,
- 18, -1, -1, 21, 22, 23, 24, 25, 26, 27,
- -1, 29, -1, 31, -1, 33, 34, -1, -1, -1,
- 38, 39, 40, 41, 42, -1, -1, -1, -1, 47,
- -1, -1, 50, 51, 52, -1, -1, 55, -1, -1,
- -1, -1, 60, 61, 62, -1, -1, -1, -1, -1,
+ 79, 80, -1, -1, 1, 84, -1, -1, -1, -1,
+ -1, -1, -1, 92, 93, -1, -1, 14, -1, 98,
+ 17, 18, 101, -1, 21, 22, 23, 24, 25, 26,
+ 27, -1, 29, -1, 31, -1, 33, 34, -1, -1,
+ -1, 38, 39, 40, 41, -1, -1, -1, -1, -1,
+ -1, -1, -1, 50, -1, 52, -1, -1, -1, -1,
+ -1, -1, -1, 60, 61, 62, -1, -1, -1, -1,
+ -1, -1, 69, -1, -1, -1, -1, -1, -1, 76,
+ 77, 78, 79, 80, -1, -1, 1, 84, -1, -1,
+ -1, -1, -1, -1, -1, 92, 93, -1, -1, 14,
+ -1, 98, 17, 18, 101, -1, 21, -1, 23, 24,
+ 25, 26, 27, -1, 29, -1, -1, -1, 33, 34,
+ -1, -1, -1, 1, -1, -1, -1, -1, -1, -1,
+ -1, 46, 47, 48, 49, 50, 14, 52, -1, 17,
+ 18, -1, -1, 21, -1, 23, 24, 25, 26, 27,
+ -1, 29, -1, -1, 69, 33, 34, -1, -1, -1,
+ -1, 76, 77, 78, 79, 80, -1, -1, 46, -1,
+ 48, -1, 50, -1, 52, -1, -1, 92, 93, -1,
+ -1, -1, -1, 98, -1, -1, 101, -1, -1, -1,
-1, 69, -1, -1, -1, -1, -1, -1, 76, 77,
- 78, 79, 80, -1, -1, 83, 84, -1, 1, 87,
- -1, -1, -1, -1, 92, 93, -1, -1, -1, 97,
- 98, 14, -1, 101, 17, 18, -1, -1, 21, 22,
- 23, 24, 25, 26, 27, -1, 29, -1, 31, -1,
- 33, 34, -1, -1, -1, 38, 39, 40, 41, 42,
- -1, -1, -1, -1, 47, -1, -1, 50, 51, 52,
- -1, -1, 55, -1, -1, -1, -1, 60, 61, 62,
- -1, -1, -1, -1, -1, -1, 69, -1, -1, -1,
- -1, -1, -1, 76, 77, 78, 79, 80, -1, -1,
- 83, 84, -1, 1, -1, 88, -1, -1, -1, 92,
- 93, -1, -1, -1, 97, 98, 14, -1, 101, 17,
- 18, -1, -1, 21, 22, 23, 24, 25, 26, 27,
- -1, 29, -1, 31, -1, 33, 34, -1, -1, -1,
- 38, 39, 40, 41, 42, -1, -1, -1, -1, 47,
- -1, -1, 50, 51, 52, -1, -1, 55, -1, -1,
- -1, -1, 60, 61, 62, -1, -1, -1, -1, -1,
- -1, 69, -1, -1, -1, -1, -1, -1, 76, 77,
- 78, 79, 80, -1, -1, 83, 84, -1, 86, 1,
- -1, -1, -1, -1, 92, 93, -1, -1, -1, 97,
- 98, -1, 14, 101, -1, 17, 18, -1, -1, 21,
- 22, 23, 24, 25, 26, 27, -1, 29, -1, 31,
- -1, 33, 34, -1, -1, -1, 38, 39, 40, 41,
- 42, -1, -1, -1, -1, -1, -1, -1, 50, -1,
- 52, -1, -1, -1, -1, -1, -1, -1, 60, 61,
- 62, -1, -1, -1, -1, -1, -1, 69, -1, -1,
- -1, -1, -1, -1, 76, 77, 78, 79, 80, -1,
- -1, 1, 84, -1, -1, -1, -1, -1, -1, -1,
- 92, 93, -1, -1, 14, -1, 98, 17, 18, 101,
- -1, 21, 22, 23, 24, 25, 26, 27, -1, 29,
- -1, 31, -1, 33, 34, -1, -1, -1, 38, 39,
- 40, 41, -1, -1, -1, -1, -1, -1, -1, -1,
- 50, -1, 52, -1, -1, -1, -1, -1, -1, -1,
- 60, 61, 62, -1, -1, -1, -1, -1, -1, 69,
- -1, -1, -1, -1, -1, -1, 76, 77, 78, 79,
- 80, -1, -1, 1, 84, -1, -1, -1, -1, -1,
- -1, -1, 92, 93, -1, -1, 14, -1, 98, 17,
- 18, 101, -1, 21, -1, 23, 24, 25, 26, 27,
- -1, 29, -1, -1, -1, 33, 34, -1, -1, -1,
- 1, -1, -1, -1, -1, -1, -1, -1, 46, 47,
- 48, 49, 50, 14, 52, -1, 17, 18, -1, -1,
- 21, -1, 23, 24, 25, 26, 27, -1, 29, -1,
- -1, 69, 33, 34, -1, -1, -1, -1, 76, 77,
- 78, 79, 80, -1, -1, 46, -1, 48, -1, 50,
- -1, 52, -1, -1, 92, 93, -1, -1, -1, -1,
- 98, -1, -1, 101, -1, -1, -1, -1, 69, -1,
- -1, -1, -1, -1, -1, 76, 77, 78, 79, 80,
+ 78, 79, 80, -1, -1, 1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 92, 93, -1, -1, 14, -1,
+ 98, 17, 18, 101, -1, 21, -1, 23, 24, 25,
+ 26, 27, -1, 29, -1, -1, -1, 33, 34, -1,
-1, -1, 1, -1, -1, -1, -1, -1, -1, -1,
- -1, 92, 93, -1, -1, 14, -1, 98, 17, 18,
- 101, -1, 21, -1, 23, 24, 25, 26, 27, -1,
- 29, -1, -1, -1, 33, 34, -1, -1, -1, 1,
+ -1, -1, -1, -1, 50, 14, 52, -1, 17, 18,
+ -1, 20, 21, -1, 23, 24, 25, 26, 27, -1,
+ 29, -1, -1, 69, 33, 34, -1, -1, -1, -1,
+ 76, 77, 78, 79, 80, -1, -1, -1, -1, -1,
+ -1, 50, -1, 52, -1, -1, 92, 93, -1, -1,
+ -1, -1, 98, 99, 100, 101, -1, -1, -1, -1,
+ 69, -1, -1, -1, -1, -1, -1, 76, 77, 78,
+ 79, 80, -1, -1, 1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 92, 93, -1, -1, 14, -1, 98,
+ 17, 18, 101, -1, 21, -1, 23, 24, 25, 26,
+ 27, -1, 29, -1, -1, -1, 33, 34, -1, 44,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 50, 14, 52, -1, 17, 18, -1, 20, 21,
- -1, 23, 24, 25, 26, 27, -1, 29, -1, -1,
- 69, 33, 34, -1, -1, -1, -1, 76, 77, 78,
- 79, 80, -1, -1, -1, -1, -1, -1, 50, -1,
- 52, -1, -1, 92, 93, -1, -1, -1, -1, 98,
- 99, 100, 101, -1, -1, -1, -1, 69, -1, -1,
- -1, -1, -1, -1, 76, 77, 78, 79, 80, -1,
- -1, 1, -1, -1, -1, -1, -1, -1, -1, -1,
- 92, 93, -1, -1, 14, -1, 98, 17, 18, 101,
- -1, 21, -1, 23, 24, 25, 26, 27, -1, 29,
- -1, -1, -1, 33, 34, -1, -1, -1, 46, -1,
- 48, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 50, -1, 52, -1, -1, 63, 64, 65, 66, 67,
- 68, -1, 70, -1, -1, 73, 74, 75, -1, 69,
- -1, -1, -1, -1, -1, -1, 76, 77, 78, 79,
- 80, 89, 90, 91, 92, 93, 94, 95, 48, -1,
- -1, -1, 92, 93, 54, -1, -1, -1, 98, -1,
- -1, 101, -1, 63, 64, 65, 66, 67, 68, -1,
+ -1, -1, -1, 50, -1, 52, -1, -1, 63, 64,
+ 65, 66, 67, 68, -1, 70, 71, 72, 73, 74,
+ 75, -1, 69, -1, -1, -1, -1, -1, -1, 76,
+ 77, 78, 79, 80, 89, 90, 91, 92, 93, 94,
+ 95, 46, -1, 48, -1, 92, 93, -1, -1, -1,
+ -1, 98, -1, -1, 101, -1, -1, -1, 63, 64,
+ 65, 66, 67, 68, -1, 70, -1, -1, 73, 74,
+ 75, -1, -1, -1, -1, -1, 48, -1, -1, -1,
+ -1, -1, 54, -1, 89, 90, 91, 92, 93, 94,
+ 95, 63, 64, 65, 66, 67, 68, -1, 70, -1,
+ -1, 73, 74, 75, -1, -1, -1, -1, -1, 48,
+ -1, -1, -1, -1, -1, 54, -1, 89, 90, 91,
+ 92, 93, 94, 95, 63, 64, 65, 66, 67, 68,
+ -1, 70, -1, -1, 73, 74, 75, -1, -1, -1,
+ -1, -1, 48, -1, -1, -1, -1, -1, 54, -1,
+ 89, 90, 91, 92, 93, 94, 95, 63, 64, 65,
+ 66, 67, 68, -1, 70, -1, -1, 73, 74, 75,
+ -1, -1, -1, -1, -1, 48, -1, -1, -1, -1,
+ -1, 54, -1, 89, 90, 91, 92, 93, 94, 95,
+ 63, 64, 65, 66, 67, 68, -1, 70, -1, -1,
+ 73, 74, 75, -1, -1, -1, -1, -1, 48, -1,
+ -1, -1, -1, -1, -1, -1, 89, 90, 91, 92,
+ 93, 94, 95, 63, 64, 65, 66, 67, 68, -1,
70, -1, -1, 73, 74, 75, -1, -1, -1, -1,
- -1, 48, -1, -1, -1, -1, -1, 54, -1, 89,
+ -1, 48, -1, -1, -1, -1, -1, -1, -1, 89,
90, 91, 92, 93, 94, 95, 63, 64, 65, 66,
67, 68, -1, 70, -1, -1, 73, 74, 75, -1,
-1, -1, -1, -1, 48, -1, -1, -1, -1, -1,
- 54, -1, 89, 90, 91, 92, 93, 94, 95, 63,
+ -1, -1, 89, 90, 91, 92, 93, 94, 95, 63,
64, 65, 66, 67, 68, -1, 70, -1, -1, 73,
74, 75, -1, -1, -1, -1, -1, 48, -1, -1,
- -1, -1, -1, 54, -1, 89, 90, 91, 92, 93,
+ -1, -1, -1, -1, -1, 89, 90, 91, 92, 93,
94, 95, 63, 64, 65, 66, 67, 68, -1, 70,
-1, -1, 73, 74, 75, -1, -1, -1, -1, -1,
- 48, -1, -1, -1, -1, -1, -1, -1, 89, 90,
+ -1, -1, -1, -1, -1, -1, 54, -1, 89, 90,
91, 92, 93, 94, 95, 63, 64, 65, 66, 67,
- 68, -1, 70, -1, -1, 73, 74, 75, -1, -1,
- -1, -1, -1, 48, -1, -1, -1, -1, -1, -1,
- -1, 89, 90, 91, 92, 93, 94, 95, 63, 64,
+ 68, 56, 70, -1, -1, 73, 74, 75, 63, 64,
65, 66, 67, 68, -1, 70, -1, -1, 73, 74,
- 75, -1, -1, -1, -1, -1, 48, -1, -1, -1,
+ 75, 89, 90, 91, 92, 93, 94, 95, -1, 97,
-1, -1, -1, -1, 89, 90, 91, 92, 93, 94,
95, 63, 64, 65, 66, 67, 68, -1, 70, -1,
- -1, 73, 74, 75, -1, -1, -1, -1, -1, 48,
+ -1, 73, 74, 75, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 89, 90, 91,
- 92, 93, 94, 95, 63, 64, 65, 66, 67, 68,
- -1, 70, -1, -1, 73, 74, 75, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 54, -1,
- 89, 90, 91, 92, 93, 94, 95, 63, 64, 65,
- 66, 67, 68, 56, 70, -1, -1, 73, 74, 75,
- 63, 64, 65, 66, 67, 68, -1, 70, -1, -1,
- 73, 74, 75, 89, 90, 91, 92, 93, 94, 95,
- -1, 97, -1, -1, -1, -1, 89, 90, 91, 92,
- 93, 94, 95, 63, 64, 65, 66, 67, 68, -1,
- 70, -1, -1, 73, 74, 75, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 89,
- 90, 91, 92, 93, 94, 95, -1, -1, -1, 99,
- 63, 64, 65, 66, 67, 68, -1, 70, -1, -1,
- 73, 74, 75, -1, -1, -1, -1, -1, 81, 82,
- -1, -1, -1, -1, -1, -1, 89, 90, 91, 92,
- 93, 94, 95, 63, 64, 65, 66, 67, 68, -1,
- 70, -1, -1, 73, 74, 75, 63, 64, 65, 66,
- -1, -1, -1, 70, -1, -1, 73, 74, 75, 89,
- 90, 91, 92, 93, 94, 95, -1, -1, -1, -1,
- -1, -1, 89, 90, 91, 92, 93, 94, 95
+ 92, 93, 94, 95, -1, -1, -1, 99, 63, 64,
+ 65, 66, 67, 68, -1, 70, -1, -1, 73, 74,
+ 75, -1, -1, -1, -1, -1, 81, 82, -1, -1,
+ -1, -1, -1, -1, 89, 90, 91, 92, 93, 94,
+ 95, 63, 64, 65, 66, 67, 68, -1, 70, -1,
+ -1, 73, 74, 75, 63, 64, 65, 66, -1, -1,
+ -1, 70, -1, -1, 73, 74, 75, 89, 90, 91,
+ 92, 93, 94, 95, -1, -1, -1, -1, -1, -1,
+ 89, 90, 91, 92, 93, 94, 95
};
/* YYSTOSSTATE-NUM -- The (internal number of the) accessing
@@ -1548,7 +1556,7 @@ static const yytype_uint8 yystos[] =
54, 65, 125, 125, 54, 65, 54, 53, 56, 137,
26, 135, 48, 54, 48, 54, 48, 54, 48, 54,
81, 82, 54, 97, 26, 134, 26, 99, 103, 103,
- 102, 100, 100, 105, 122, 121, 121, 118, 122, 126,
+ 102, 100, 100, 105, 118, 121, 121, 118, 122, 126,
126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
126, 126, 126, 126, 126, 126, 126, 26, 146, 99,
126, 99, 99, 126, 146, 100, 126, 142, 125, 26,
@@ -1557,7 +1565,7 @@ static const yytype_uint8 yystos[] =
126, 126, 126, 111, 111, 100, 125, 125, 126, 27,
29, 156, 123, 126, 126, 53, 118, 97, 100, 97,
26, 121, 44, 126, 126, 26, 26, 48, 48, 48,
- 48, 108, 123, 26, 97, 110, 122, 122, 122, 123,
+ 48, 108, 123, 26, 97, 110, 119, 122, 122, 123,
53, 148, 26, 148, 146, 126, 125, 126, 126, 126,
126, 122, 122, 87, 123, 35, 54, 119, 108, 123,
123, 97, 54, 88, 122, 54, 126, 113, 119, 121,
@@ -1884,79 +1892,79 @@ yydestruct (const char *yymsg,
case 22: /* BLTIN */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1888 "engines/director/lingo/lingo-gr.cpp"
+#line 1896 "engines/director/lingo/lingo-gr.cpp"
break;
case 23: /* FBLTIN */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1894 "engines/director/lingo/lingo-gr.cpp"
+#line 1902 "engines/director/lingo/lingo-gr.cpp"
break;
case 24: /* RBLTIN */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1900 "engines/director/lingo/lingo-gr.cpp"
+#line 1908 "engines/director/lingo/lingo-gr.cpp"
break;
case 25: /* THEFBLTIN */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1906 "engines/director/lingo/lingo-gr.cpp"
+#line 1914 "engines/director/lingo/lingo-gr.cpp"
break;
case 26: /* ID */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1912 "engines/director/lingo/lingo-gr.cpp"
+#line 1920 "engines/director/lingo/lingo-gr.cpp"
break;
case 27: /* STRING */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1918 "engines/director/lingo/lingo-gr.cpp"
+#line 1926 "engines/director/lingo/lingo-gr.cpp"
break;
case 28: /* HANDLER */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1924 "engines/director/lingo/lingo-gr.cpp"
+#line 1932 "engines/director/lingo/lingo-gr.cpp"
break;
case 29: /* SYMBOL */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1930 "engines/director/lingo/lingo-gr.cpp"
+#line 1938 "engines/director/lingo/lingo-gr.cpp"
break;
case 30: /* ENDCLAUSE */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1936 "engines/director/lingo/lingo-gr.cpp"
+#line 1944 "engines/director/lingo/lingo-gr.cpp"
break;
case 31: /* tPLAYACCEL */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1942 "engines/director/lingo/lingo-gr.cpp"
+#line 1950 "engines/director/lingo/lingo-gr.cpp"
break;
case 32: /* tMETHOD */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1948 "engines/director/lingo/lingo-gr.cpp"
+#line 1956 "engines/director/lingo/lingo-gr.cpp"
break;
case 33: /* THEOBJECTFIELD */
#line 161 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).objectfield).os; }
-#line 1954 "engines/director/lingo/lingo-gr.cpp"
+#line 1962 "engines/director/lingo/lingo-gr.cpp"
break;
case 144: /* on */
#line 160 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 1960 "engines/director/lingo/lingo-gr.cpp"
+#line 1968 "engines/director/lingo/lingo-gr.cpp"
break;
default:
@@ -2242,7 +2250,7 @@ yyreduce:
g_lingo->code1(LC::c_assign);
(yyval.code) = (yyvsp[-2].code);
delete (yyvsp[0].s); }
-#line 2246 "engines/director/lingo/lingo-gr.cpp"
+#line 2254 "engines/director/lingo/lingo-gr.cpp"
break;
case 8:
@@ -2250,7 +2258,7 @@ yyreduce:
{
g_lingo->code1(LC::c_assign);
(yyval.code) = (yyvsp[-2].code); }
-#line 2254 "engines/director/lingo/lingo-gr.cpp"
+#line 2262 "engines/director/lingo/lingo-gr.cpp"
break;
case 9:
@@ -2266,19 +2274,19 @@ yyreduce:
g_lingo->codeInt((yyvsp[-4].e)[1]);
g_lingo->code1(LC::c_assign);
(yyval.code) = (yyvsp[0].code); }
-#line 2270 "engines/director/lingo/lingo-gr.cpp"
+#line 2278 "engines/director/lingo/lingo-gr.cpp"
break;
case 10:
#line 193 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->code1(LC::c_after); }
-#line 2276 "engines/director/lingo/lingo-gr.cpp"
+#line 2284 "engines/director/lingo/lingo-gr.cpp"
break;
case 11:
#line 194 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->code1(LC::c_before); }
-#line 2282 "engines/director/lingo/lingo-gr.cpp"
+#line 2290 "engines/director/lingo/lingo-gr.cpp"
break;
case 12:
@@ -2289,7 +2297,7 @@ yyreduce:
g_lingo->code1(LC::c_assign);
(yyval.code) = (yyvsp[0].code);
delete (yyvsp[-2].s); }
-#line 2293 "engines/director/lingo/lingo-gr.cpp"
+#line 2301 "engines/director/lingo/lingo-gr.cpp"
break;
case 13:
@@ -2301,7 +2309,7 @@ yyreduce:
g_lingo->codeInt((yyvsp[-2].e)[0]);
g_lingo->codeInt((yyvsp[-2].e)[1]);
(yyval.code) = (yyvsp[0].code); }
-#line 2305 "engines/director/lingo/lingo-gr.cpp"
+#line 2313 "engines/director/lingo/lingo-gr.cpp"
break;
case 14:
@@ -2312,7 +2320,7 @@ yyreduce:
g_lingo->code1(LC::c_assign);
(yyval.code) = (yyvsp[0].code);
delete (yyvsp[-2].s); }
-#line 2316 "engines/director/lingo/lingo-gr.cpp"
+#line 2324 "engines/director/lingo/lingo-gr.cpp"
break;
case 15:
@@ -2324,7 +2332,7 @@ yyreduce:
g_lingo->codeInt((yyvsp[-2].e)[0]);
g_lingo->codeInt((yyvsp[-2].e)[1]);
(yyval.code) = (yyvsp[0].code); }
-#line 2328 "engines/director/lingo/lingo-gr.cpp"
+#line 2336 "engines/director/lingo/lingo-gr.cpp"
break;
case 16:
@@ -2335,7 +2343,7 @@ yyreduce:
g_lingo->codeInt((yyvsp[-3].e)[0]);
g_lingo->codeInt((yyvsp[-3].e)[1]);
(yyval.code) = (yyvsp[0].code); }
-#line 2339 "engines/director/lingo/lingo-gr.cpp"
+#line 2347 "engines/director/lingo/lingo-gr.cpp"
break;
case 17:
@@ -2346,7 +2354,7 @@ yyreduce:
g_lingo->codeInt((yyvsp[-3].e)[0]);
g_lingo->codeInt((yyvsp[-3].e)[1]);
(yyval.code) = (yyvsp[0].code); }
-#line 2350 "engines/director/lingo/lingo-gr.cpp"
+#line 2358 "engines/director/lingo/lingo-gr.cpp"
break;
case 18:
@@ -2362,7 +2370,7 @@ yyreduce:
g_lingo->codeInt((yyvsp[-6].e)[0]);
g_lingo->codeInt((yyvsp[-6].e)[1]);
(yyval.code) = (yyvsp[0].code); }
-#line 2366 "engines/director/lingo/lingo-gr.cpp"
+#line 2374 "engines/director/lingo/lingo-gr.cpp"
break;
case 19:
@@ -2373,18 +2381,18 @@ yyreduce:
g_lingo->codeInt((yyvsp[-2].objectfield).oe);
delete (yyvsp[-2].objectfield).os;
(yyval.code) = (yyvsp[0].code); }
-#line 2377 "engines/director/lingo/lingo-gr.cpp"
+#line 2385 "engines/director/lingo/lingo-gr.cpp"
break;
case 29:
#line 267 "engines/director/lingo/lingo-gr.y"
{
- inst body = 0, end = 0;
- WRITE_UINT32(&body, (yyvsp[-3].code) - (yyvsp[-5].code));
- WRITE_UINT32(&end, (yyvsp[-1].code) - (yyvsp[-5].code));
- (*g_lingo->_currentScript)[(yyvsp[-5].code) + 1] = body; /* body of loop */
- (*g_lingo->_currentScript)[(yyvsp[-5].code) + 2] = end; }
-#line 2388 "engines/director/lingo/lingo-gr.cpp"
+ inst start = 0, end = 0;
+ WRITE_UINT32(&start, (yyvsp[-5].code) - (yyvsp[-1].narg) + 2);
+ WRITE_UINT32(&end, (yyvsp[-1].narg) - (yyvsp[-3].narg) + 2);
+ (*g_lingo->_currentScript)[(yyvsp[-3].narg)] = end; /* end, if cond fails */
+ (*g_lingo->_currentScript)[(yyvsp[-1].narg)] = start; }
+#line 2396 "engines/director/lingo/lingo-gr.cpp"
break;
case 30:
@@ -2401,7 +2409,7 @@ yyreduce:
(*g_lingo->_currentScript)[(yyvsp[-10].code) + 3] = body; /* body of loop */
(*g_lingo->_currentScript)[(yyvsp[-10].code) + 4] = inc; /* increment */
(*g_lingo->_currentScript)[(yyvsp[-10].code) + 5] = end; }
-#line 2405 "engines/director/lingo/lingo-gr.cpp"
+#line 2413 "engines/director/lingo/lingo-gr.cpp"
break;
case 31:
@@ -2418,7 +2426,7 @@ yyreduce:
(*g_lingo->_currentScript)[(yyvsp[-11].code) + 3] = body; /* body of loop */
(*g_lingo->_currentScript)[(yyvsp[-11].code) + 4] = inc; /* increment */
(*g_lingo->_currentScript)[(yyvsp[-11].code) + 5] = end; }
-#line 2422 "engines/director/lingo/lingo-gr.cpp"
+#line 2430 "engines/director/lingo/lingo-gr.cpp"
break;
case 32:
@@ -2433,14 +2441,14 @@ yyreduce:
(*g_lingo->_currentScript)[(yyvsp[-7].code) + 3] = body; /* body of loop */
(*g_lingo->_currentScript)[(yyvsp[-7].code) + 4] = 0; /* increment */
(*g_lingo->_currentScript)[(yyvsp[-7].code) + 5] = end; }
-#line 2437 "engines/director/lingo/lingo-gr.cpp"
+#line 2445 "engines/director/lingo/lingo-gr.cpp"
break;
case 33:
#line 318 "engines/director/lingo/lingo-gr.y"
{
g_lingo->code1(LC::c_nextRepeat); }
-#line 2444 "engines/director/lingo/lingo-gr.cpp"
+#line 2452 "engines/director/lingo/lingo-gr.cpp"
break;
case 34:
@@ -2450,7 +2458,7 @@ yyreduce:
WRITE_UINT32(&end, (yyvsp[0].code) - (yyvsp[-2].code));
g_lingo->code1(STOP);
(*g_lingo->_currentScript)[(yyvsp[-2].code) + 1] = end; }
-#line 2454 "engines/director/lingo/lingo-gr.cpp"
+#line 2462 "engines/director/lingo/lingo-gr.cpp"
break;
case 35:
@@ -2459,7 +2467,7 @@ yyreduce:
inst end;
WRITE_UINT32(&end, (yyvsp[-1].code) - (yyvsp[-3].code));
(*g_lingo->_currentScript)[(yyvsp[-3].code) + 1] = end; }
-#line 2463 "engines/director/lingo/lingo-gr.cpp"
+#line 2471 "engines/director/lingo/lingo-gr.cpp"
break;
case 36:
@@ -2468,7 +2476,7 @@ yyreduce:
inst end;
WRITE_UINT32(&end, (yyvsp[0].code) - (yyvsp[-2].code));
(*g_lingo->_currentScript)[(yyvsp[-2].code) + 1] = end; }
-#line 2472 "engines/director/lingo/lingo-gr.cpp"
+#line 2480 "engines/director/lingo/lingo-gr.cpp"
break;
case 37:
@@ -2476,7 +2484,7 @@ yyreduce:
{
(yyval.code) = g_lingo->code1(LC::c_tellcode);
g_lingo->code1(STOP); }
-#line 2480 "engines/director/lingo/lingo-gr.cpp"
+#line 2488 "engines/director/lingo/lingo-gr.cpp"
break;
case 38:
@@ -2488,7 +2496,7 @@ yyreduce:
(*g_lingo->_currentScript)[(yyvsp[-6].narg)] = else1; /* elsepart */
(*g_lingo->_currentScript)[(yyvsp[-3].narg)] = end3; /* end, if cond fails */
g_lingo->processIf((yyvsp[-3].narg), (yyvsp[-1].code)); }
-#line 2492 "engines/director/lingo/lingo-gr.cpp"
+#line 2500 "engines/director/lingo/lingo-gr.cpp"
break;
case 39:
@@ -2500,7 +2508,7 @@ yyreduce:
(*g_lingo->_currentScript)[(yyvsp[-9].narg)] = else1; /* elsepart */
(*g_lingo->_currentScript)[(yyvsp[-6].narg)] = end; /* end, if cond fails */
g_lingo->processIf((yyvsp[-6].narg), (yyvsp[-1].code)); }
-#line 2504 "engines/director/lingo/lingo-gr.cpp"
+#line 2512 "engines/director/lingo/lingo-gr.cpp"
break;
case 42:
@@ -2510,7 +2518,7 @@ yyreduce:
WRITE_UINT32(&else1, (yyvsp[0].narg) + 1 - (yyvsp[-3].narg) + 1);
(*g_lingo->_currentScript)[(yyvsp[-3].narg)] = else1; /* end, if cond fails */
g_lingo->codeLabel((yyvsp[0].narg)); }
-#line 2514 "engines/director/lingo/lingo-gr.cpp"
+#line 2522 "engines/director/lingo/lingo-gr.cpp"
break;
case 43:
@@ -2521,7 +2529,7 @@ yyreduce:
WRITE_UINT32(&end, (yyvsp[-1].code) - (yyvsp[-5].narg) + 1);
(*g_lingo->_currentScript)[(yyvsp[-8].narg)] = else1; /* elsepart */
(*g_lingo->_currentScript)[(yyvsp[-5].narg)] = end; }
-#line 2525 "engines/director/lingo/lingo-gr.cpp"
+#line 2533 "engines/director/lingo/lingo-gr.cpp"
break;
case 44:
@@ -2531,13 +2539,13 @@ yyreduce:
WRITE_UINT32(&end, (yyvsp[-1].code) - (yyvsp[-4].narg) + 1);
(*g_lingo->_currentScript)[(yyvsp[-4].narg)] = end; }
-#line 2535 "engines/director/lingo/lingo-gr.cpp"
+#line 2543 "engines/director/lingo/lingo-gr.cpp"
break;
case 45:
#line 374 "engines/director/lingo/lingo-gr.y"
- { (yyval.code) = g_lingo->code3(LC::c_repeatwhilecode, STOP, STOP); }
-#line 2541 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.code) = g_lingo->_currentScript->size() - 1; }
+#line 2549 "engines/director/lingo/lingo-gr.cpp"
break;
case 46:
@@ -2547,7 +2555,7 @@ yyreduce:
g_lingo->code3(STOP, STOP, STOP);
g_lingo->codeString((yyvsp[0].s)->c_str());
delete (yyvsp[0].s); }
-#line 2551 "engines/director/lingo/lingo-gr.cpp"
+#line 2559 "engines/director/lingo/lingo-gr.cpp"
break;
case 47:
@@ -2555,7 +2563,7 @@ yyreduce:
{
g_lingo->code2(LC::c_jumpifz, STOP);
(yyval.narg) = g_lingo->_currentScript->size() - 1; }
-#line 2559 "engines/director/lingo/lingo-gr.cpp"
+#line 2567 "engines/director/lingo/lingo-gr.cpp"
break;
case 48:
@@ -2563,32 +2571,32 @@ yyreduce:
{
g_lingo->code2(LC::c_jump, STOP);
(yyval.narg) = g_lingo->_currentScript->size() - 1; }
-#line 2567 "engines/director/lingo/lingo-gr.cpp"
+#line 2575 "engines/director/lingo/lingo-gr.cpp"
break;
case 49:
#line 390 "engines/director/lingo/lingo-gr.y"
{
g_lingo->codeLabel(0); }
-#line 2574 "engines/director/lingo/lingo-gr.cpp"
+#line 2582 "engines/director/lingo/lingo-gr.cpp"
break;
case 50:
#line 393 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->_currentScript->size(); }
-#line 2580 "engines/director/lingo/lingo-gr.cpp"
+#line 2588 "engines/director/lingo/lingo-gr.cpp"
break;
case 51:
#line 395 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(STOP); (yyval.code) = g_lingo->_currentScript->size(); }
-#line 2586 "engines/director/lingo/lingo-gr.cpp"
+#line 2594 "engines/director/lingo/lingo-gr.cpp"
break;
case 52:
#line 397 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->_currentScript->size(); }
-#line 2592 "engines/director/lingo/lingo-gr.cpp"
+#line 2600 "engines/director/lingo/lingo-gr.cpp"
break;
case 55:
@@ -2598,7 +2606,7 @@ yyreduce:
g_lingo->code1(STOP);
g_lingo->codeString((yyvsp[-1].s)->c_str());
delete (yyvsp[-1].s); }
-#line 2602 "engines/director/lingo/lingo-gr.cpp"
+#line 2610 "engines/director/lingo/lingo-gr.cpp"
break;
case 56:
@@ -2606,7 +2614,7 @@ yyreduce:
{
(yyval.code) = g_lingo->code1(LC::c_intpush);
g_lingo->codeInt((yyvsp[0].i)); }
-#line 2610 "engines/director/lingo/lingo-gr.cpp"
+#line 2618 "engines/director/lingo/lingo-gr.cpp"
break;
case 57:
@@ -2614,7 +2622,7 @@ yyreduce:
{
(yyval.code) = g_lingo->code1(LC::c_floatpush);
g_lingo->codeFloat((yyvsp[0].f)); }
-#line 2618 "engines/director/lingo/lingo-gr.cpp"
+#line 2626 "engines/director/lingo/lingo-gr.cpp"
break;
case 58:
@@ -2623,7 +2631,7 @@ yyreduce:
(yyval.code) = g_lingo->code1(LC::c_symbolpush);
g_lingo->codeString((yyvsp[0].s)->c_str());
delete (yyvsp[0].s); }
-#line 2627 "engines/director/lingo/lingo-gr.cpp"
+#line 2635 "engines/director/lingo/lingo-gr.cpp"
break;
case 59:
@@ -2632,7 +2640,7 @@ yyreduce:
(yyval.code) = g_lingo->code1(LC::c_stringpush);
g_lingo->codeString((yyvsp[0].s)->c_str());
delete (yyvsp[0].s); }
-#line 2636 "engines/director/lingo/lingo-gr.cpp"
+#line 2644 "engines/director/lingo/lingo-gr.cpp"
break;
case 60:
@@ -2641,7 +2649,7 @@ yyreduce:
(yyval.code) = g_lingo->code1(LC::c_eval);
g_lingo->codeString((yyvsp[0].s)->c_str());
delete (yyvsp[0].s); }
-#line 2645 "engines/director/lingo/lingo-gr.cpp"
+#line 2653 "engines/director/lingo/lingo-gr.cpp"
break;
case 61:
@@ -2654,13 +2662,13 @@ yyreduce:
WRITE_UINT32(&e, (yyvsp[0].e)[0]);
WRITE_UINT32(&f, (yyvsp[0].e)[1]);
g_lingo->code2(e, f); }
-#line 2658 "engines/director/lingo/lingo-gr.cpp"
+#line 2666 "engines/director/lingo/lingo-gr.cpp"
break;
case 62:
#line 433 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = (yyvsp[-1].code); }
-#line 2664 "engines/director/lingo/lingo-gr.cpp"
+#line 2672 "engines/director/lingo/lingo-gr.cpp"
break;
case 64:
@@ -2675,13 +2683,13 @@ yyreduce:
yyerrok;
}
}
-#line 2679 "engines/director/lingo/lingo-gr.cpp"
+#line 2687 "engines/director/lingo/lingo-gr.cpp"
break;
case 65:
#line 446 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = (yyvsp[0].code); }
-#line 2685 "engines/director/lingo/lingo-gr.cpp"
+#line 2693 "engines/director/lingo/lingo-gr.cpp"
break;
case 67:
@@ -2689,7 +2697,7 @@ yyreduce:
{
g_lingo->codeFunc((yyvsp[-3].s), (yyvsp[-1].narg));
delete (yyvsp[-3].s); }
-#line 2693 "engines/director/lingo/lingo-gr.cpp"
+#line 2701 "engines/director/lingo/lingo-gr.cpp"
break;
case 68:
@@ -2697,7 +2705,7 @@ yyreduce:
{
g_lingo->codeFunc((yyvsp[-1].s), (yyvsp[0].narg));
delete (yyvsp[-1].s); }
-#line 2701 "engines/director/lingo/lingo-gr.cpp"
+#line 2709 "engines/director/lingo/lingo-gr.cpp"
break;
case 69:
@@ -2705,7 +2713,7 @@ yyreduce:
{
(yyval.code) = g_lingo->codeFunc((yyvsp[-3].s), (yyvsp[-1].narg));
delete (yyvsp[-3].s); }
-#line 2709 "engines/director/lingo/lingo-gr.cpp"
+#line 2717 "engines/director/lingo/lingo-gr.cpp"
break;
case 70:
@@ -2713,7 +2721,7 @@ yyreduce:
{
(yyval.code) = g_lingo->codeFunc((yyvsp[-2].s), 1);
delete (yyvsp[-2].s); }
-#line 2717 "engines/director/lingo/lingo-gr.cpp"
+#line 2725 "engines/director/lingo/lingo-gr.cpp"
break;
case 71:
@@ -2724,7 +2732,7 @@ yyreduce:
WRITE_UINT32(&e, (yyvsp[-1].e)[0]);
WRITE_UINT32(&f, (yyvsp[-1].e)[1]);
g_lingo->code2(e, f); }
-#line 2728 "engines/director/lingo/lingo-gr.cpp"
+#line 2736 "engines/director/lingo/lingo-gr.cpp"
break;
case 72:
@@ -2734,7 +2742,7 @@ yyreduce:
g_lingo->codeString((yyvsp[0].objectfield).os->c_str());
g_lingo->codeInt((yyvsp[0].objectfield).oe);
delete (yyvsp[0].objectfield).os; }
-#line 2738 "engines/director/lingo/lingo-gr.cpp"
+#line 2746 "engines/director/lingo/lingo-gr.cpp"
break;
case 73:
@@ -2745,187 +2753,187 @@ yyreduce:
g_lingo->codeString((yyvsp[0].objectref).field->c_str());
delete (yyvsp[0].objectref).obj;
delete (yyvsp[0].objectref).field; }
-#line 2749 "engines/director/lingo/lingo-gr.cpp"
+#line 2757 "engines/director/lingo/lingo-gr.cpp"
break;
case 75:
#line 478 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_add); }
-#line 2755 "engines/director/lingo/lingo-gr.cpp"
+#line 2763 "engines/director/lingo/lingo-gr.cpp"
break;
case 76:
#line 479 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_sub); }
-#line 2761 "engines/director/lingo/lingo-gr.cpp"
+#line 2769 "engines/director/lingo/lingo-gr.cpp"
break;
case 77:
#line 480 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_mul); }
-#line 2767 "engines/director/lingo/lingo-gr.cpp"
+#line 2775 "engines/director/lingo/lingo-gr.cpp"
break;
case 78:
#line 481 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_div); }
-#line 2773 "engines/director/lingo/lingo-gr.cpp"
+#line 2781 "engines/director/lingo/lingo-gr.cpp"
break;
case 79:
#line 482 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_mod); }
-#line 2779 "engines/director/lingo/lingo-gr.cpp"
+#line 2787 "engines/director/lingo/lingo-gr.cpp"
break;
case 80:
#line 483 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_gt); }
-#line 2785 "engines/director/lingo/lingo-gr.cpp"
+#line 2793 "engines/director/lingo/lingo-gr.cpp"
break;
case 81:
#line 484 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_lt); }
-#line 2791 "engines/director/lingo/lingo-gr.cpp"
+#line 2799 "engines/director/lingo/lingo-gr.cpp"
break;
case 82:
#line 485 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_eq); }
-#line 2797 "engines/director/lingo/lingo-gr.cpp"
+#line 2805 "engines/director/lingo/lingo-gr.cpp"
break;
case 83:
#line 486 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_neq); }
-#line 2803 "engines/director/lingo/lingo-gr.cpp"
+#line 2811 "engines/director/lingo/lingo-gr.cpp"
break;
case 84:
#line 487 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_ge); }
-#line 2809 "engines/director/lingo/lingo-gr.cpp"
+#line 2817 "engines/director/lingo/lingo-gr.cpp"
break;
case 85:
#line 488 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_le); }
-#line 2815 "engines/director/lingo/lingo-gr.cpp"
+#line 2823 "engines/director/lingo/lingo-gr.cpp"
break;
case 86:
#line 489 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_and); }
-#line 2821 "engines/director/lingo/lingo-gr.cpp"
+#line 2829 "engines/director/lingo/lingo-gr.cpp"
break;
case 87:
#line 490 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_or); }
-#line 2827 "engines/director/lingo/lingo-gr.cpp"
+#line 2835 "engines/director/lingo/lingo-gr.cpp"
break;
case 88:
#line 491 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_not); }
-#line 2833 "engines/director/lingo/lingo-gr.cpp"
+#line 2841 "engines/director/lingo/lingo-gr.cpp"
break;
case 89:
#line 492 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_ampersand); }
-#line 2839 "engines/director/lingo/lingo-gr.cpp"
+#line 2847 "engines/director/lingo/lingo-gr.cpp"
break;
case 90:
#line 493 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_concat); }
-#line 2845 "engines/director/lingo/lingo-gr.cpp"
+#line 2853 "engines/director/lingo/lingo-gr.cpp"
break;
case 91:
#line 494 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_contains); }
-#line 2851 "engines/director/lingo/lingo-gr.cpp"
+#line 2859 "engines/director/lingo/lingo-gr.cpp"
break;
case 92:
#line 495 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_starts); }
-#line 2857 "engines/director/lingo/lingo-gr.cpp"
+#line 2865 "engines/director/lingo/lingo-gr.cpp"
break;
case 93:
#line 496 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = (yyvsp[0].code); }
-#line 2863 "engines/director/lingo/lingo-gr.cpp"
+#line 2871 "engines/director/lingo/lingo-gr.cpp"
break;
case 94:
#line 497 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = (yyvsp[0].code); g_lingo->code1(LC::c_negate); }
-#line 2869 "engines/director/lingo/lingo-gr.cpp"
+#line 2877 "engines/director/lingo/lingo-gr.cpp"
break;
case 95:
#line 498 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_intersects); }
-#line 2875 "engines/director/lingo/lingo-gr.cpp"
+#line 2883 "engines/director/lingo/lingo-gr.cpp"
break;
case 96:
#line 499 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_within); }
-#line 2881 "engines/director/lingo/lingo-gr.cpp"
+#line 2889 "engines/director/lingo/lingo-gr.cpp"
break;
case 97:
#line 501 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_charOf); }
-#line 2887 "engines/director/lingo/lingo-gr.cpp"
+#line 2895 "engines/director/lingo/lingo-gr.cpp"
break;
case 98:
#line 502 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_charToOf); }
-#line 2893 "engines/director/lingo/lingo-gr.cpp"
+#line 2901 "engines/director/lingo/lingo-gr.cpp"
break;
case 99:
#line 503 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_itemOf); }
-#line 2899 "engines/director/lingo/lingo-gr.cpp"
+#line 2907 "engines/director/lingo/lingo-gr.cpp"
break;
case 100:
#line 504 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_itemToOf); }
-#line 2905 "engines/director/lingo/lingo-gr.cpp"
+#line 2913 "engines/director/lingo/lingo-gr.cpp"
break;
case 101:
#line 505 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_lineOf); }
-#line 2911 "engines/director/lingo/lingo-gr.cpp"
+#line 2919 "engines/director/lingo/lingo-gr.cpp"
break;
case 102:
#line 506 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_lineToOf); }
-#line 2917 "engines/director/lingo/lingo-gr.cpp"
+#line 2925 "engines/director/lingo/lingo-gr.cpp"
break;
case 103:
#line 507 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_wordOf); }
-#line 2923 "engines/director/lingo/lingo-gr.cpp"
+#line 2931 "engines/director/lingo/lingo-gr.cpp"
break;
case 104:
#line 508 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_wordToOf); }
-#line 2929 "engines/director/lingo/lingo-gr.cpp"
+#line 2937 "engines/director/lingo/lingo-gr.cpp"
break;
case 105:
@@ -2933,61 +2941,61 @@ yyreduce:
{
g_lingo->codeFunc((yyvsp[-1].s), 1);
delete (yyvsp[-1].s); }
-#line 2937 "engines/director/lingo/lingo-gr.cpp"
+#line 2945 "engines/director/lingo/lingo-gr.cpp"
break;
case 107:
#line 515 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_printtop); }
-#line 2943 "engines/director/lingo/lingo-gr.cpp"
+#line 2951 "engines/director/lingo/lingo-gr.cpp"
break;
case 110:
#line 518 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_exitRepeat); }
-#line 2949 "engines/director/lingo/lingo-gr.cpp"
+#line 2957 "engines/director/lingo/lingo-gr.cpp"
break;
case 111:
#line 519 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_procret); }
-#line 2955 "engines/director/lingo/lingo-gr.cpp"
+#line 2963 "engines/director/lingo/lingo-gr.cpp"
break;
case 112:
#line 520 "engines/director/lingo/lingo-gr.y"
{ inArgs(); }
-#line 2961 "engines/director/lingo/lingo-gr.cpp"
+#line 2969 "engines/director/lingo/lingo-gr.cpp"
break;
case 113:
#line 520 "engines/director/lingo/lingo-gr.y"
{ inNone(); }
-#line 2967 "engines/director/lingo/lingo-gr.cpp"
+#line 2975 "engines/director/lingo/lingo-gr.cpp"
break;
case 114:
#line 521 "engines/director/lingo/lingo-gr.y"
{ inArgs(); }
-#line 2973 "engines/director/lingo/lingo-gr.cpp"
+#line 2981 "engines/director/lingo/lingo-gr.cpp"
break;
case 115:
#line 521 "engines/director/lingo/lingo-gr.y"
{ inNone(); }
-#line 2979 "engines/director/lingo/lingo-gr.cpp"
+#line 2987 "engines/director/lingo/lingo-gr.cpp"
break;
case 116:
#line 522 "engines/director/lingo/lingo-gr.y"
{ inArgs(); }
-#line 2985 "engines/director/lingo/lingo-gr.cpp"
+#line 2993 "engines/director/lingo/lingo-gr.cpp"
break;
case 117:
#line 522 "engines/director/lingo/lingo-gr.y"
{ inNone(); }
-#line 2991 "engines/director/lingo/lingo-gr.cpp"
+#line 2999 "engines/director/lingo/lingo-gr.cpp"
break;
case 118:
@@ -2995,7 +3003,7 @@ yyreduce:
{
g_lingo->codeFunc((yyvsp[-3].s), (yyvsp[-1].narg));
delete (yyvsp[-3].s); }
-#line 2999 "engines/director/lingo/lingo-gr.cpp"
+#line 3007 "engines/director/lingo/lingo-gr.cpp"
break;
case 119:
@@ -3003,19 +3011,19 @@ yyreduce:
{
g_lingo->codeFunc((yyvsp[-1].s), (yyvsp[0].narg));
delete (yyvsp[-1].s); }
-#line 3007 "engines/director/lingo/lingo-gr.cpp"
+#line 3015 "engines/director/lingo/lingo-gr.cpp"
break;
case 120:
#line 529 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_open); }
-#line 3013 "engines/director/lingo/lingo-gr.cpp"
+#line 3021 "engines/director/lingo/lingo-gr.cpp"
break;
case 121:
#line 530 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code2(LC::c_voidpush, LC::c_open); }
-#line 3019 "engines/director/lingo/lingo-gr.cpp"
+#line 3027 "engines/director/lingo/lingo-gr.cpp"
break;
case 122:
@@ -3025,7 +3033,7 @@ yyreduce:
g_lingo->codeString((yyvsp[0].s)->c_str());
mArg((yyvsp[0].s));
delete (yyvsp[0].s); }
-#line 3029 "engines/director/lingo/lingo-gr.cpp"
+#line 3037 "engines/director/lingo/lingo-gr.cpp"
break;
case 123:
@@ -3035,7 +3043,7 @@ yyreduce:
g_lingo->codeString((yyvsp[0].s)->c_str());
mArg((yyvsp[0].s));
delete (yyvsp[0].s); }
-#line 3039 "engines/director/lingo/lingo-gr.cpp"
+#line 3047 "engines/director/lingo/lingo-gr.cpp"
break;
case 124:
@@ -3045,7 +3053,7 @@ yyreduce:
g_lingo->codeString((yyvsp[0].s)->c_str());
mArg((yyvsp[0].s));
delete (yyvsp[0].s); }
-#line 3049 "engines/director/lingo/lingo-gr.cpp"
+#line 3057 "engines/director/lingo/lingo-gr.cpp"
break;
case 125:
@@ -3055,7 +3063,7 @@ yyreduce:
g_lingo->codeString((yyvsp[0].s)->c_str());
mArg((yyvsp[0].s));
delete (yyvsp[0].s); }
-#line 3059 "engines/director/lingo/lingo-gr.cpp"
+#line 3067 "engines/director/lingo/lingo-gr.cpp"
break;
case 126:
@@ -3065,7 +3073,7 @@ yyreduce:
g_lingo->codeString((yyvsp[0].s)->c_str());
mArg((yyvsp[0].s));
delete (yyvsp[0].s); }
-#line 3069 "engines/director/lingo/lingo-gr.cpp"
+#line 3077 "engines/director/lingo/lingo-gr.cpp"
break;
case 127:
@@ -3075,25 +3083,25 @@ yyreduce:
g_lingo->codeString((yyvsp[0].s)->c_str());
mArg((yyvsp[0].s));
delete (yyvsp[0].s); }
-#line 3079 "engines/director/lingo/lingo-gr.cpp"
+#line 3087 "engines/director/lingo/lingo-gr.cpp"
break;
case 128:
#line 572 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_gotoloop); }
-#line 3085 "engines/director/lingo/lingo-gr.cpp"
+#line 3093 "engines/director/lingo/lingo-gr.cpp"
break;
case 129:
#line 573 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_gotonext); }
-#line 3091 "engines/director/lingo/lingo-gr.cpp"
+#line 3099 "engines/director/lingo/lingo-gr.cpp"
break;
case 130:
#line 574 "engines/director/lingo/lingo-gr.y"
{ g_lingo->code1(LC::c_gotoprevious); }
-#line 3097 "engines/director/lingo/lingo-gr.cpp"
+#line 3105 "engines/director/lingo/lingo-gr.cpp"
break;
case 131:
@@ -3102,7 +3110,7 @@ yyreduce:
g_lingo->code1(LC::c_intpush);
g_lingo->codeInt(1);
g_lingo->code1(LC::c_goto); }
-#line 3106 "engines/director/lingo/lingo-gr.cpp"
+#line 3114 "engines/director/lingo/lingo-gr.cpp"
break;
case 132:
@@ -3111,7 +3119,7 @@ yyreduce:
g_lingo->code1(LC::c_intpush);
g_lingo->codeInt(3);
g_lingo->code1(LC::c_goto); }
-#line 3115 "engines/director/lingo/lingo-gr.cpp"
+#line 3123 "engines/director/lingo/lingo-gr.cpp"
break;
case 133:
@@ -3120,7 +3128,7 @@ yyreduce:
g_lingo->code1(LC::c_intpush);
g_lingo->codeInt(2);
g_lingo->code1(LC::c_goto); }
-#line 3124 "engines/director/lingo/lingo-gr.cpp"
+#line 3132 "engines/director/lingo/lingo-gr.cpp"
break;
case 136:
@@ -3129,7 +3137,7 @@ yyreduce:
g_lingo->code1(LC::c_intpush);
g_lingo->codeInt(1);
g_lingo->code1(LC::c_play); }
-#line 3133 "engines/director/lingo/lingo-gr.cpp"
+#line 3141 "engines/director/lingo/lingo-gr.cpp"
break;
case 137:
@@ -3138,7 +3146,7 @@ yyreduce:
g_lingo->code1(LC::c_intpush);
g_lingo->codeInt(3);
g_lingo->code1(LC::c_play); }
-#line 3142 "engines/director/lingo/lingo-gr.cpp"
+#line 3150 "engines/director/lingo/lingo-gr.cpp"
break;
case 138:
@@ -3147,13 +3155,13 @@ yyreduce:
g_lingo->code1(LC::c_intpush);
g_lingo->codeInt(2);
g_lingo->code1(LC::c_play); }
-#line 3151 "engines/director/lingo/lingo-gr.cpp"
+#line 3159 "engines/director/lingo/lingo-gr.cpp"
break;
case 139:
#line 603 "engines/director/lingo/lingo-gr.y"
{ g_lingo->codeSetImmediate(true); }
-#line 3157 "engines/director/lingo/lingo-gr.cpp"
+#line 3165 "engines/director/lingo/lingo-gr.cpp"
break;
case 140:
@@ -3162,19 +3170,19 @@ yyreduce:
g_lingo->codeSetImmediate(false);
g_lingo->codeFunc((yyvsp[-2].s), (yyvsp[0].narg));
delete (yyvsp[-2].s); }
-#line 3166 "engines/director/lingo/lingo-gr.cpp"
+#line 3174 "engines/director/lingo/lingo-gr.cpp"
break;
case 141:
#line 633 "engines/director/lingo/lingo-gr.y"
{ startDef(); }
-#line 3172 "engines/director/lingo/lingo-gr.cpp"
+#line 3180 "engines/director/lingo/lingo-gr.cpp"
break;
case 142:
#line 633 "engines/director/lingo/lingo-gr.y"
{ g_lingo->_currentFactory.clear(); }
-#line 3178 "engines/director/lingo/lingo-gr.cpp"
+#line 3186 "engines/director/lingo/lingo-gr.cpp"
break;
case 143:
@@ -3184,19 +3192,19 @@ yyreduce:
g_lingo->define(*(yyvsp[-6].s), (yyvsp[-4].code), (yyvsp[-3].narg));
endDef();
delete (yyvsp[-6].s); }
-#line 3188 "engines/director/lingo/lingo-gr.cpp"
+#line 3196 "engines/director/lingo/lingo-gr.cpp"
break;
case 144:
#line 639 "engines/director/lingo/lingo-gr.y"
{ g_lingo->codeFactory(*(yyvsp[0].s)); delete (yyvsp[0].s); }
-#line 3194 "engines/director/lingo/lingo-gr.cpp"
+#line 3202 "engines/director/lingo/lingo-gr.cpp"
break;
case 145:
#line 640 "engines/director/lingo/lingo-gr.y"
{ startDef(); }
-#line 3200 "engines/director/lingo/lingo-gr.cpp"
+#line 3208 "engines/director/lingo/lingo-gr.cpp"
break;
case 146:
@@ -3206,7 +3214,7 @@ yyreduce:
g_lingo->define(*(yyvsp[-6].s), (yyvsp[-4].code), (yyvsp[-3].narg) + 1, &g_lingo->_currentFactory);
endDef();
delete (yyvsp[-6].s); }
-#line 3210 "engines/director/lingo/lingo-gr.cpp"
+#line 3218 "engines/director/lingo/lingo-gr.cpp"
break;
case 147:
@@ -3219,7 +3227,7 @@ yyreduce:
checkEnd((yyvsp[-1].s), (yyvsp[-7].s)->c_str(), false);
delete (yyvsp[-7].s);
delete (yyvsp[-1].s); }
-#line 3223 "engines/director/lingo/lingo-gr.cpp"
+#line 3231 "engines/director/lingo/lingo-gr.cpp"
break;
case 148:
@@ -3229,56 +3237,56 @@ yyreduce:
g_lingo->define(*(yyvsp[-5].s), (yyvsp[-4].code), (yyvsp[-3].narg));
endDef();
delete (yyvsp[-5].s); }
-#line 3233 "engines/director/lingo/lingo-gr.cpp"
+#line 3241 "engines/director/lingo/lingo-gr.cpp"
break;
case 149:
#line 660 "engines/director/lingo/lingo-gr.y"
{ startDef(); }
-#line 3239 "engines/director/lingo/lingo-gr.cpp"
+#line 3247 "engines/director/lingo/lingo-gr.cpp"
break;
case 150:
#line 660 "engines/director/lingo/lingo-gr.y"
{
(yyval.s) = (yyvsp[0].s); g_lingo->_currentFactory.clear(); g_lingo->_ignoreMe = true; }
-#line 3246 "engines/director/lingo/lingo-gr.cpp"
+#line 3254 "engines/director/lingo/lingo-gr.cpp"
break;
case 151:
#line 663 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = 0; }
-#line 3252 "engines/director/lingo/lingo-gr.cpp"
+#line 3260 "engines/director/lingo/lingo-gr.cpp"
break;
case 152:
#line 664 "engines/director/lingo/lingo-gr.y"
{ g_lingo->codeArg((yyvsp[0].s)); mArg((yyvsp[0].s)); (yyval.narg) = 1; delete (yyvsp[0].s); }
-#line 3258 "engines/director/lingo/lingo-gr.cpp"
+#line 3266 "engines/director/lingo/lingo-gr.cpp"
break;
case 153:
#line 665 "engines/director/lingo/lingo-gr.y"
{ g_lingo->codeArg((yyvsp[0].s)); mArg((yyvsp[0].s)); (yyval.narg) = (yyvsp[-2].narg) + 1; delete (yyvsp[0].s); }
-#line 3264 "engines/director/lingo/lingo-gr.cpp"
+#line 3272 "engines/director/lingo/lingo-gr.cpp"
break;
case 155:
#line 668 "engines/director/lingo/lingo-gr.y"
{ delete (yyvsp[0].s); }
-#line 3270 "engines/director/lingo/lingo-gr.cpp"
+#line 3278 "engines/director/lingo/lingo-gr.cpp"
break;
case 156:
#line 669 "engines/director/lingo/lingo-gr.y"
{ delete (yyvsp[0].s); }
-#line 3276 "engines/director/lingo/lingo-gr.cpp"
+#line 3284 "engines/director/lingo/lingo-gr.cpp"
break;
case 157:
#line 671 "engines/director/lingo/lingo-gr.y"
{ g_lingo->codeArgStore(); inDef(); }
-#line 3282 "engines/director/lingo/lingo-gr.cpp"
+#line 3290 "engines/director/lingo/lingo-gr.cpp"
break;
case 158:
@@ -3290,91 +3298,91 @@ yyreduce:
WRITE_UINT32(&numpar, (yyvsp[0].narg));
g_lingo->code1(numpar);
delete (yyvsp[-1].s); }
-#line 3294 "engines/director/lingo/lingo-gr.cpp"
+#line 3302 "engines/director/lingo/lingo-gr.cpp"
break;
case 159:
#line 681 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = 0; }
-#line 3300 "engines/director/lingo/lingo-gr.cpp"
+#line 3308 "engines/director/lingo/lingo-gr.cpp"
break;
case 160:
#line 682 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = 1; }
-#line 3306 "engines/director/lingo/lingo-gr.cpp"
+#line 3314 "engines/director/lingo/lingo-gr.cpp"
break;
case 161:
#line 683 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = (yyvsp[-2].narg) + 1; }
-#line 3312 "engines/director/lingo/lingo-gr.cpp"
+#line 3320 "engines/director/lingo/lingo-gr.cpp"
break;
case 162:
#line 685 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = 1; }
-#line 3318 "engines/director/lingo/lingo-gr.cpp"
+#line 3326 "engines/director/lingo/lingo-gr.cpp"
break;
case 163:
#line 686 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = (yyvsp[-2].narg) + 1; }
-#line 3324 "engines/director/lingo/lingo-gr.cpp"
+#line 3332 "engines/director/lingo/lingo-gr.cpp"
break;
case 164:
#line 688 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = (yyvsp[-1].code); }
-#line 3330 "engines/director/lingo/lingo-gr.cpp"
+#line 3338 "engines/director/lingo/lingo-gr.cpp"
break;
case 165:
#line 690 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->code2(LC::c_arraypush, 0); }
-#line 3336 "engines/director/lingo/lingo-gr.cpp"
+#line 3344 "engines/director/lingo/lingo-gr.cpp"
break;
case 166:
#line 691 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->code2(LC::c_proparraypush, 0); }
-#line 3342 "engines/director/lingo/lingo-gr.cpp"
+#line 3350 "engines/director/lingo/lingo-gr.cpp"
break;
case 167:
#line 692 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->code1(LC::c_arraypush); (yyval.code) = g_lingo->codeInt((yyvsp[0].narg)); }
-#line 3348 "engines/director/lingo/lingo-gr.cpp"
+#line 3356 "engines/director/lingo/lingo-gr.cpp"
break;
case 168:
#line 693 "engines/director/lingo/lingo-gr.y"
{ (yyval.code) = g_lingo->code1(LC::c_proparraypush); (yyval.code) = g_lingo->codeInt((yyvsp[0].narg)); }
-#line 3354 "engines/director/lingo/lingo-gr.cpp"
+#line 3362 "engines/director/lingo/lingo-gr.cpp"
break;
case 169:
#line 695 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = 1; }
-#line 3360 "engines/director/lingo/lingo-gr.cpp"
+#line 3368 "engines/director/lingo/lingo-gr.cpp"
break;
case 170:
#line 696 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = (yyvsp[-2].narg) + 1; }
-#line 3366 "engines/director/lingo/lingo-gr.cpp"
+#line 3374 "engines/director/lingo/lingo-gr.cpp"
break;
case 171:
#line 698 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = 1; }
-#line 3372 "engines/director/lingo/lingo-gr.cpp"
+#line 3380 "engines/director/lingo/lingo-gr.cpp"
break;
case 172:
#line 699 "engines/director/lingo/lingo-gr.y"
{ (yyval.narg) = (yyvsp[-2].narg) + 1; }
-#line 3378 "engines/director/lingo/lingo-gr.cpp"
+#line 3386 "engines/director/lingo/lingo-gr.cpp"
break;
case 173:
@@ -3383,7 +3391,7 @@ yyreduce:
g_lingo->code1(LC::c_symbolpush);
g_lingo->codeString((yyvsp[-2].s)->c_str());
delete (yyvsp[-2].s); }
-#line 3387 "engines/director/lingo/lingo-gr.cpp"
+#line 3395 "engines/director/lingo/lingo-gr.cpp"
break;
case 174:
@@ -3392,11 +3400,11 @@ yyreduce:
g_lingo->code1(LC::c_stringpush);
g_lingo->codeString((yyvsp[-2].s)->c_str());
delete (yyvsp[-2].s); }
-#line 3396 "engines/director/lingo/lingo-gr.cpp"
+#line 3404 "engines/director/lingo/lingo-gr.cpp"
break;
-#line 3400 "engines/director/lingo/lingo-gr.cpp"
+#line 3408 "engines/director/lingo/lingo-gr.cpp"
default: break;
}
diff --git a/engines/director/lingo/lingo-gr.y b/engines/director/lingo/lingo-gr.y
index f501badf3c..44c7da3981 100644
--- a/engines/director/lingo/lingo-gr.y
+++ b/engines/director/lingo/lingo-gr.y
@@ -264,12 +264,12 @@ stmt: stmtoneliner
// statements
// end repeat
//
- | repeatwhile expr end[body] stmtlist end[end2] tENDREPEAT {
- inst body = 0, end = 0;
- WRITE_UINT32(&body, $body - $repeatwhile);
- WRITE_UINT32(&end, $end2 - $repeatwhile);
- (*g_lingo->_currentScript)[$repeatwhile + 1] = body; /* body of loop */
- (*g_lingo->_currentScript)[$repeatwhile + 2] = end; } /* end, if cond fails */
+ | repeatwhile expr jumpifz[body] stmtlist jump[end2] tENDREPEAT {
+ inst start = 0, end = 0;
+ WRITE_UINT32(&start, $repeatwhile - $end2 + 2);
+ WRITE_UINT32(&end, $end2 - $body + 2);
+ (*g_lingo->_currentScript)[$body] = end; /* end, if cond fails */
+ (*g_lingo->_currentScript)[$end2] = start; } /* looping back */
// repeat with index = start to end
// statements
@@ -371,7 +371,7 @@ ifoneliner: if expr jumpifz[then] tTHEN stmtoneliner jump[else1] tELSE begin stm
(*g_lingo->_currentScript)[$then] = end; } /* end, if cond fails */
-repeatwhile: tREPEAT tWHILE { $$ = g_lingo->code3(LC::c_repeatwhilecode, STOP, STOP); }
+repeatwhile: tREPEAT tWHILE { $$ = g_lingo->_currentScript->size() - 1; }
repeatwith: tREPEAT tWITH ID {
$$ = g_lingo->code3(LC::c_repeatwithcode, STOP, STOP);
Commit: 70860a7f96b22c348f9253050232c192996af64d
https://github.com/scummvm/scummvm/commit/70860a7f96b22c348f9253050232c192996af64d
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-05-29T01:12:45+02:00
Commit Message:
DIRECTOR: LINGO: Remove c_if and c_repeatwhile
Changed paths:
engines/director/lingo/lingo-code.cpp
engines/director/lingo/lingo-code.h
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index ea568cb7d1..bbf34eea47 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -87,7 +87,6 @@ static struct FuncDescr {
{ LC::c_gotoprevious, "c_gotoprevious", "" },
{ LC::c_gt, "c_gt", "" },
{ LC::c_hilite, "c_hilite", "" },
- { LC::c_ifcode, "c_ifcode", "oooi" },
{ LC::c_instance, "c_instance", "s" }, // D2
{ LC::c_intersects, "c_intersects", "" },
{ LC::c_intpush, "c_intpush", "i" },
@@ -117,7 +116,6 @@ static struct FuncDescr {
{ LC::c_procret, "c_procret", "" },
{ LC::c_proparraypush, "c_proparraypush", "i" },
{ LC::c_property, "c_property", "s" },
- { LC::c_repeatwhilecode,"c_repeatwhilecode","oo" },
{ LC::c_repeatwithcode, "c_repeatwithcode", "ooooos" },
{ LC::c_setImmediate, "c_setImmediate", "i" },
{ LC::c_starts, "c_starts", "" },
@@ -1163,36 +1161,6 @@ void LC::c_jumpifz() {
}
}
-void LC::c_repeatwhilecode(void) {
- Datum d;
- int savepc = g_lingo->_pc;
-
- uint body = g_lingo->getInt(savepc);
- uint end = g_lingo->getInt(savepc + 1);
-
- g_lingo->execute(savepc + 2); /* condition */
- int test = g_lingo->pop().asInt();
-
- while (test) {
- g_lingo->execute(body + savepc - 1); /* body */
- g_lingo->_nextRepeat = false;
-
- if (g_lingo->_returning)
- break;
-
- if (g_lingo->_exitRepeat) {
- g_lingo->_exitRepeat = false;
- break;
- }
-
- g_lingo->execute(savepc + 2); /* condition */
- test = g_lingo->pop().asInt();
- }
-
- if (!g_lingo->_returning)
- g_lingo->_pc = end + savepc - 1; /* next stmt */
-}
-
void LC::c_repeatwithcode(void) {
int savepc = g_lingo->_pc;
@@ -1270,38 +1238,6 @@ void LC::c_exitRepeat(void) {
g_lingo->_exitRepeat = true;
}
-void LC::c_ifcode(void) {
- Datum d;
- int savepc = g_lingo->_pc; /* then part */
-
- uint then = g_lingo->getInt(savepc);
- uint elsep = g_lingo->getInt(savepc+1);
- uint end = g_lingo->getInt(savepc+2);
- uint skipEnd = g_lingo->getInt(savepc+3);
-
- debugC(8, kDebugLingoExec, "executing cond (have to %s end)", skipEnd ? "skip" : "execute");
- g_lingo->execute(savepc + 4); /* condition */
-
- d = g_lingo->pop();
-
- if (d.asInt()) {
- debugC(8, kDebugLingoExec, "executing then");
- g_lingo->execute(then + savepc - 1);
- } else if (elsep) { /* else part? */
- debugC(8, kDebugLingoExec, "executing else");
- g_lingo->execute(elsep + savepc - 1);
- }
-
- // Since we do recursive calls, we want to skip behind end of the 'if'
- // statement only once, and not after every 'end if' call
- if (!g_lingo->_returning && !skipEnd) {
- g_lingo->_pc = end + savepc - 1; /* next stmt */
- debugC(8, kDebugLingoExec, "executing end");
- } else {
- debugC(8, kDebugLingoExec, "skipped end");
- }
-}
-
void LC::c_whencode() {
Datum d;
uint start = g_lingo->_pc;
diff --git a/engines/director/lingo/lingo-code.h b/engines/director/lingo/lingo-code.h
index 1ee29385b9..1b95f30129 100644
--- a/engines/director/lingo/lingo-code.h
+++ b/engines/director/lingo/lingo-code.h
@@ -92,10 +92,8 @@ namespace LC {
void c_objectfieldassign();
void c_objectrefpush();
- void c_repeatwhilecode();
void c_repeatwithcode();
void c_nextRepeat();
- void c_ifcode();
void c_whencode();
void c_tellcode();
void c_tell();
More information about the Scummvm-git-logs
mailing list