aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorEugene Sandulenko2017-02-12 11:58:19 +0100
committerEugene Sandulenko2017-02-12 11:58:19 +0100
commitd4a718bf8407e92b3866343a12035891d92d78b8 (patch)
tree15c109d36a04b90ee663234c761cb44b8ec54b76 /engines
parented1d606e9f25cfe3313079a5627a6c08c91f47dd (diff)
downloadscummvm-rg350-d4a718bf8407e92b3866343a12035891d92d78b8.tar.gz
scummvm-rg350-d4a718bf8407e92b3866343a12035891d92d78b8.tar.bz2
scummvm-rg350-d4a718bf8407e92b3866343a12035891d92d78b8.zip
DIRECTOR: Lingo: Implemented \xC2 continuation symbol support
Diffstat (limited to 'engines')
-rw-r--r--engines/director/lingo/lingo-lex.cpp719
-rw-r--r--engines/director/lingo/lingo-lex.l1
2 files changed, 364 insertions, 356 deletions
diff --git a/engines/director/lingo/lingo-lex.cpp b/engines/director/lingo/lingo-lex.cpp
index 995faf6bd8..c9a7be7ae5 100644
--- a/engines/director/lingo/lingo-lex.cpp
+++ b/engines/director/lingo/lingo-lex.cpp
@@ -364,8 +364,8 @@ static void yy_fatal_error (yyconst char msg[] );
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
-#define YY_NUM_RULES 72
-#define YY_END_OF_BUFFER 73
+#define YY_NUM_RULES 73
+#define YY_END_OF_BUFFER 74
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
@@ -373,37 +373,38 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int16_t yy_accept[271] =
+static yyconst flex_int16_t yy_accept[273] =
{ 0,
- 0, 0, 73, 71, 3, 69, 69, 71, 71, 71,
- 68, 68, 68, 67, 68, 68, 65, 65, 65, 65,
- 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,
- 65, 65, 65, 65, 2, 2, 3, 69, 0, 0,
- 0, 0, 0, 70, 4, 64, 1, 66, 67, 63,
- 61, 62, 65, 65, 65, 65, 65, 65, 65, 65,
- 65, 65, 65, 65, 65, 22, 12, 65, 65, 65,
- 65, 65, 65, 65, 65, 65, 35, 36, 65, 38,
- 65, 65, 65, 65, 65, 65, 65, 65, 65, 54,
- 65, 65, 65, 2, 2, 0, 4, 1, 66, 65,
-
- 6, 65, 65, 65, 65, 65, 65, 16, 65, 65,
- 65, 65, 0, 65, 65, 65, 65, 65, 65, 65,
- 31, 65, 65, 34, 65, 65, 65, 65, 43, 65,
- 45, 65, 65, 65, 65, 65, 65, 65, 65, 0,
- 65, 65, 8, 65, 10, 11, 15, 0, 16, 18,
- 65, 65, 65, 0, 65, 65, 25, 26, 27, 28,
- 65, 65, 65, 33, 37, 39, 65, 65, 65, 65,
- 65, 47, 0, 53, 58, 65, 56, 60, 14, 5,
- 65, 65, 16, 16, 65, 19, 65, 21, 65, 65,
- 29, 65, 32, 65, 65, 65, 65, 65, 65, 52,
-
- 52, 52, 59, 65, 0, 7, 65, 16, 65, 20,
- 65, 65, 30, 65, 65, 65, 44, 55, 46, 0,
- 0, 52, 52, 57, 0, 65, 17, 65, 65, 65,
- 65, 65, 0, 0, 0, 0, 52, 52, 13, 9,
- 23, 65, 65, 41, 42, 0, 0, 0, 52, 52,
- 65, 40, 0, 0, 0, 0, 0, 24, 51, 50,
- 51, 0, 0, 0, 0, 0, 0, 48, 49, 0
+ 0, 0, 74, 72, 4, 70, 70, 72, 72, 72,
+ 69, 69, 69, 68, 69, 69, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 72, 3, 3, 4, 70, 0,
+ 0, 0, 0, 0, 71, 5, 65, 2, 67, 68,
+ 64, 62, 63, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 23, 13, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 36, 37, 66,
+ 39, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 55, 66, 66, 66, 1, 3, 3, 0, 5, 2,
+
+ 67, 66, 7, 66, 66, 66, 66, 66, 66, 17,
+ 66, 66, 66, 66, 0, 66, 66, 66, 66, 66,
+ 66, 66, 32, 66, 66, 35, 66, 66, 66, 66,
+ 44, 66, 46, 66, 66, 66, 66, 66, 66, 66,
+ 66, 0, 66, 66, 9, 66, 11, 12, 16, 0,
+ 17, 19, 66, 66, 66, 0, 66, 66, 26, 27,
+ 28, 29, 66, 66, 66, 34, 38, 40, 66, 66,
+ 66, 66, 66, 48, 0, 54, 59, 66, 57, 61,
+ 15, 6, 66, 66, 17, 17, 66, 20, 66, 22,
+ 66, 66, 30, 66, 33, 66, 66, 66, 66, 66,
+
+ 66, 53, 53, 53, 60, 66, 0, 8, 66, 17,
+ 66, 21, 66, 66, 31, 66, 66, 66, 45, 56,
+ 47, 0, 0, 53, 53, 58, 0, 66, 18, 66,
+ 66, 66, 66, 66, 0, 0, 0, 0, 53, 53,
+ 14, 10, 24, 66, 66, 42, 43, 0, 0, 0,
+ 53, 53, 66, 41, 0, 0, 0, 0, 0, 25,
+ 52, 51, 52, 0, 0, 0, 0, 0, 0, 49,
+ 50, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
@@ -428,7 +429,7 @@ static yyconst flex_int32_t yy_ec[256] =
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 65, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -438,7 +439,7 @@ static yyconst flex_int32_t yy_ec[256] =
1, 1, 1, 1, 1
} ;
-static yyconst flex_int32_t yy_meta[65] =
+static yyconst flex_int32_t yy_meta[66] =
{ 0,
1, 2, 3, 3, 2, 1, 1, 1, 1, 1,
1, 1, 4, 1, 1, 1, 5, 5, 5, 5,
@@ -446,80 +447,80 @@ static yyconst flex_int32_t yy_meta[65] =
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
6, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 5, 5
+ 5, 5, 5, 5, 1
} ;
-static yyconst flex_int16_t yy_base[282] =
+static yyconst flex_int16_t yy_base[284] =
{ 0,
- 0, 63, 159, 697, 67, 71, 75, 79, 147, 0,
- 697, 133, 126, 54, 70, 94, 65, 67, 65, 61,
- 71, 87, 72, 0, 103, 81, 119, 109, 135, 118,
- 82, 112, 153, 155, 191, 208, 212, 697, 216, 179,
- 224, 119, 99, 697, 0, 697, 0, 88, 95, 697,
- 697, 697, 0, 113, 96, 105, 159, 169, 194, 172,
- 188, 199, 215, 218, 201, 88, 0, 203, 218, 212,
- 212, 224, 213, 226, 211, 216, 0, 0, 223, 0,
- 235, 237, 219, 226, 238, 243, 262, 255, 259, 0,
- 263, 251, 257, 290, 313, 262, 0, 0, 84, 277,
-
- 0, 271, 269, 268, 278, 278, 287, 184, 276, 277,
- 291, 303, 327, 293, 309, 306, 301, 306, 307, 317,
- 0, 317, 309, 0, 316, 308, 312, 319, 0, 330,
- 0, 328, 323, 330, 377, 330, 333, 341, 350, 350,
- 342, 344, 0, 368, 0, 0, 0, 386, 0, 0,
- 357, 368, 375, 364, 380, 367, 0, 0, 0, 0,
- 372, 373, 377, 0, 0, 387, 382, 387, 392, 377,
- 378, 0, 414, 0, 0, 394, 395, 0, 423, 0,
- 400, 406, 0, 0, 402, 0, 411, 697, 410, 408,
- 0, 423, 0, 425, 417, 416, 415, 430, 419, 450,
-
- 465, 476, 0, 432, 478, 0, 435, 0, 447, 0,
- 435, 463, 0, 470, 455, 457, 0, 0, 0, 492,
- 475, 491, 519, 0, 476, 468, 0, 484, 487, 492,
- 483, 478, 531, 502, 513, 514, 538, 545, 697, 0,
- 0, 510, 526, 0, 0, 519, 554, 529, 560, 561,
- 524, 0, 546, 570, 547, 581, 582, 0, 697, 586,
- 697, 593, 552, 598, 567, 603, 604, 605, 613, 697,
- 652, 654, 657, 660, 666, 671, 676, 679, 684, 686,
- 691
+ 0, 64, 160, 702, 68, 72, 76, 80, 148, 0,
+ 702, 129, 106, 55, 71, 95, 66, 68, 66, 62,
+ 72, 88, 73, 0, 104, 82, 120, 110, 136, 119,
+ 83, 113, 154, 156, 105, 192, 209, 213, 702, 217,
+ 180, 225, 120, 100, 702, 0, 702, 0, 89, 130,
+ 702, 702, 702, 0, 114, 108, 155, 181, 178, 195,
+ 191, 189, 210, 217, 220, 202, 89, 0, 205, 220,
+ 214, 214, 226, 215, 232, 212, 219, 0, 0, 226,
+ 0, 238, 252, 224, 234, 241, 246, 267, 254, 264,
+ 0, 265, 253, 259, 702, 292, 315, 265, 0, 0,
+
+ 85, 280, 0, 274, 274, 273, 281, 284, 293, 320,
+ 286, 289, 301, 312, 333, 299, 319, 308, 320, 312,
+ 313, 320, 0, 322, 315, 0, 322, 312, 317, 325,
+ 0, 336, 0, 334, 328, 335, 385, 335, 344, 353,
+ 359, 360, 350, 356, 0, 374, 0, 0, 0, 185,
+ 0, 0, 363, 373, 379, 368, 382, 368, 0, 0,
+ 0, 0, 373, 375, 387, 0, 0, 392, 385, 390,
+ 395, 380, 383, 0, 418, 0, 0, 405, 403, 0,
+ 395, 0, 409, 406, 0, 0, 407, 0, 414, 702,
+ 414, 410, 0, 412, 0, 427, 418, 416, 415, 433,
+
+ 424, 473, 475, 479, 0, 433, 488, 0, 434, 0,
+ 430, 0, 447, 474, 0, 477, 452, 463, 0, 0,
+ 0, 495, 483, 497, 499, 0, 486, 471, 0, 493,
+ 497, 498, 476, 483, 522, 509, 514, 512, 543, 555,
+ 702, 0, 0, 508, 519, 0, 0, 515, 561, 530,
+ 567, 578, 534, 0, 538, 584, 550, 589, 593, 0,
+ 702, 595, 702, 599, 559, 603, 563, 610, 615, 616,
+ 620, 702, 657, 659, 662, 665, 671, 676, 681, 684,
+ 689, 691, 696
} ;
-static yyconst flex_int16_t yy_def[282] =
+static yyconst flex_int16_t yy_def[284] =
{ 0,
- 270, 1, 270, 270, 270, 270, 270, 270, 271, 272,
- 270, 270, 270, 270, 270, 270, 273, 273, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 273, 270, 270, 270, 270, 270, 270,
- 270, 270, 271, 270, 274, 270, 275, 270, 270, 270,
- 270, 270, 273, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 270, 270, 270, 274, 275, 270, 273,
-
- 273, 273, 273, 273, 273, 273, 273, 276, 273, 273,
- 273, 273, 270, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 270,
- 273, 273, 273, 273, 273, 273, 273, 277, 278, 273,
- 273, 273, 273, 270, 273, 273, 273, 273, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 273,
- 273, 273, 279, 273, 273, 273, 273, 273, 270, 273,
- 273, 273, 280, 278, 273, 273, 273, 270, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 279,
-
- 279, 279, 273, 273, 270, 273, 273, 280, 273, 273,
- 273, 273, 273, 273, 273, 273, 273, 273, 273, 270,
- 270, 279, 279, 273, 270, 273, 273, 273, 273, 273,
- 273, 273, 270, 270, 270, 270, 279, 279, 270, 273,
- 273, 273, 273, 273, 273, 270, 270, 270, 279, 279,
- 273, 273, 270, 281, 270, 270, 270, 273, 270, 281,
- 270, 270, 270, 270, 270, 270, 270, 281, 281, 0,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270
+ 272, 1, 272, 272, 272, 272, 272, 272, 273, 274,
+ 272, 272, 272, 272, 272, 272, 275, 275, 275, 275,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 273, 272, 276, 272, 277, 272, 272,
+ 272, 272, 272, 275, 275, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 272, 272, 272, 272, 276, 277,
+
+ 272, 275, 275, 275, 275, 275, 275, 275, 275, 278,
+ 275, 275, 275, 275, 272, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 272, 275, 275, 275, 275, 275, 275, 275, 279,
+ 280, 275, 275, 275, 275, 272, 275, 275, 275, 275,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 275, 275, 275, 281, 275, 275, 275, 275, 275,
+ 272, 275, 275, 275, 282, 280, 275, 275, 275, 272,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+
+ 275, 281, 281, 281, 275, 275, 272, 275, 275, 282,
+ 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+ 275, 272, 272, 281, 281, 275, 272, 275, 275, 275,
+ 275, 275, 275, 275, 272, 272, 272, 272, 281, 281,
+ 272, 275, 275, 275, 275, 275, 275, 272, 272, 272,
+ 281, 281, 275, 275, 272, 283, 272, 272, 272, 275,
+ 272, 283, 272, 272, 272, 272, 272, 272, 272, 283,
+ 283, 0, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272
} ;
-static yyconst flex_int16_t yy_nxt[762] =
+static yyconst flex_int16_t yy_nxt[768] =
{ 0,
4, 5, 6, 7, 8, 9, 10, 11, 12, 11,
13, 4, 14, 15, 11, 16, 17, 18, 19, 20,
@@ -527,87 +528,87 @@ static yyconst flex_int16_t yy_nxt[762] =
30, 24, 31, 32, 33, 24, 24, 34, 24, 24,
24, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 29, 30, 24, 31, 32, 33, 24,
- 24, 34, 24, 24, 35, 48, 49, 36, 37, 38,
- 38, 39, 40, 41, 41, 40, 40, 41, 41, 40,
- 39, 38, 38, 39, 50, 51, 54, 56, 57, 113,
- 59, 42, 113, 55, 58, 42, 99, 60, 65, 61,
-
- 99, 66, 84, 63, 44, 70, 48, 49, 52, 62,
- 71, 54, 56, 57, 59, 101, 42, 55, 58, 64,
- 42, 60, 65, 61, 67, 66, 102, 84, 63, 75,
- 70, 68, 85, 62, 71, 72, 47, 69, 76, 73,
- 101, 46, 86, 64, 81, 96, 87, 100, 74, 67,
- 82, 102, 44, 83, 75, 68, 77, 85, 270, 270,
- 72, 69, 76, 78, 73, 79, 86, 80, 81, 96,
- 87, 100, 74, 88, 82, 103, 89, 83, 91, 92,
- 40, 77, 90, 40, 93, 148, 270, 78, 148, 79,
- 270, 80, 94, 38, 38, 95, 53, 104, 88, 42,
-
- 103, 89, 270, 91, 92, 107, 90, 108, 93, 95,
- 38, 38, 95, 37, 38, 38, 39, 39, 38, 38,
- 39, 104, 105, 109, 42, 40, 41, 41, 40, 107,
- 112, 106, 108, 110, 111, 270, 114, 115, 116, 270,
- 117, 118, 119, 125, 42, 121, 105, 120, 109, 123,
- 124, 126, 270, 129, 112, 106, 130, 127, 110, 111,
- 114, 115, 122, 116, 117, 118, 128, 119, 125, 42,
- 121, 120, 131, 123, 124, 132, 126, 129, 133, 135,
- 130, 134, 127, 136, 270, 138, 122, 137, 270, 139,
- 128, 94, 38, 38, 95, 140, 131, 141, 145, 132,
-
- 142, 143, 144, 133, 135, 134, 146, 147, 136, 138,
- 150, 151, 137, 139, 95, 38, 38, 95, 152, 140,
- 153, 159, 141, 145, 142, 143, 144, 155, 113, 156,
- 146, 113, 147, 158, 150, 151, 160, 270, 157, 161,
- 162, 163, 152, 164, 165, 153, 159, 166, 167, 168,
- 169, 155, 170, 270, 156, 171, 172, 158, 175, 176,
- 160, 154, 157, 161, 177, 162, 163, 164, 165, 178,
- 179, 166, 167, 168, 180, 169, 181, 170, 173, 171,
- 172, 173, 175, 176, 182, 154, 185, 148, 186, 177,
- 148, 187, 270, 188, 178, 179, 189, 193, 180, 190,
-
- 181, 191, 192, 194, 270, 174, 195, 196, 197, 182,
- 185, 198, 199, 186, 203, 173, 187, 188, 173, 204,
- 206, 189, 193, 190, 205, 191, 192, 205, 194, 174,
- 207, 195, 196, 197, 209, 198, 199, 210, 211, 203,
- 201, 212, 213, 214, 204, 206, 215, 202, 216, 217,
- 218, 220, 219, 228, 220, 207, 270, 270, 209, 221,
- 224, 210, 211, 226, 201, 212, 220, 213, 214, 220,
- 215, 202, 216, 217, 221, 218, 219, 220, 228, 205,
- 220, 222, 205, 229, 224, 221, 227, 226, 230, 270,
- 231, 232, 220, 233, 234, 220, 233, 239, 270, 270,
-
- 221, 240, 225, 270, 241, 242, 222, 223, 229, 236,
- 227, 234, 243, 230, 231, 232, 244, 245, 246, 234,
- 220, 235, 239, 220, 237, 240, 236, 225, 221, 241,
- 242, 223, 233, 236, 247, 233, 234, 243, 248, 220,
- 244, 245, 220, 246, 251, 235, 220, 221, 237, 220,
- 236, 238, 252, 253, 221, 254, 255, 258, 254, 247,
- 235, 256, 257, 248, 256, 257, 259, 261, 251, 221,
- 221, 254, 249, 266, 254, 238, 252, 253, 270, 250,
- 255, 258, 262, 264, 235, 262, 264, 270, 267, 270,
- 270, 259, 261, 270, 262, 270, 249, 262, 266, 264,
-
- 234, 234, 264, 250, 268, 269, 268, 268, 269, 268,
- 263, 265, 270, 267, 269, 236, 236, 269, 270, 270,
- 270, 270, 263, 270, 270, 234, 234, 265, 270, 270,
- 270, 270, 270, 270, 263, 265, 270, 270, 270, 236,
- 236, 270, 270, 270, 270, 270, 263, 270, 270, 270,
- 270, 265, 43, 43, 270, 43, 43, 43, 45, 45,
- 53, 53, 53, 97, 97, 97, 98, 98, 270, 98,
- 98, 98, 149, 270, 149, 149, 149, 183, 270, 270,
- 183, 183, 184, 184, 184, 200, 270, 270, 200, 208,
- 208, 208, 260, 270, 270, 260, 3, 270, 270, 270,
-
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270
+ 24, 34, 24, 24, 35, 36, 49, 50, 37, 38,
+ 39, 39, 40, 41, 42, 42, 41, 41, 42, 42,
+ 41, 40, 39, 39, 40, 51, 52, 55, 57, 58,
+ 115, 60, 43, 115, 56, 59, 43, 101, 61, 66,
+
+ 62, 101, 67, 85, 64, 45, 71, 95, 95, 53,
+ 63, 72, 55, 57, 58, 60, 48, 43, 56, 59,
+ 65, 43, 61, 66, 62, 68, 67, 103, 85, 64,
+ 76, 71, 69, 86, 63, 72, 73, 47, 70, 77,
+ 74, 49, 50, 87, 65, 82, 98, 88, 102, 75,
+ 68, 83, 103, 45, 84, 76, 69, 78, 86, 272,
+ 272, 73, 70, 77, 79, 74, 80, 87, 81, 82,
+ 98, 88, 102, 75, 89, 83, 104, 90, 84, 92,
+ 93, 41, 78, 91, 41, 94, 150, 272, 79, 150,
+ 80, 272, 81, 96, 39, 39, 97, 105, 272, 89,
+
+ 43, 104, 90, 272, 92, 93, 106, 91, 110, 94,
+ 97, 39, 39, 97, 38, 39, 39, 40, 40, 39,
+ 39, 40, 105, 107, 109, 43, 41, 42, 42, 41,
+ 106, 114, 108, 110, 111, 112, 113, 272, 116, 117,
+ 118, 272, 119, 120, 121, 43, 127, 107, 109, 122,
+ 125, 123, 272, 126, 128, 114, 108, 272, 131, 111,
+ 112, 113, 116, 117, 132, 118, 119, 120, 124, 121,
+ 43, 127, 129, 122, 125, 133, 123, 126, 134, 128,
+ 136, 130, 131, 135, 137, 138, 272, 140, 132, 139,
+ 272, 141, 124, 96, 39, 39, 97, 129, 142, 133,
+
+ 143, 147, 134, 144, 136, 130, 145, 146, 135, 137,
+ 138, 140, 148, 149, 139, 141, 97, 39, 39, 97,
+ 152, 150, 142, 153, 150, 143, 147, 144, 154, 155,
+ 145, 146, 54, 157, 115, 160, 148, 115, 149, 158,
+ 161, 272, 162, 164, 152, 163, 165, 153, 159, 166,
+ 167, 168, 154, 169, 155, 170, 171, 157, 172, 160,
+ 173, 174, 272, 177, 158, 161, 162, 156, 164, 163,
+ 178, 165, 159, 166, 167, 168, 179, 169, 180, 170,
+ 181, 171, 182, 172, 173, 174, 175, 177, 183, 175,
+ 184, 156, 187, 188, 178, 189, 207, 190, 191, 207,
+
+ 192, 179, 193, 180, 194, 181, 182, 195, 196, 197,
+ 198, 199, 183, 176, 200, 184, 187, 201, 188, 175,
+ 189, 190, 175, 191, 192, 205, 193, 206, 194, 208,
+ 209, 215, 195, 196, 197, 198, 199, 176, 200, 211,
+ 212, 201, 213, 214, 203, 216, 272, 217, 218, 219,
+ 205, 204, 206, 220, 208, 209, 215, 221, 272, 272,
+ 272, 226, 228, 211, 212, 230, 213, 214, 203, 229,
+ 216, 217, 218, 219, 222, 204, 222, 222, 220, 222,
+ 222, 221, 223, 222, 223, 226, 228, 233, 223, 207,
+ 230, 224, 207, 229, 231, 232, 235, 234, 222, 235,
+
+ 222, 222, 236, 222, 242, 272, 223, 241, 223, 246,
+ 225, 233, 227, 243, 236, 244, 224, 238, 245, 231,
+ 232, 234, 247, 235, 237, 248, 235, 236, 242, 238,
+ 239, 240, 241, 246, 225, 249, 250, 227, 243, 236,
+ 244, 238, 253, 245, 222, 254, 247, 222, 237, 255,
+ 248, 237, 223, 238, 239, 240, 222, 257, 261, 222,
+ 249, 250, 256, 272, 223, 256, 253, 260, 258, 254,
+ 263, 258, 272, 255, 272, 237, 223, 251, 272, 259,
+ 268, 257, 259, 261, 269, 256, 272, 223, 256, 252,
+ 264, 260, 272, 264, 266, 263, 272, 266, 272, 272,
+
+ 264, 251, 272, 264, 266, 268, 272, 266, 236, 269,
+ 272, 270, 236, 252, 270, 272, 271, 270, 265, 271,
+ 270, 271, 267, 238, 271, 272, 272, 238, 265, 272,
+ 272, 272, 267, 236, 272, 272, 272, 236, 272, 272,
+ 272, 272, 265, 272, 272, 272, 267, 238, 272, 272,
+ 272, 238, 265, 272, 272, 272, 267, 44, 44, 272,
+ 44, 44, 44, 46, 46, 54, 54, 54, 99, 99,
+ 99, 100, 100, 272, 100, 100, 100, 151, 272, 151,
+ 151, 151, 185, 272, 272, 185, 185, 186, 186, 186,
+ 202, 272, 272, 202, 210, 210, 210, 262, 272, 272,
+
+ 262, 3, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272
} ;
-static yyconst flex_int16_t yy_chk[762] =
+static yyconst flex_int16_t yy_chk[768] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -615,84 +616,84 @@ static yyconst flex_int16_t yy_chk[762] =
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 2, 14, 14, 2, 5, 5,
- 5, 5, 6, 6, 6, 6, 7, 7, 7, 7,
- 8, 8, 8, 8, 15, 15, 17, 18, 19, 66,
- 20, 6, 66, 17, 19, 7, 99, 21, 23, 21,
-
- 48, 23, 31, 22, 43, 26, 49, 49, 16, 21,
- 26, 17, 18, 19, 20, 55, 6, 17, 19, 22,
- 7, 21, 23, 21, 25, 23, 56, 31, 22, 28,
- 26, 25, 32, 21, 26, 27, 13, 25, 28, 27,
- 55, 12, 32, 22, 30, 42, 32, 54, 27, 25,
- 30, 56, 9, 30, 28, 25, 29, 32, 3, 0,
- 27, 25, 28, 29, 27, 29, 32, 29, 30, 42,
- 32, 54, 27, 33, 30, 57, 33, 30, 34, 34,
- 40, 29, 33, 40, 34, 108, 0, 29, 108, 29,
- 0, 29, 35, 35, 35, 35, 108, 58, 33, 40,
-
- 57, 33, 0, 34, 34, 60, 33, 61, 34, 36,
- 36, 36, 36, 37, 37, 37, 37, 39, 39, 39,
- 39, 58, 59, 62, 40, 41, 41, 41, 41, 60,
- 65, 59, 61, 63, 64, 0, 68, 68, 69, 0,
- 70, 71, 72, 79, 41, 74, 59, 73, 62, 75,
- 76, 81, 0, 83, 65, 59, 84, 82, 63, 64,
- 68, 68, 74, 69, 70, 71, 82, 72, 79, 41,
- 74, 73, 85, 75, 76, 86, 81, 83, 87, 89,
- 84, 88, 82, 91, 0, 92, 74, 91, 0, 93,
- 82, 94, 94, 94, 94, 96, 85, 100, 105, 86,
-
- 102, 103, 104, 87, 89, 88, 106, 107, 91, 92,
- 109, 110, 91, 93, 95, 95, 95, 95, 111, 96,
- 112, 117, 100, 105, 102, 103, 104, 114, 113, 115,
- 106, 113, 107, 116, 109, 110, 118, 0, 115, 119,
- 120, 122, 111, 123, 125, 112, 117, 126, 127, 128,
- 130, 114, 132, 0, 115, 133, 134, 116, 136, 137,
- 118, 113, 115, 119, 138, 120, 122, 123, 125, 139,
- 140, 126, 127, 128, 141, 130, 142, 132, 135, 133,
- 134, 135, 136, 137, 144, 113, 151, 148, 152, 138,
- 148, 153, 0, 154, 139, 140, 155, 163, 141, 156,
-
- 142, 161, 162, 166, 0, 135, 167, 168, 169, 144,
- 151, 170, 171, 152, 176, 173, 153, 154, 173, 177,
- 181, 155, 163, 156, 179, 161, 162, 179, 166, 135,
- 182, 167, 168, 169, 185, 170, 171, 187, 189, 176,
- 173, 190, 192, 194, 177, 181, 195, 173, 196, 197,
- 198, 200, 199, 211, 200, 182, 0, 0, 185, 200,
- 204, 187, 189, 207, 173, 190, 201, 192, 194, 201,
- 195, 173, 196, 197, 201, 198, 199, 202, 211, 205,
- 202, 201, 205, 212, 204, 202, 209, 207, 214, 0,
- 215, 216, 222, 220, 221, 222, 220, 225, 0, 0,
-
- 222, 226, 205, 0, 228, 229, 201, 202, 212, 221,
- 209, 220, 230, 214, 215, 216, 231, 232, 234, 221,
- 223, 220, 225, 223, 222, 226, 220, 205, 223, 228,
- 229, 202, 233, 221, 235, 233, 220, 230, 236, 237,
- 231, 232, 237, 234, 242, 220, 238, 237, 222, 238,
- 220, 223, 243, 246, 238, 247, 248, 251, 247, 235,
- 233, 249, 250, 236, 249, 250, 253, 255, 242, 249,
- 250, 254, 237, 263, 254, 223, 243, 246, 0, 238,
- 248, 251, 256, 257, 233, 256, 257, 260, 265, 0,
- 260, 253, 255, 0, 262, 0, 237, 262, 263, 264,
-
- 256, 257, 264, 238, 266, 267, 268, 266, 267, 268,
- 256, 257, 0, 265, 269, 256, 257, 269, 0, 0,
- 0, 0, 262, 0, 0, 256, 257, 264, 0, 0,
- 0, 0, 0, 0, 256, 257, 0, 0, 0, 256,
- 257, 0, 0, 0, 0, 0, 262, 0, 0, 0,
- 0, 264, 271, 271, 0, 271, 271, 271, 272, 272,
- 273, 273, 273, 274, 274, 274, 275, 275, 0, 275,
- 275, 275, 276, 0, 276, 276, 276, 277, 0, 0,
- 277, 277, 278, 278, 278, 279, 0, 0, 279, 280,
- 280, 280, 281, 0, 0, 281, 270, 270, 270, 270,
-
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
- 270
+ 1, 1, 1, 1, 1, 2, 14, 14, 2, 5,
+ 5, 5, 5, 6, 6, 6, 6, 7, 7, 7,
+ 7, 8, 8, 8, 8, 15, 15, 17, 18, 19,
+ 67, 20, 6, 67, 17, 19, 7, 101, 21, 23,
+
+ 21, 49, 23, 31, 22, 44, 26, 35, 35, 16,
+ 21, 26, 17, 18, 19, 20, 13, 6, 17, 19,
+ 22, 7, 21, 23, 21, 25, 23, 56, 31, 22,
+ 28, 26, 25, 32, 21, 26, 27, 12, 25, 28,
+ 27, 50, 50, 32, 22, 30, 43, 32, 55, 27,
+ 25, 30, 56, 9, 30, 28, 25, 29, 32, 3,
+ 0, 27, 25, 28, 29, 27, 29, 32, 29, 30,
+ 43, 32, 55, 27, 33, 30, 57, 33, 30, 34,
+ 34, 41, 29, 33, 41, 34, 150, 0, 29, 150,
+ 29, 0, 29, 36, 36, 36, 36, 58, 0, 33,
+
+ 41, 57, 33, 0, 34, 34, 59, 33, 62, 34,
+ 37, 37, 37, 37, 38, 38, 38, 38, 40, 40,
+ 40, 40, 58, 60, 61, 41, 42, 42, 42, 42,
+ 59, 66, 60, 62, 63, 64, 65, 0, 69, 69,
+ 70, 0, 71, 72, 73, 42, 80, 60, 61, 74,
+ 76, 75, 0, 77, 82, 66, 60, 0, 84, 63,
+ 64, 65, 69, 69, 85, 70, 71, 72, 75, 73,
+ 42, 80, 83, 74, 76, 86, 75, 77, 87, 82,
+ 89, 83, 84, 88, 90, 92, 0, 93, 85, 92,
+ 0, 94, 75, 96, 96, 96, 96, 83, 98, 86,
+
+ 102, 107, 87, 104, 89, 83, 105, 106, 88, 90,
+ 92, 93, 108, 109, 92, 94, 97, 97, 97, 97,
+ 111, 110, 98, 112, 110, 102, 107, 104, 113, 114,
+ 105, 106, 110, 116, 115, 118, 108, 115, 109, 117,
+ 119, 0, 120, 122, 111, 121, 124, 112, 117, 125,
+ 127, 128, 113, 129, 114, 130, 132, 116, 134, 118,
+ 135, 136, 0, 138, 117, 119, 120, 115, 122, 121,
+ 139, 124, 117, 125, 127, 128, 140, 129, 141, 130,
+ 142, 132, 143, 134, 135, 136, 137, 138, 144, 137,
+ 146, 115, 153, 154, 139, 155, 181, 156, 157, 181,
+
+ 158, 140, 163, 141, 164, 142, 143, 165, 168, 169,
+ 170, 171, 144, 137, 172, 146, 153, 173, 154, 175,
+ 155, 156, 175, 157, 158, 178, 163, 179, 164, 183,
+ 184, 194, 165, 168, 169, 170, 171, 137, 172, 187,
+ 189, 173, 191, 192, 175, 196, 0, 197, 198, 199,
+ 178, 175, 179, 200, 183, 184, 194, 201, 0, 0,
+ 0, 206, 209, 187, 189, 213, 191, 192, 175, 211,
+ 196, 197, 198, 199, 202, 175, 203, 202, 200, 203,
+ 204, 201, 202, 204, 203, 206, 209, 217, 204, 207,
+ 213, 203, 207, 211, 214, 216, 222, 218, 224, 222,
+
+ 225, 224, 223, 225, 228, 0, 224, 227, 225, 233,
+ 204, 217, 207, 230, 222, 231, 203, 223, 232, 214,
+ 216, 218, 234, 235, 222, 236, 235, 223, 228, 222,
+ 224, 225, 227, 233, 204, 237, 238, 207, 230, 222,
+ 231, 223, 244, 232, 239, 245, 234, 239, 222, 248,
+ 236, 235, 239, 222, 224, 225, 240, 250, 255, 240,
+ 237, 238, 249, 0, 240, 249, 244, 253, 251, 245,
+ 257, 251, 0, 248, 0, 235, 251, 239, 0, 252,
+ 265, 250, 252, 255, 267, 256, 0, 252, 256, 240,
+ 258, 253, 0, 258, 259, 257, 262, 259, 0, 262,
+
+ 264, 239, 0, 264, 266, 265, 0, 266, 258, 267,
+ 0, 268, 259, 240, 268, 0, 269, 270, 258, 269,
+ 270, 271, 259, 258, 271, 0, 0, 259, 264, 0,
+ 0, 0, 266, 258, 0, 0, 0, 259, 0, 0,
+ 0, 0, 258, 0, 0, 0, 259, 258, 0, 0,
+ 0, 259, 264, 0, 0, 0, 266, 273, 273, 0,
+ 273, 273, 273, 274, 274, 275, 275, 275, 276, 276,
+ 276, 277, 277, 0, 277, 277, 277, 278, 0, 278,
+ 278, 278, 279, 0, 0, 279, 279, 280, 280, 280,
+ 281, 0, 0, 281, 282, 282, 282, 283, 0, 0,
+
+ 283, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+ 272, 272, 272, 272, 272, 272, 272
} ;
static yy_state_type yy_last_accepting_state;
@@ -780,7 +781,7 @@ static int checkImmediate(int token) {
return token;
}
-#line 784 "engines/director/lingo/lingo-lex.cpp"
+#line 785 "engines/director/lingo/lingo-lex.cpp"
#define INITIAL 0
@@ -966,7 +967,7 @@ YY_DECL
#line 85 "engines/director/lingo/lingo-lex.l"
-#line 970 "engines/director/lingo/lingo-lex.cpp"
+#line 971 "engines/director/lingo/lingo-lex.cpp"
if ( !(yy_init) )
{
@@ -1020,13 +1021,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 271 )
+ if ( yy_current_state >= 273 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
- while ( yy_base[yy_current_state] != 697 );
+ while ( yy_base[yy_current_state] != 702 );
yy_find_action:
yy_act = yy_accept[yy_current_state];
@@ -1051,85 +1052,91 @@ do_action: /* This label is used only to access EOF actions. */
goto yy_find_action;
case 1:
+/* rule 1 can match eol */
YY_RULE_SETUP
#line 87 "engines/director/lingo/lingo-lex.l"
-
+{ g_lingo->_linenumber++; g_lingo->_colnumber = 0; }
YY_BREAK
case 2:
YY_RULE_SETUP
#line 88 "engines/director/lingo/lingo-lex.l"
-{ count(); }
+
YY_BREAK
case 3:
YY_RULE_SETUP
#line 89 "engines/director/lingo/lingo-lex.l"
-{ count(); return ' '; }
+{ count(); }
YY_BREAK
case 4:
YY_RULE_SETUP
-#line 91 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.s = new Common::String(yytext); return SYMBOL; } // D3
+#line 90 "engines/director/lingo/lingo-lex.l"
+{ count(); return ' '; }
YY_BREAK
case 5:
YY_RULE_SETUP
-#line 93 "engines/director/lingo/lingo-lex.l"
-{ count(); return tAFTER; } // D3
+#line 92 "engines/director/lingo/lingo-lex.l"
+{ count(); yylval.s = new Common::String(yytext); return SYMBOL; } // D3
YY_BREAK
case 6:
YY_RULE_SETUP
#line 94 "engines/director/lingo/lingo-lex.l"
-{ count(); return tAND; }
+{ count(); return tAFTER; } // D3
YY_BREAK
case 7:
YY_RULE_SETUP
#line 95 "engines/director/lingo/lingo-lex.l"
-{ count(); return tBEFORE; } // D3
+{ count(); return tAND; }
YY_BREAK
case 8:
YY_RULE_SETUP
#line 96 "engines/director/lingo/lingo-lex.l"
-{ count(); return tCHAR; } // D3
+{ count(); return tBEFORE; } // D3
YY_BREAK
case 9:
YY_RULE_SETUP
#line 97 "engines/director/lingo/lingo-lex.l"
-{ count(); return tCONTAINS; }
+{ count(); return tCHAR; } // D3
YY_BREAK
case 10:
YY_RULE_SETUP
#line 98 "engines/director/lingo/lingo-lex.l"
-{ count(); return tDONE; }
+{ count(); return tCONTAINS; }
YY_BREAK
case 11:
YY_RULE_SETUP
#line 99 "engines/director/lingo/lingo-lex.l"
-{ count(); return tDOWN; }
+{ count(); return tDONE; }
YY_BREAK
case 12:
YY_RULE_SETUP
#line 100 "engines/director/lingo/lingo-lex.l"
-{ count(); return tIF; }
+{ count(); return tDOWN; }
YY_BREAK
case 13:
-/* rule 13 can match eol */
YY_RULE_SETUP
#line 101 "engines/director/lingo/lingo-lex.l"
-{ countnl(); return tNLELSIF; }
+{ count(); return tIF; }
YY_BREAK
case 14:
/* rule 14 can match eol */
YY_RULE_SETUP
#line 102 "engines/director/lingo/lingo-lex.l"
-{ countnl(); return tNLELSE; }
+{ countnl(); return tNLELSIF; }
YY_BREAK
case 15:
+/* rule 15 can match eol */
YY_RULE_SETUP
#line 103 "engines/director/lingo/lingo-lex.l"
-{ count(); return tELSE; }
+{ countnl(); return tNLELSE; }
YY_BREAK
case 16:
YY_RULE_SETUP
#line 104 "engines/director/lingo/lingo-lex.l"
+{ count(); return tELSE; }
+ YY_BREAK
+case 17:
+YY_RULE_SETUP
+#line 105 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1142,30 +1149,25 @@ YY_RULE_SETUP
return ENDCLAUSE;
}
YY_BREAK
-case 17:
-YY_RULE_SETUP
-#line 115 "engines/director/lingo/lingo-lex.l"
-{ count(); return tFACTORY; }
- YY_BREAK
case 18:
YY_RULE_SETUP
#line 116 "engines/director/lingo/lingo-lex.l"
-{ count(); return tEXIT; }
+{ count(); return tFACTORY; }
YY_BREAK
case 19:
YY_RULE_SETUP
#line 117 "engines/director/lingo/lingo-lex.l"
-{ count(); return tFRAME; }
+{ count(); return tEXIT; }
YY_BREAK
case 20:
YY_RULE_SETUP
#line 118 "engines/director/lingo/lingo-lex.l"
-{ count(); return tGLOBAL; }
+{ count(); return tFRAME; }
YY_BREAK
case 21:
YY_RULE_SETUP
#line 119 "engines/director/lingo/lingo-lex.l"
-{ count(); return tGO; }
+{ count(); return tGLOBAL; }
YY_BREAK
case 22:
YY_RULE_SETUP
@@ -1175,131 +1177,136 @@ YY_RULE_SETUP
case 23:
YY_RULE_SETUP
#line 121 "engines/director/lingo/lingo-lex.l"
-{ count(); return tINSTANCE; }
+{ count(); return tGO; }
YY_BREAK
case 24:
YY_RULE_SETUP
#line 122 "engines/director/lingo/lingo-lex.l"
-{ count(); return tINTERSECTS; }
+{ count(); return tINSTANCE; }
YY_BREAK
case 25:
YY_RULE_SETUP
#line 123 "engines/director/lingo/lingo-lex.l"
-{ count(); return tINTO; }
+{ count(); return tINTERSECTS; }
YY_BREAK
case 26:
YY_RULE_SETUP
#line 124 "engines/director/lingo/lingo-lex.l"
-{ count(); return tITEM; }
+{ count(); return tINTO; }
YY_BREAK
case 27:
YY_RULE_SETUP
#line 125 "engines/director/lingo/lingo-lex.l"
-{ count(); return tLINE; }
+{ count(); return tITEM; }
YY_BREAK
case 28:
YY_RULE_SETUP
#line 126 "engines/director/lingo/lingo-lex.l"
-{ count(); return checkImmediate(tLOOP); }
+{ count(); return tLINE; }
YY_BREAK
case 29:
YY_RULE_SETUP
#line 127 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMACRO; }
+{ count(); return checkImmediate(tLOOP); }
YY_BREAK
case 30:
YY_RULE_SETUP
#line 128 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMETHOD; }
+{ count(); return tMACRO; }
YY_BREAK
case 31:
YY_RULE_SETUP
#line 129 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMOD; }
+{ count(); return tMETHOD; }
YY_BREAK
case 32:
YY_RULE_SETUP
#line 130 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMOVIE; }
+{ count(); return tMOD; }
YY_BREAK
case 33:
YY_RULE_SETUP
#line 131 "engines/director/lingo/lingo-lex.l"
-{ count(); return tNEXT; }
+{ count(); return tMOVIE; }
YY_BREAK
case 34:
YY_RULE_SETUP
#line 132 "engines/director/lingo/lingo-lex.l"
-{ count(); return tNOT; }
+{ count(); return tNEXT; }
YY_BREAK
case 35:
YY_RULE_SETUP
#line 133 "engines/director/lingo/lingo-lex.l"
-{ count(); return tOF; }
+{ count(); return tNOT; }
YY_BREAK
case 36:
YY_RULE_SETUP
#line 134 "engines/director/lingo/lingo-lex.l"
-{ count(); return tON; } // D3
+{ count(); return tOF; }
YY_BREAK
case 37:
YY_RULE_SETUP
#line 135 "engines/director/lingo/lingo-lex.l"
-{ count(); return tOPEN; }
+{ count(); return tON; } // D3
YY_BREAK
case 38:
YY_RULE_SETUP
#line 136 "engines/director/lingo/lingo-lex.l"
-{ count(); return tOR; }
+{ count(); return tOPEN; }
YY_BREAK
case 39:
YY_RULE_SETUP
#line 137 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPLAY; }
+{ count(); return tOR; }
YY_BREAK
case 40:
YY_RULE_SETUP
#line 138 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.s = new Common::String(yytext); return tPLAYACCEL; }
+{ count(); return tPLAY; }
YY_BREAK
case 41:
YY_RULE_SETUP
#line 139 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPREVIOUS; }
+{ count(); yylval.s = new Common::String(yytext); return tPLAYACCEL; }
YY_BREAK
case 42:
YY_RULE_SETUP
#line 140 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPROPERTY; } // D4
+{ count(); return tPREVIOUS; }
YY_BREAK
case 43:
YY_RULE_SETUP
#line 141 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPUT; }
+{ count(); return tPROPERTY; } // D4
YY_BREAK
case 44:
YY_RULE_SETUP
#line 142 "engines/director/lingo/lingo-lex.l"
-{ count(); return checkImmediate(tREPEAT); }
+{ count(); return tPUT; }
YY_BREAK
case 45:
YY_RULE_SETUP
#line 143 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSET; }
+{ count(); return checkImmediate(tREPEAT); }
YY_BREAK
case 46:
YY_RULE_SETUP
#line 144 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSTARTS; }
+{ count(); return tSET; }
YY_BREAK
case 47:
YY_RULE_SETUP
#line 145 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTELL; }
+{ count(); return tSTARTS; }
YY_BREAK
case 48:
YY_RULE_SETUP
#line 146 "engines/director/lingo/lingo-lex.l"
+{ count(); return tTELL; }
+ YY_BREAK
+case 49:
+YY_RULE_SETUP
+#line 147 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1309,9 +1316,9 @@ YY_RULE_SETUP
return THEENTITYWITHID;
}
YY_BREAK
-case 49:
+case 50:
YY_RULE_SETUP
-#line 154 "engines/director/lingo/lingo-lex.l"
+#line 155 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1321,9 +1328,9 @@ YY_RULE_SETUP
return THEENTITYWITHID;
}
YY_BREAK
-case 50:
+case 51:
YY_RULE_SETUP
-#line 162 "engines/director/lingo/lingo-lex.l"
+#line 163 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1365,9 +1372,9 @@ YY_RULE_SETUP
warning("Unhandled the entity %s", ptr);
}
YY_BREAK
-case 51:
+case 52:
YY_RULE_SETUP
-#line 202 "engines/director/lingo/lingo-lex.l"
+#line 203 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1400,9 +1407,9 @@ YY_RULE_SETUP
return THEENTITY;
}
YY_BREAK
-case 52:
+case 53:
YY_RULE_SETUP
-#line 233 "engines/director/lingo/lingo-lex.l"
+#line 234 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1423,69 +1430,69 @@ YY_RULE_SETUP
warning("Unhandled the entity %s", ptr);
}
YY_BREAK
-case 53:
-YY_RULE_SETUP
-#line 252 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTHEN; }
- YY_BREAK
case 54:
YY_RULE_SETUP
#line 253 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTO; }
+{ count(); return tTHEN; }
YY_BREAK
case 55:
YY_RULE_SETUP
#line 254 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSPRITE; }
+{ count(); return tTO; }
YY_BREAK
case 56:
YY_RULE_SETUP
#line 255 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWITH; }
+{ count(); return tSPRITE; }
YY_BREAK
case 57:
YY_RULE_SETUP
#line 256 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWITHIN; }
+{ count(); return tWITH; }
YY_BREAK
case 58:
YY_RULE_SETUP
#line 257 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWHEN; }
+{ count(); return tWITHIN; }
YY_BREAK
case 59:
YY_RULE_SETUP
#line 258 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWHILE; }
+{ count(); return tWHEN; }
YY_BREAK
case 60:
YY_RULE_SETUP
#line 259 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWORD; }
+{ count(); return tWHILE; }
YY_BREAK
case 61:
YY_RULE_SETUP
-#line 261 "engines/director/lingo/lingo-lex.l"
-{ count(); return tNEQ; }
+#line 260 "engines/director/lingo/lingo-lex.l"
+{ count(); return tWORD; }
YY_BREAK
case 62:
YY_RULE_SETUP
#line 262 "engines/director/lingo/lingo-lex.l"
-{ count(); return tGE; }
+{ count(); return tNEQ; }
YY_BREAK
case 63:
YY_RULE_SETUP
#line 263 "engines/director/lingo/lingo-lex.l"
-{ count(); return tLE; }
+{ count(); return tGE; }
YY_BREAK
case 64:
YY_RULE_SETUP
#line 264 "engines/director/lingo/lingo-lex.l"
-{ count(); return tCONCAT; }
+{ count(); return tLE; }
YY_BREAK
case 65:
YY_RULE_SETUP
-#line 266 "engines/director/lingo/lingo-lex.l"
+#line 265 "engines/director/lingo/lingo-lex.l"
+{ count(); return tCONCAT; }
+ YY_BREAK
+case 66:
+YY_RULE_SETUP
+#line 267 "engines/director/lingo/lingo-lex.l"
{
count();
yylval.s = new Common::String(yytext);
@@ -1532,43 +1539,43 @@ YY_RULE_SETUP
return ID;
}
YY_BREAK
-case 66:
-YY_RULE_SETUP
-#line 311 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.f = atof(yytext); return FLOAT; }
- YY_BREAK
case 67:
YY_RULE_SETUP
#line 312 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.i = strtol(yytext, NULL, 10); return INT; }
+{ count(); yylval.f = atof(yytext); return FLOAT; }
YY_BREAK
case 68:
YY_RULE_SETUP
#line 313 "engines/director/lingo/lingo-lex.l"
-{ count(); return *yytext; }
+{ count(); yylval.i = strtol(yytext, NULL, 10); return INT; }
YY_BREAK
case 69:
-/* rule 69 can match eol */
YY_RULE_SETUP
#line 314 "engines/director/lingo/lingo-lex.l"
-{ return '\n'; }
+{ count(); return *yytext; }
YY_BREAK
case 70:
+/* rule 70 can match eol */
YY_RULE_SETUP
#line 315 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.s = new Common::String(&yytext[1]); yylval.s->deleteLastChar(); return STRING; }
+{ return '\n'; }
YY_BREAK
case 71:
YY_RULE_SETUP
#line 316 "engines/director/lingo/lingo-lex.l"
-{ count(); }
+{ count(); yylval.s = new Common::String(&yytext[1]); yylval.s->deleteLastChar(); return STRING; }
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 318 "engines/director/lingo/lingo-lex.l"
+#line 317 "engines/director/lingo/lingo-lex.l"
+{ count(); }
+ YY_BREAK
+case 73:
+YY_RULE_SETUP
+#line 319 "engines/director/lingo/lingo-lex.l"
ECHO;
YY_BREAK
-#line 1572 "engines/director/lingo/lingo-lex.cpp"
+#line 1579 "engines/director/lingo/lingo-lex.cpp"
case YY_STATE_EOF(INITIAL):
yyterminate();
@@ -1861,7 +1868,7 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 271 )
+ if ( yy_current_state >= 273 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -1889,11 +1896,11 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 271 )
+ if ( yy_current_state >= 273 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
- yy_is_jam = (yy_current_state == 270);
+ yy_is_jam = (yy_current_state == 272);
return yy_is_jam ? 0 : yy_current_state;
}
@@ -2531,7 +2538,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 318 "engines/director/lingo/lingo-lex.l"
+#line 319 "engines/director/lingo/lingo-lex.l"
diff --git a/engines/director/lingo/lingo-lex.l b/engines/director/lingo/lingo-lex.l
index 0f6dd5894f..a53a2f04de 100644
--- a/engines/director/lingo/lingo-lex.l
+++ b/engines/director/lingo/lingo-lex.l
@@ -84,6 +84,7 @@ whitespace [\t ]
%%
+\xC2[\r\n] { g_lingo->_linenumber++; g_lingo->_colnumber = 0; }
--[^\r\n]*
^{whitespace}+ { count(); }
[\t]+ { count(); return ' '; }