From 15d4705757f5d141383cee8814a4e915414b4c7f Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Tue, 3 Dec 2019 00:41:32 +0100 Subject: DIRECTOR: LINGO: Fix continuation symbol parsing --- engines/director/lingo/lingo-lex.cpp | 536 ++++++++++++++++++----------------- engines/director/lingo/lingo-lex.l | 2 +- 2 files changed, 270 insertions(+), 268 deletions(-) diff --git a/engines/director/lingo/lingo-lex.cpp b/engines/director/lingo/lingo-lex.cpp index bea0747a00..f17b25ec50 100644 --- a/engines/director/lingo/lingo-lex.cpp +++ b/engines/director/lingo/lingo-lex.cpp @@ -373,39 +373,39 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[285] = +static yyconst flex_int16_t yy_accept[286] = { 0, 0, 0, 77, 75, 4, 73, 73, 75, 75, 75, 72, 72, 72, 71, 72, 68, 72, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, - 69, 69, 69, 69, 69, 3, 3, 4, 73, 0, - 0, 0, 0, 0, 0, 74, 5, 67, 2, 70, - 71, 66, 64, 65, 69, 69, 69, 69, 69, 69, - 69, 69, 69, 69, 69, 69, 69, 23, 13, 69, - 69, 69, 69, 69, 69, 69, 69, 69, 36, 37, - 69, 39, 69, 69, 69, 69, 69, 69, 69, 69, - 69, 57, 69, 69, 69, 3, 3, 1, 0, 5, - - 2, 70, 69, 7, 69, 69, 69, 69, 69, 69, - 17, 69, 69, 69, 69, 0, 69, 69, 69, 69, - 69, 69, 69, 32, 69, 69, 35, 69, 69, 69, - 69, 44, 69, 46, 69, 69, 69, 69, 69, 69, - 69, 69, 0, 69, 69, 9, 69, 11, 12, 16, - 0, 17, 19, 69, 69, 69, 0, 69, 69, 26, - 27, 28, 29, 69, 69, 69, 34, 38, 40, 69, - 69, 69, 69, 69, 48, 0, 55, 61, 69, 59, - 63, 15, 6, 69, 69, 17, 17, 69, 20, 69, - 22, 69, 69, 30, 69, 33, 69, 69, 69, 69, - - 69, 69, 54, 54, 54, 54, 56, 62, 69, 0, - 8, 69, 17, 69, 21, 69, 69, 31, 69, 69, - 69, 45, 58, 47, 0, 0, 54, 54, 54, 60, - 0, 69, 18, 69, 69, 69, 69, 69, 0, 0, - 0, 0, 54, 54, 54, 14, 10, 24, 69, 69, - 42, 43, 0, 0, 0, 54, 54, 54, 69, 41, - 0, 0, 0, 0, 0, 54, 25, 53, 52, 53, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, - 50, 51, 51, 0 + 69, 69, 69, 69, 69, 75, 3, 3, 4, 73, + 0, 0, 0, 0, 0, 0, 74, 5, 67, 2, + 70, 71, 66, 64, 65, 69, 69, 69, 69, 69, + 69, 69, 69, 69, 69, 69, 69, 69, 23, 13, + 69, 69, 69, 69, 69, 69, 69, 69, 69, 36, + 37, 69, 39, 69, 69, 69, 69, 69, 69, 69, + 69, 69, 57, 69, 69, 69, 1, 3, 3, 0, + + 5, 2, 70, 69, 7, 69, 69, 69, 69, 69, + 69, 17, 69, 69, 69, 69, 0, 69, 69, 69, + 69, 69, 69, 69, 32, 69, 69, 35, 69, 69, + 69, 69, 44, 69, 46, 69, 69, 69, 69, 69, + 69, 69, 69, 0, 69, 69, 9, 69, 11, 12, + 16, 0, 17, 19, 69, 69, 69, 0, 69, 69, + 26, 27, 28, 29, 69, 69, 69, 34, 38, 40, + 69, 69, 69, 69, 69, 48, 0, 55, 61, 69, + 59, 63, 15, 6, 69, 69, 17, 17, 69, 20, + 69, 22, 69, 69, 30, 69, 33, 69, 69, 69, + + 69, 69, 69, 54, 54, 54, 54, 56, 62, 69, + 0, 8, 69, 17, 69, 21, 69, 69, 31, 69, + 69, 69, 45, 58, 47, 0, 0, 54, 54, 54, + 60, 0, 69, 18, 69, 69, 69, 69, 69, 0, + 0, 0, 0, 54, 54, 54, 14, 10, 24, 69, + 69, 42, 43, 0, 0, 0, 54, 54, 54, 69, + 41, 0, 0, 0, 0, 0, 54, 25, 53, 52, + 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 49, 50, 51, 51, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -451,81 +451,81 @@ static yyconst flex_int32_t yy_meta[66] = 5, 5, 5, 5, 1 } ; -static yyconst flex_int16_t yy_base[296] = +static yyconst flex_int16_t yy_base[297] = { 0, - 0, 64, 190, 750, 68, 72, 76, 80, 172, 0, - 750, 152, 121, 55, 71, 750, 106, 66, 68, 66, + 0, 64, 190, 760, 68, 72, 76, 80, 172, 0, + 760, 152, 121, 55, 71, 760, 106, 66, 68, 66, 62, 72, 95, 73, 0, 107, 80, 123, 117, 117, - 122, 85, 154, 138, 156, 191, 199, 212, 750, 216, - 104, 186, 220, 75, 103, 750, 0, 750, 0, 91, - 144, 750, 750, 750, 0, 82, 131, 161, 194, 114, - 197, 193, 192, 203, 210, 213, 203, 89, 0, 204, - 219, 205, 213, 225, 211, 240, 208, 213, 0, 0, - 228, 0, 244, 252, 217, 237, 240, 245, 262, 254, - 262, 0, 263, 252, 257, 291, 313, 750, 263, 0, - - 0, 85, 279, 0, 273, 274, 275, 291, 290, 299, - 327, 287, 288, 296, 308, 328, 293, 314, 310, 315, - 310, 309, 315, 0, 324, 318, 0, 325, 315, 319, - 326, 0, 329, 0, 333, 334, 342, 368, 342, 345, - 335, 356, 361, 352, 353, 0, 371, 0, 0, 0, - 240, 0, 0, 360, 371, 377, 368, 382, 369, 0, - 0, 0, 0, 373, 374, 379, 0, 0, 388, 381, - 387, 394, 380, 381, 0, 418, 194, 0, 391, 393, - 0, 427, 0, 413, 410, 0, 0, 405, 0, 414, - 750, 413, 410, 0, 426, 0, 428, 419, 417, 416, - - 432, 422, 479, 480, 481, 490, 454, 0, 434, 491, - 0, 435, 0, 430, 0, 458, 477, 0, 480, 465, - 468, 0, 0, 0, 509, 486, 528, 507, 545, 0, - 488, 470, 0, 497, 507, 513, 502, 502, 544, 531, - 530, 528, 565, 574, 578, 750, 0, 0, 522, 531, - 0, 0, 526, 503, 537, 585, 589, 600, 535, 0, - 571, 599, 576, 606, 610, 618, 0, 750, 601, 750, - 614, 585, 629, 596, 637, 645, 647, 651, 607, 656, - 661, 668, 669, 750, 705, 707, 710, 713, 719, 724, - 729, 732, 737, 739, 744 + 122, 85, 154, 138, 156, 104, 191, 199, 212, 760, + 216, 153, 186, 220, 75, 103, 760, 0, 760, 0, + 91, 185, 760, 760, 760, 0, 82, 131, 161, 194, + 114, 197, 193, 192, 203, 210, 213, 203, 89, 0, + 204, 219, 205, 213, 225, 211, 241, 208, 213, 0, + 0, 228, 0, 243, 252, 217, 237, 240, 246, 263, + 256, 263, 0, 266, 254, 257, 760, 291, 315, 263, + + 0, 0, 85, 279, 0, 274, 275, 275, 280, 282, + 294, 325, 287, 288, 296, 311, 331, 296, 321, 309, + 318, 310, 311, 321, 0, 324, 317, 0, 324, 317, + 321, 328, 0, 339, 0, 337, 336, 344, 384, 343, + 346, 339, 358, 358, 351, 358, 0, 375, 0, 0, + 0, 240, 0, 0, 364, 377, 382, 371, 385, 372, + 0, 0, 0, 0, 376, 377, 388, 0, 0, 393, + 386, 393, 399, 384, 385, 0, 440, 418, 0, 405, + 403, 0, 444, 0, 411, 408, 0, 0, 405, 0, + 413, 760, 418, 414, 0, 430, 0, 435, 422, 423, + + 424, 439, 429, 463, 476, 487, 494, 466, 0, 437, + 498, 0, 453, 0, 444, 0, 469, 474, 0, 483, + 469, 472, 0, 0, 0, 510, 490, 512, 532, 548, + 0, 494, 475, 0, 505, 513, 517, 494, 504, 554, + 530, 532, 535, 571, 572, 578, 760, 0, 0, 527, + 539, 0, 0, 532, 519, 543, 591, 592, 607, 553, + 0, 557, 608, 577, 613, 614, 619, 0, 760, 620, + 760, 630, 598, 634, 604, 635, 645, 652, 661, 605, + 669, 673, 674, 680, 760, 715, 717, 720, 723, 729, + 734, 739, 742, 747, 749, 754 } ; -static yyconst flex_int16_t yy_def[296] = +static yyconst flex_int16_t yy_def[297] = { 0, - 284, 1, 284, 284, 284, 284, 284, 284, 285, 286, - 284, 284, 284, 284, 284, 284, 284, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 285, 284, 288, 284, 289, 284, - 284, 284, 284, 284, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 284, 284, 284, 284, 288, - - 289, 284, 287, 287, 287, 287, 287, 287, 287, 287, - 290, 287, 287, 287, 287, 284, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 284, 287, 287, 287, 287, 287, 287, 287, - 291, 292, 287, 287, 287, 287, 284, 287, 287, 287, - 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 293, 287, 287, 287, 287, - 287, 284, 287, 287, 287, 294, 292, 287, 287, 287, - 284, 287, 287, 287, 287, 287, 287, 287, 287, 287, - - 287, 287, 293, 293, 293, 293, 284, 287, 287, 284, - 287, 287, 294, 287, 287, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 284, 284, 293, 293, 293, 287, - 284, 287, 287, 287, 287, 287, 287, 287, 284, 284, - 284, 284, 293, 293, 293, 284, 287, 287, 287, 287, - 287, 287, 284, 284, 284, 293, 293, 293, 287, 287, - 284, 295, 284, 284, 284, 293, 287, 284, 295, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 295, - 295, 284, 295, 0, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284 + 285, 1, 285, 285, 285, 285, 285, 285, 286, 287, + 285, 285, 285, 285, 285, 285, 285, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 286, 285, 289, 285, 290, + 285, 285, 285, 285, 285, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 285, 285, 285, 285, + + 289, 290, 285, 288, 288, 288, 288, 288, 288, 288, + 288, 291, 288, 288, 288, 288, 285, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 285, 288, 288, 288, 288, 288, 288, + 288, 292, 293, 288, 288, 288, 288, 285, 288, 288, + 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 294, 288, 288, 288, + 288, 288, 285, 288, 288, 288, 295, 293, 288, 288, + 288, 285, 288, 288, 288, 288, 288, 288, 288, 288, + + 288, 288, 288, 294, 294, 294, 294, 285, 288, 288, + 285, 288, 288, 295, 288, 288, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 285, 285, 294, 294, 294, + 288, 285, 288, 288, 288, 288, 288, 288, 288, 285, + 285, 285, 285, 294, 294, 294, 285, 288, 288, 288, + 288, 288, 288, 285, 285, 285, 294, 294, 294, 288, + 288, 285, 296, 285, 285, 285, 294, 288, 285, 296, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 296, 296, 285, 296, 0, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285 } ; -static yyconst flex_int16_t yy_nxt[816] = +static yyconst flex_int16_t yy_nxt[826] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 11, 13, 4, 14, 15, 16, 17, 18, 19, 20, 21, @@ -533,93 +533,94 @@ static yyconst flex_int16_t yy_nxt[816] = 31, 25, 32, 33, 34, 25, 25, 35, 25, 25, 25, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 25, 32, 33, 34, 25, - 25, 35, 25, 25, 4, 36, 50, 51, 37, 38, - 39, 39, 40, 42, 43, 43, 42, 42, 43, 43, - 42, 40, 39, 39, 40, 52, 53, 56, 58, 59, - 116, 61, 44, 116, 57, 60, 44, 102, 62, 67, - - 63, 99, 68, 102, 72, 86, 98, 98, 46, 73, - 64, 65, 56, 58, 59, 61, 103, 44, 57, 60, - 54, 44, 62, 67, 63, 99, 68, 66, 69, 72, - 86, 49, 41, 73, 64, 70, 65, 77, 79, 74, - 103, 71, 107, 75, 41, 80, 78, 81, 83, 82, - 104, 66, 76, 69, 84, 50, 51, 85, 90, 70, - 48, 91, 77, 79, 74, 71, 107, 92, 75, 80, - 78, 81, 83, 82, 87, 104, 76, 46, 84, 93, - 94, 85, 105, 90, 88, 95, 91, 42, 89, 284, - 42, 92, 96, 39, 39, 97, 207, 207, 284, 87, - - 97, 39, 39, 97, 93, 94, 44, 105, 88, 95, - 106, 111, 89, 38, 39, 39, 40, 40, 39, 39, - 40, 42, 43, 43, 42, 108, 110, 112, 113, 114, - 284, 44, 115, 120, 109, 106, 111, 117, 118, 119, - 44, 151, 121, 122, 151, 123, 126, 127, 128, 108, - 110, 132, 112, 113, 114, 41, 115, 120, 109, 124, - 129, 117, 118, 41, 119, 44, 121, 133, 122, 123, - 126, 127, 130, 128, 134, 132, 125, 135, 136, 284, - 137, 131, 138, 139, 124, 129, 141, 140, 284, 142, - 284, 133, 96, 39, 39, 97, 143, 130, 134, 144, - - 125, 135, 145, 136, 137, 131, 146, 138, 139, 147, - 141, 148, 140, 142, 97, 39, 39, 97, 149, 150, - 143, 153, 154, 155, 144, 156, 145, 158, 151, 116, - 146, 151, 116, 147, 159, 162, 148, 161, 165, 55, - 163, 164, 149, 160, 150, 153, 154, 155, 166, 172, - 156, 158, 167, 168, 169, 170, 171, 173, 180, 159, - 162, 161, 157, 165, 163, 164, 174, 160, 175, 176, - 178, 179, 176, 166, 172, 181, 167, 168, 169, 170, - 171, 182, 173, 180, 183, 184, 157, 185, 284, 188, - 174, 189, 175, 190, 178, 179, 177, 191, 192, 196, - - 181, 193, 194, 195, 197, 198, 182, 199, 183, 184, - 200, 208, 185, 188, 201, 202, 189, 209, 190, 176, - 177, 191, 176, 192, 196, 193, 194, 195, 210, 197, - 198, 210, 199, 211, 212, 200, 208, 214, 201, 202, - 215, 216, 209, 217, 204, 218, 219, 284, 220, 221, - 222, 205, 223, 284, 206, 224, 207, 207, 211, 212, - 284, 214, 230, 232, 215, 216, 284, 217, 204, 233, - 218, 219, 220, 221, 222, 205, 234, 223, 206, 224, - 225, 225, 225, 225, 225, 225, 230, 232, 226, 226, - 226, 225, 210, 233, 225, 210, 227, 235, 236, 226, - - 237, 234, 238, 247, 262, 240, 229, 262, 225, 246, - 239, 225, 228, 239, 284, 231, 226, 248, 284, 284, - 242, 227, 235, 236, 237, 249, 238, 247, 240, 225, - 240, 229, 225, 250, 246, 251, 228, 226, 241, 244, - 231, 252, 248, 242, 242, 239, 225, 253, 239, 225, - 249, 254, 255, 240, 226, 284, 259, 260, 250, 251, - 261, 243, 241, 244, 263, 252, 225, 242, 267, 225, - 284, 245, 253, 241, 226, 225, 254, 255, 225, 225, - 259, 260, 225, 226, 261, 243, 264, 226, 263, 264, - 265, 268, 267, 265, 226, 245, 270, 241, 226, 256, - - 262, 225, 284, 262, 225, 284, 276, 271, 257, 226, - 271, 273, 284, 258, 273, 271, 268, 277, 271, 275, - 266, 270, 275, 256, 284, 240, 284, 226, 282, 240, - 273, 276, 257, 273, 284, 272, 284, 258, 278, 274, - 242, 278, 277, 272, 242, 266, 280, 284, 281, 280, - 240, 281, 278, 282, 240, 278, 240, 280, 274, 272, - 280, 284, 281, 274, 242, 281, 279, 272, 242, 283, - 283, 242, 283, 283, 284, 284, 284, 284, 284, 284, - 279, 240, 274, 284, 284, 284, 284, 284, 284, 284, - 279, 284, 284, 284, 284, 242, 284, 284, 284, 284, - - 284, 284, 284, 284, 279, 45, 45, 284, 45, 45, - 45, 47, 47, 55, 55, 55, 100, 100, 100, 101, - 101, 284, 101, 101, 101, 152, 284, 152, 152, 152, - 186, 284, 284, 186, 186, 187, 187, 187, 203, 284, - 284, 203, 213, 213, 213, 269, 284, 284, 269, 3, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284 + 25, 35, 25, 25, 36, 37, 51, 52, 38, 39, + 40, 40, 41, 43, 44, 44, 43, 43, 44, 44, + 43, 41, 40, 40, 41, 53, 54, 57, 59, 60, + 117, 62, 45, 117, 58, 61, 45, 103, 63, 68, + + 64, 100, 69, 103, 73, 87, 97, 97, 47, 74, + 65, 66, 57, 59, 60, 62, 104, 45, 58, 61, + 55, 45, 63, 68, 64, 100, 69, 67, 70, 73, + 87, 50, 42, 74, 65, 71, 66, 78, 80, 75, + 104, 72, 108, 76, 42, 81, 79, 82, 84, 83, + 105, 67, 77, 70, 85, 97, 97, 86, 91, 71, + 49, 92, 78, 80, 75, 72, 108, 93, 76, 81, + 79, 82, 84, 83, 88, 105, 77, 47, 85, 94, + 95, 86, 106, 91, 89, 96, 92, 43, 90, 285, + 43, 93, 98, 40, 40, 99, 51, 52, 285, 88, + + 99, 40, 40, 99, 94, 95, 45, 106, 89, 96, + 107, 112, 90, 39, 40, 40, 41, 41, 40, 40, + 41, 43, 44, 44, 43, 109, 111, 113, 114, 115, + 285, 45, 116, 121, 110, 107, 112, 118, 119, 120, + 45, 152, 122, 123, 152, 124, 127, 128, 129, 109, + 111, 133, 113, 114, 115, 42, 116, 121, 110, 130, + 125, 118, 119, 42, 120, 45, 122, 134, 123, 124, + 127, 128, 131, 129, 135, 133, 42, 126, 136, 137, + 42, 132, 138, 139, 130, 125, 140, 285, 142, 143, + 141, 134, 98, 40, 40, 99, 144, 131, 135, 145, + + 149, 126, 136, 146, 137, 132, 138, 147, 139, 148, + 150, 140, 142, 143, 151, 141, 99, 40, 40, 99, + 144, 154, 155, 156, 145, 149, 152, 146, 157, 152, + 159, 147, 117, 148, 150, 117, 162, 56, 163, 151, + 164, 160, 285, 165, 166, 154, 155, 156, 167, 285, + 161, 168, 169, 157, 159, 42, 170, 171, 172, 173, + 162, 174, 181, 163, 164, 158, 160, 165, 175, 166, + 176, 179, 180, 167, 161, 168, 169, 182, 183, 42, + 170, 171, 172, 184, 173, 177, 174, 181, 177, 158, + 185, 186, 175, 189, 176, 179, 180, 190, 191, 285, + + 192, 193, 182, 183, 194, 195, 196, 184, 197, 198, + 199, 285, 178, 200, 185, 201, 186, 189, 202, 203, + 208, 208, 190, 191, 192, 209, 193, 210, 194, 195, + 196, 212, 213, 197, 198, 199, 178, 215, 200, 216, + 201, 177, 202, 203, 177, 211, 217, 218, 211, 219, + 209, 221, 210, 220, 285, 222, 212, 213, 223, 224, + 285, 215, 225, 216, 226, 231, 205, 226, 208, 208, + 217, 218, 227, 206, 219, 221, 207, 226, 220, 222, + 226, 233, 223, 234, 224, 227, 225, 235, 226, 231, + 205, 226, 228, 285, 236, 226, 227, 206, 226, 211, + + 207, 237, 211, 227, 238, 233, 239, 234, 248, 241, + 230, 240, 235, 226, 240, 247, 226, 228, 229, 236, + 263, 227, 232, 263, 243, 249, 237, 252, 238, 241, + 239, 250, 248, 226, 241, 230, 226, 251, 285, 242, + 247, 227, 229, 253, 243, 244, 254, 232, 243, 226, + 249, 252, 226, 255, 241, 240, 250, 227, 240, 256, + 285, 260, 251, 242, 245, 261, 262, 253, 243, 244, + 264, 254, 226, 226, 246, 226, 226, 269, 255, 226, + 227, 227, 226, 242, 256, 260, 268, 227, 245, 261, + 262, 285, 265, 266, 264, 265, 266, 271, 246, 285, + + 227, 227, 269, 285, 285, 257, 258, 242, 226, 263, + 268, 226, 263, 259, 272, 274, 227, 272, 274, 277, + 276, 285, 271, 276, 285, 278, 283, 267, 227, 257, + 258, 272, 241, 241, 272, 274, 279, 259, 274, 279, + 285, 285, 273, 275, 277, 285, 281, 243, 243, 281, + 278, 283, 267, 282, 241, 285, 282, 241, 241, 273, + 285, 285, 279, 275, 280, 279, 273, 275, 285, 243, + 281, 243, 243, 281, 282, 284, 285, 282, 284, 241, + 285, 284, 285, 273, 284, 285, 285, 275, 280, 285, + 280, 285, 285, 243, 285, 285, 285, 285, 285, 285, + + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 280, 46, 46, 285, 46, 46, + 46, 48, 48, 56, 56, 56, 101, 101, 101, 102, + 102, 285, 102, 102, 102, 153, 285, 153, 153, 153, + 187, 285, 285, 187, 187, 188, 188, 188, 204, 285, + 285, 204, 214, 214, 214, 270, 285, 285, 270, 3, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285 } ; -static yyconst flex_int16_t yy_chk[816] = +static yyconst flex_int16_t yy_chk[826] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -630,87 +631,88 @@ static yyconst flex_int16_t yy_chk[816] = 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, 18, 19, 20, - 68, 21, 6, 68, 18, 20, 7, 102, 22, 24, + 69, 21, 6, 69, 18, 20, 7, 103, 22, 24, - 22, 44, 24, 50, 27, 32, 41, 41, 45, 27, - 22, 23, 18, 19, 20, 21, 56, 6, 18, 20, - 17, 7, 22, 24, 22, 44, 24, 23, 26, 27, + 22, 45, 24, 51, 27, 32, 36, 36, 46, 27, + 22, 23, 18, 19, 20, 21, 57, 6, 18, 20, + 17, 7, 22, 24, 22, 45, 24, 23, 26, 27, 32, 13, 5, 27, 22, 26, 23, 29, 30, 28, - 56, 26, 60, 28, 8, 30, 29, 30, 31, 30, - 57, 23, 28, 26, 31, 51, 51, 31, 34, 26, - 12, 34, 29, 30, 28, 26, 60, 34, 28, 30, - 29, 30, 31, 30, 33, 57, 28, 9, 31, 35, - 35, 31, 58, 34, 33, 35, 34, 42, 33, 3, - 42, 34, 36, 36, 36, 36, 177, 177, 0, 33, - - 37, 37, 37, 37, 35, 35, 42, 58, 33, 35, - 59, 63, 33, 38, 38, 38, 38, 40, 40, 40, - 40, 43, 43, 43, 43, 61, 62, 64, 65, 66, - 0, 42, 67, 72, 61, 59, 63, 70, 70, 71, - 43, 151, 73, 74, 151, 75, 77, 78, 81, 61, - 62, 85, 64, 65, 66, 36, 67, 72, 61, 76, - 83, 70, 70, 37, 71, 43, 73, 86, 74, 75, - 77, 78, 84, 81, 87, 85, 76, 88, 89, 0, - 90, 84, 91, 93, 76, 83, 94, 93, 0, 95, - 0, 86, 96, 96, 96, 96, 99, 84, 87, 103, - - 76, 88, 105, 89, 90, 84, 106, 91, 93, 107, - 94, 108, 93, 95, 97, 97, 97, 97, 109, 110, - 99, 112, 113, 114, 103, 115, 105, 117, 111, 116, - 106, 111, 116, 107, 118, 120, 108, 119, 123, 111, - 121, 122, 109, 118, 110, 112, 113, 114, 125, 133, - 115, 117, 126, 128, 129, 130, 131, 135, 141, 118, - 120, 119, 116, 123, 121, 122, 136, 118, 137, 138, - 139, 140, 138, 125, 133, 142, 126, 128, 129, 130, - 131, 143, 135, 141, 144, 145, 116, 147, 0, 154, - 136, 155, 137, 156, 139, 140, 138, 157, 158, 166, - - 142, 159, 164, 165, 169, 170, 143, 171, 144, 145, - 172, 179, 147, 154, 173, 174, 155, 180, 156, 176, - 138, 157, 176, 158, 166, 159, 164, 165, 182, 169, - 170, 182, 171, 184, 185, 172, 179, 188, 173, 174, - 190, 192, 180, 193, 176, 195, 197, 0, 198, 199, - 200, 176, 201, 0, 176, 202, 207, 207, 184, 185, - 0, 188, 209, 212, 190, 192, 0, 193, 176, 214, - 195, 197, 198, 199, 200, 176, 216, 201, 176, 202, - 203, 204, 205, 203, 204, 205, 209, 212, 203, 204, - 205, 206, 210, 214, 206, 210, 204, 217, 219, 206, - - 220, 216, 221, 232, 254, 226, 206, 254, 228, 231, - 225, 228, 205, 225, 0, 210, 228, 234, 0, 0, - 226, 204, 217, 219, 220, 235, 221, 232, 225, 227, - 226, 206, 227, 236, 231, 237, 205, 227, 225, 228, - 210, 238, 234, 225, 226, 239, 229, 240, 239, 229, - 235, 241, 242, 225, 229, 0, 249, 250, 236, 237, - 253, 227, 225, 228, 255, 238, 243, 225, 259, 243, - 0, 229, 240, 239, 243, 244, 241, 242, 244, 245, - 249, 250, 245, 244, 253, 227, 256, 245, 255, 256, - 257, 261, 259, 257, 256, 229, 263, 239, 257, 243, - - 262, 258, 269, 262, 258, 269, 272, 264, 244, 258, - 264, 265, 0, 245, 265, 271, 261, 274, 271, 266, - 258, 263, 266, 243, 0, 264, 0, 266, 279, 265, - 273, 272, 244, 273, 0, 264, 0, 245, 275, 265, - 264, 275, 274, 271, 265, 258, 276, 0, 277, 276, - 264, 277, 278, 279, 265, 278, 275, 280, 273, 264, - 280, 0, 281, 265, 264, 281, 275, 271, 265, 282, - 283, 275, 282, 283, 0, 0, 0, 0, 0, 0, - 278, 275, 273, 0, 0, 0, 0, 0, 0, 0, - 275, 0, 0, 0, 0, 275, 0, 0, 0, 0, - - 0, 0, 0, 0, 278, 285, 285, 0, 285, 285, - 285, 286, 286, 287, 287, 287, 288, 288, 288, 289, - 289, 0, 289, 289, 289, 290, 0, 290, 290, 290, - 291, 0, 0, 291, 291, 292, 292, 292, 293, 0, - 0, 293, 294, 294, 294, 295, 0, 0, 295, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 284, 284, 284 + 57, 26, 61, 28, 8, 30, 29, 30, 31, 30, + 58, 23, 28, 26, 31, 42, 42, 31, 34, 26, + 12, 34, 29, 30, 28, 26, 61, 34, 28, 30, + 29, 30, 31, 30, 33, 58, 28, 9, 31, 35, + 35, 31, 59, 34, 33, 35, 34, 43, 33, 3, + 43, 34, 37, 37, 37, 37, 52, 52, 0, 33, + + 38, 38, 38, 38, 35, 35, 43, 59, 33, 35, + 60, 64, 33, 39, 39, 39, 39, 41, 41, 41, + 41, 44, 44, 44, 44, 62, 63, 65, 66, 67, + 0, 43, 68, 73, 62, 60, 64, 71, 71, 72, + 44, 152, 74, 75, 152, 76, 78, 79, 82, 62, + 63, 86, 65, 66, 67, 37, 68, 73, 62, 84, + 77, 71, 71, 38, 72, 44, 74, 87, 75, 76, + 78, 79, 85, 82, 88, 86, 39, 77, 89, 90, + 41, 85, 91, 92, 84, 77, 94, 0, 95, 96, + 94, 87, 98, 98, 98, 98, 100, 85, 88, 104, + + 109, 77, 89, 106, 90, 85, 91, 107, 92, 108, + 110, 94, 95, 96, 111, 94, 99, 99, 99, 99, + 100, 113, 114, 115, 104, 109, 112, 106, 116, 112, + 118, 107, 117, 108, 110, 117, 120, 112, 121, 111, + 122, 119, 0, 123, 124, 113, 114, 115, 126, 0, + 119, 127, 129, 116, 118, 98, 130, 131, 132, 134, + 120, 136, 142, 121, 122, 117, 119, 123, 137, 124, + 138, 140, 141, 126, 119, 127, 129, 143, 144, 99, + 130, 131, 132, 145, 134, 139, 136, 142, 139, 117, + 146, 148, 137, 155, 138, 140, 141, 156, 157, 0, + + 158, 159, 143, 144, 160, 165, 166, 145, 167, 170, + 171, 0, 139, 172, 146, 173, 148, 155, 174, 175, + 178, 178, 156, 157, 158, 180, 159, 181, 160, 165, + 166, 185, 186, 167, 170, 171, 139, 189, 172, 191, + 173, 177, 174, 175, 177, 183, 193, 194, 183, 196, + 180, 199, 181, 198, 0, 200, 185, 186, 201, 202, + 0, 189, 203, 191, 204, 210, 177, 204, 208, 208, + 193, 194, 204, 177, 196, 199, 177, 205, 198, 200, + 205, 213, 201, 215, 202, 205, 203, 217, 206, 210, + 177, 206, 205, 0, 218, 207, 206, 177, 207, 211, + + 177, 220, 211, 207, 221, 213, 222, 215, 233, 227, + 207, 226, 217, 228, 226, 232, 228, 205, 206, 218, + 255, 228, 211, 255, 227, 235, 220, 238, 221, 226, + 222, 236, 233, 229, 227, 207, 229, 237, 0, 226, + 232, 229, 206, 239, 226, 228, 241, 211, 227, 230, + 235, 238, 230, 242, 226, 240, 236, 230, 240, 243, + 0, 250, 237, 226, 229, 251, 254, 239, 226, 228, + 256, 241, 244, 245, 230, 244, 245, 262, 242, 246, + 244, 245, 246, 240, 243, 250, 260, 246, 229, 251, + 254, 0, 257, 258, 256, 257, 258, 264, 230, 0, + + 257, 258, 262, 0, 0, 244, 245, 240, 259, 263, + 260, 259, 263, 246, 265, 266, 259, 265, 266, 273, + 267, 270, 264, 267, 270, 275, 280, 259, 267, 244, + 245, 272, 265, 266, 272, 274, 276, 246, 274, 276, + 0, 0, 265, 266, 273, 0, 277, 265, 266, 277, + 275, 280, 259, 278, 276, 0, 278, 265, 266, 272, + 0, 0, 279, 274, 276, 279, 265, 266, 0, 276, + 281, 265, 266, 281, 282, 283, 0, 282, 283, 276, + 0, 284, 0, 272, 284, 0, 0, 274, 276, 0, + 279, 0, 0, 276, 0, 0, 0, 0, 0, 0, + + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 279, 286, 286, 0, 286, 286, + 286, 287, 287, 288, 288, 288, 289, 289, 289, 290, + 290, 0, 290, 290, 290, 291, 0, 291, 291, 291, + 292, 0, 0, 292, 292, 293, 293, 293, 294, 0, + 0, 294, 295, 295, 295, 296, 0, 0, 296, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 285, 285, 285 } ; static yy_state_type yy_last_accepting_state; @@ -790,7 +792,7 @@ static int checkImmediate(int token) { return token; } -#line 794 "engines/director/lingo/lingo-lex.cpp" +#line 796 "engines/director/lingo/lingo-lex.cpp" #define INITIAL 0 @@ -976,7 +978,7 @@ YY_DECL #line 78 "engines/director/lingo/lingo-lex.l" -#line 980 "engines/director/lingo/lingo-lex.cpp" +#line 982 "engines/director/lingo/lingo-lex.cpp" if ( !(yy_init) ) { @@ -1030,13 +1032,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 >= 285 ) + if ( yy_current_state >= 286 ) 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_current_state != 284 ); + while ( yy_current_state != 285 ); yy_cp = (yy_last_accepting_cpos); yy_current_state = (yy_last_accepting_state); @@ -1602,7 +1604,7 @@ YY_RULE_SETUP #line 321 "engines/director/lingo/lingo-lex.l" ECHO; YY_BREAK -#line 1606 "engines/director/lingo/lingo-lex.cpp" +#line 1608 "engines/director/lingo/lingo-lex.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -1896,7 +1898,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 >= 285 ) + if ( yy_current_state >= 286 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -1924,11 +1926,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 >= 285 ) + if ( yy_current_state >= 286 ) 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 == 284); + yy_is_jam = (yy_current_state == 285); return yy_is_jam ? 0 : yy_current_state; } diff --git a/engines/director/lingo/lingo-lex.l b/engines/director/lingo/lingo-lex.l index fb689d5764..f813bed17f 100644 --- a/engines/director/lingo/lingo-lex.l +++ b/engines/director/lingo/lingo-lex.l @@ -77,7 +77,7 @@ whitespace [\t ] %% -{whitespace}\xC2[\r\n] { g_lingo->_linenumber++; g_lingo->_colnumber = 0; } +{whitespace}*\xC2[\r\n] { g_lingo->_linenumber++; g_lingo->_colnumber = 0; } --[^\r\n]* ^{whitespace}+ { count(); } [\t]+ { count(); return ' '; } -- cgit v1.2.3