DIRECTOR: LINGO: Speciy lexer output file in the sources

This commit is contained in:
Eugene Sandulenko 2020-01-15 00:20:59 +01:00
parent 30221bc2ba
commit 990a3b06ec
3 changed files with 82 additions and 80 deletions

View File

@ -809,7 +809,7 @@ char *yytext;
*
*/
#define YY_NO_INPUT 1
#line 29 "engines/director/lingo/lingo-lex.l"
#line 31 "engines/director/lingo/lingo-lex.l"
#define YY_NO_UNISTD_H
#define FORBIDDEN_SYMBOL_ALLOW_ALL
@ -1041,7 +1041,7 @@ YY_DECL
register char *yy_cp, *yy_bp;
register int yy_act;
#line 87 "engines/director/lingo/lingo-lex.l"
#line 89 "engines/director/lingo/lingo-lex.l"
#line 1048 "engines/director/lingo/lingo-lex.cpp"
@ -1127,82 +1127,82 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
/* rule 1 can match eol */
YY_RULE_SETUP
#line 89 "engines/director/lingo/lingo-lex.l"
#line 91 "engines/director/lingo/lingo-lex.l"
{ count(); }
YY_BREAK
case 2:
YY_RULE_SETUP
#line 90 "engines/director/lingo/lingo-lex.l"
#line 92 "engines/director/lingo/lingo-lex.l"
YY_BREAK
case 3:
YY_RULE_SETUP
#line 91 "engines/director/lingo/lingo-lex.l"
#line 93 "engines/director/lingo/lingo-lex.l"
{ count(); }
YY_BREAK
case 4:
YY_RULE_SETUP
#line 92 "engines/director/lingo/lingo-lex.l"
#line 94 "engines/director/lingo/lingo-lex.l"
{ count(); return ' '; }
YY_BREAK
case 5:
YY_RULE_SETUP
#line 94 "engines/director/lingo/lingo-lex.l"
#line 96 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.s = new Common::String(yytext); return SYMBOL; } // D3
YY_BREAK
case 6:
YY_RULE_SETUP
#line 96 "engines/director/lingo/lingo-lex.l"
#line 98 "engines/director/lingo/lingo-lex.l"
{ count(); return tAFTER; } // D3
YY_BREAK
case 7:
YY_RULE_SETUP
#line 97 "engines/director/lingo/lingo-lex.l"
#line 99 "engines/director/lingo/lingo-lex.l"
{ count(); return tAND; }
YY_BREAK
case 8:
YY_RULE_SETUP
#line 98 "engines/director/lingo/lingo-lex.l"
#line 100 "engines/director/lingo/lingo-lex.l"
{ count(); return tBEFORE; } // D3
YY_BREAK
case 9:
YY_RULE_SETUP
#line 99 "engines/director/lingo/lingo-lex.l"
#line 101 "engines/director/lingo/lingo-lex.l"
{ count(); return tCHAR; } // D3
YY_BREAK
case 10:
YY_RULE_SETUP
#line 100 "engines/director/lingo/lingo-lex.l"
#line 102 "engines/director/lingo/lingo-lex.l"
{ count(); return tCONTAINS; }
YY_BREAK
case 11:
YY_RULE_SETUP
#line 101 "engines/director/lingo/lingo-lex.l"
#line 103 "engines/director/lingo/lingo-lex.l"
{ count(); return tDONE; }
YY_BREAK
case 12:
YY_RULE_SETUP
#line 102 "engines/director/lingo/lingo-lex.l"
#line 104 "engines/director/lingo/lingo-lex.l"
{ count(); return tDOWN; }
YY_BREAK
case 13:
YY_RULE_SETUP
#line 103 "engines/director/lingo/lingo-lex.l"
#line 105 "engines/director/lingo/lingo-lex.l"
{ count(); return tIF; }
YY_BREAK
case 14:
YY_RULE_SETUP
#line 104 "engines/director/lingo/lingo-lex.l"
#line 106 "engines/director/lingo/lingo-lex.l"
{ count(); return tELSIF; }
YY_BREAK
case 15:
YY_RULE_SETUP
#line 105 "engines/director/lingo/lingo-lex.l"
#line 107 "engines/director/lingo/lingo-lex.l"
{ count(); return tELSE; }
YY_BREAK
case 16:
YY_RULE_SETUP
#line 106 "engines/director/lingo/lingo-lex.l"
#line 108 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1224,72 +1224,72 @@ YY_RULE_SETUP
YY_BREAK
case 17:
YY_RULE_SETUP
#line 124 "engines/director/lingo/lingo-lex.l"
#line 126 "engines/director/lingo/lingo-lex.l"
{ count(); return tFACTORY; }
YY_BREAK
case 18:
YY_RULE_SETUP
#line 125 "engines/director/lingo/lingo-lex.l"
#line 127 "engines/director/lingo/lingo-lex.l"
{ count(); return tEXIT; }
YY_BREAK
case 19:
YY_RULE_SETUP
#line 126 "engines/director/lingo/lingo-lex.l"
#line 128 "engines/director/lingo/lingo-lex.l"
{ count(); return tGLOBAL; }
YY_BREAK
case 20:
YY_RULE_SETUP
#line 127 "engines/director/lingo/lingo-lex.l"
#line 129 "engines/director/lingo/lingo-lex.l"
{ count(); return tGO; }
YY_BREAK
case 21:
YY_RULE_SETUP
#line 128 "engines/director/lingo/lingo-lex.l"
#line 130 "engines/director/lingo/lingo-lex.l"
{ count(); return tGO; }
YY_BREAK
case 22:
YY_RULE_SETUP
#line 129 "engines/director/lingo/lingo-lex.l"
#line 131 "engines/director/lingo/lingo-lex.l"
{ count(); return tGO; }
YY_BREAK
case 23:
YY_RULE_SETUP
#line 130 "engines/director/lingo/lingo-lex.l"
#line 132 "engines/director/lingo/lingo-lex.l"
{ count(); return tINSTANCE; }
YY_BREAK
case 24:
YY_RULE_SETUP
#line 131 "engines/director/lingo/lingo-lex.l"
#line 133 "engines/director/lingo/lingo-lex.l"
{ count(); return tINTERSECTS; }
YY_BREAK
case 25:
YY_RULE_SETUP
#line 132 "engines/director/lingo/lingo-lex.l"
#line 134 "engines/director/lingo/lingo-lex.l"
{ count(); return tINTO; }
YY_BREAK
case 26:
YY_RULE_SETUP
#line 133 "engines/director/lingo/lingo-lex.l"
#line 135 "engines/director/lingo/lingo-lex.l"
{ count(); return tITEM; }
YY_BREAK
case 27:
YY_RULE_SETUP
#line 134 "engines/director/lingo/lingo-lex.l"
#line 136 "engines/director/lingo/lingo-lex.l"
{ count(); return tLINE; }
YY_BREAK
case 28:
YY_RULE_SETUP
#line 135 "engines/director/lingo/lingo-lex.l"
#line 137 "engines/director/lingo/lingo-lex.l"
{ count(); return checkImmediate(tLOOP); }
YY_BREAK
case 29:
YY_RULE_SETUP
#line 136 "engines/director/lingo/lingo-lex.l"
#line 138 "engines/director/lingo/lingo-lex.l"
{ count(); return tMACRO; }
YY_BREAK
case 30:
YY_RULE_SETUP
#line 137 "engines/director/lingo/lingo-lex.l"
#line 139 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1304,87 +1304,87 @@ YY_RULE_SETUP
YY_BREAK
case 31:
YY_RULE_SETUP
#line 148 "engines/director/lingo/lingo-lex.l"
#line 150 "engines/director/lingo/lingo-lex.l"
{ count(); return tMOD; }
YY_BREAK
case 32:
YY_RULE_SETUP
#line 149 "engines/director/lingo/lingo-lex.l"
#line 151 "engines/director/lingo/lingo-lex.l"
{ count(); return tMOVIE; }
YY_BREAK
case 33:
YY_RULE_SETUP
#line 150 "engines/director/lingo/lingo-lex.l"
#line 152 "engines/director/lingo/lingo-lex.l"
{ count(); return tNEXT; }
YY_BREAK
case 34:
YY_RULE_SETUP
#line 151 "engines/director/lingo/lingo-lex.l"
#line 153 "engines/director/lingo/lingo-lex.l"
{ count(); return tNOT; }
YY_BREAK
case 35:
YY_RULE_SETUP
#line 152 "engines/director/lingo/lingo-lex.l"
#line 154 "engines/director/lingo/lingo-lex.l"
{ count(); return tOF; }
YY_BREAK
case 36:
YY_RULE_SETUP
#line 153 "engines/director/lingo/lingo-lex.l"
#line 155 "engines/director/lingo/lingo-lex.l"
{ count(); return tON; } // D3
YY_BREAK
case 37:
YY_RULE_SETUP
#line 154 "engines/director/lingo/lingo-lex.l"
#line 156 "engines/director/lingo/lingo-lex.l"
{ count(); return tOPEN; }
YY_BREAK
case 38:
YY_RULE_SETUP
#line 155 "engines/director/lingo/lingo-lex.l"
#line 157 "engines/director/lingo/lingo-lex.l"
{ count(); return tOR; }
YY_BREAK
case 39:
YY_RULE_SETUP
#line 156 "engines/director/lingo/lingo-lex.l"
#line 158 "engines/director/lingo/lingo-lex.l"
{ count(); return tPLAY; }
YY_BREAK
case 40:
YY_RULE_SETUP
#line 157 "engines/director/lingo/lingo-lex.l"
#line 159 "engines/director/lingo/lingo-lex.l"
{ count(); return tPLAY; }
YY_BREAK
case 41:
YY_RULE_SETUP
#line 158 "engines/director/lingo/lingo-lex.l"
#line 160 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.s = new Common::String(yytext); return tPLAYACCEL; }
YY_BREAK
case 42:
YY_RULE_SETUP
#line 159 "engines/director/lingo/lingo-lex.l"
#line 161 "engines/director/lingo/lingo-lex.l"
{ count(); return tPREVIOUS; }
YY_BREAK
case 43:
YY_RULE_SETUP
#line 160 "engines/director/lingo/lingo-lex.l"
#line 162 "engines/director/lingo/lingo-lex.l"
{ count(); return tPROPERTY; } // D4
YY_BREAK
case 44:
YY_RULE_SETUP
#line 161 "engines/director/lingo/lingo-lex.l"
#line 163 "engines/director/lingo/lingo-lex.l"
{ count(); return tPUT; }
YY_BREAK
case 45:
YY_RULE_SETUP
#line 162 "engines/director/lingo/lingo-lex.l"
#line 164 "engines/director/lingo/lingo-lex.l"
{ count(); return checkImmediate(tREPEAT); }
YY_BREAK
case 46:
YY_RULE_SETUP
#line 163 "engines/director/lingo/lingo-lex.l"
#line 165 "engines/director/lingo/lingo-lex.l"
{ count(); return tSET; }
YY_BREAK
case 47:
YY_RULE_SETUP
#line 164 "engines/director/lingo/lingo-lex.l"
#line 166 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1408,17 +1408,17 @@ YY_RULE_SETUP
YY_BREAK
case 48:
YY_RULE_SETUP
#line 184 "engines/director/lingo/lingo-lex.l"
#line 186 "engines/director/lingo/lingo-lex.l"
{ count(); return tSTARTS; }
YY_BREAK
case 49:
YY_RULE_SETUP
#line 185 "engines/director/lingo/lingo-lex.l"
#line 187 "engines/director/lingo/lingo-lex.l"
{ count(); return tTELL; }
YY_BREAK
case 50:
YY_RULE_SETUP
#line 186 "engines/director/lingo/lingo-lex.l"
#line 188 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1430,7 +1430,7 @@ YY_RULE_SETUP
YY_BREAK
case 51:
YY_RULE_SETUP
#line 194 "engines/director/lingo/lingo-lex.l"
#line 196 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1441,7 +1441,7 @@ YY_RULE_SETUP
YY_BREAK
case 52:
YY_RULE_SETUP
#line 201 "engines/director/lingo/lingo-lex.l"
#line 203 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1468,7 +1468,7 @@ YY_RULE_SETUP
YY_BREAK
case 53:
YY_RULE_SETUP
#line 224 "engines/director/lingo/lingo-lex.l"
#line 226 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1525,7 +1525,7 @@ YY_RULE_SETUP
YY_BREAK
case 54:
YY_RULE_SETUP
#line 277 "engines/director/lingo/lingo-lex.l"
#line 279 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1560,7 +1560,7 @@ YY_RULE_SETUP
YY_BREAK
case 55:
YY_RULE_SETUP
#line 308 "engines/director/lingo/lingo-lex.l"
#line 310 "engines/director/lingo/lingo-lex.l"
{
count();
@ -1583,72 +1583,72 @@ YY_RULE_SETUP
YY_BREAK
case 56:
YY_RULE_SETUP
#line 327 "engines/director/lingo/lingo-lex.l"
#line 329 "engines/director/lingo/lingo-lex.l"
{ count(); return tTHEN; }
YY_BREAK
case 57:
YY_RULE_SETUP
#line 328 "engines/director/lingo/lingo-lex.l"
#line 330 "engines/director/lingo/lingo-lex.l"
{ count(); return tTO; }
YY_BREAK
case 58:
YY_RULE_SETUP
#line 329 "engines/director/lingo/lingo-lex.l"
#line 331 "engines/director/lingo/lingo-lex.l"
{ count(); return tSPRITE; }
YY_BREAK
case 59:
YY_RULE_SETUP
#line 330 "engines/director/lingo/lingo-lex.l"
#line 332 "engines/director/lingo/lingo-lex.l"
{ count(); return tWITH; }
YY_BREAK
case 60:
YY_RULE_SETUP
#line 331 "engines/director/lingo/lingo-lex.l"
#line 333 "engines/director/lingo/lingo-lex.l"
{ count(); return tWITHIN; }
YY_BREAK
case 61:
YY_RULE_SETUP
#line 332 "engines/director/lingo/lingo-lex.l"
#line 334 "engines/director/lingo/lingo-lex.l"
{ count(); return tWHEN; }
YY_BREAK
case 62:
YY_RULE_SETUP
#line 333 "engines/director/lingo/lingo-lex.l"
#line 335 "engines/director/lingo/lingo-lex.l"
{ count(); return tWHILE; }
YY_BREAK
case 63:
YY_RULE_SETUP
#line 334 "engines/director/lingo/lingo-lex.l"
#line 336 "engines/director/lingo/lingo-lex.l"
{ count(); return tWORD; }
YY_BREAK
case 64:
YY_RULE_SETUP
#line 336 "engines/director/lingo/lingo-lex.l"
#line 338 "engines/director/lingo/lingo-lex.l"
{ count(); return tNEQ; }
YY_BREAK
case 65:
YY_RULE_SETUP
#line 337 "engines/director/lingo/lingo-lex.l"
#line 339 "engines/director/lingo/lingo-lex.l"
{ count(); return tGE; }
YY_BREAK
case 66:
YY_RULE_SETUP
#line 338 "engines/director/lingo/lingo-lex.l"
#line 340 "engines/director/lingo/lingo-lex.l"
{ count(); return tLE; }
YY_BREAK
case 67:
YY_RULE_SETUP
#line 339 "engines/director/lingo/lingo-lex.l"
#line 341 "engines/director/lingo/lingo-lex.l"
{ count(); return tCONCAT; }
YY_BREAK
case 68:
YY_RULE_SETUP
#line 340 "engines/director/lingo/lingo-lex.l"
#line 342 "engines/director/lingo/lingo-lex.l"
{ count(); return tEQ; }
YY_BREAK
case 69:
YY_RULE_SETUP
#line 342 "engines/director/lingo/lingo-lex.l"
#line 344 "engines/director/lingo/lingo-lex.l"
{
count();
yylval.s = new Common::String(yytext);
@ -1684,38 +1684,38 @@ YY_RULE_SETUP
YY_BREAK
case 70:
YY_RULE_SETUP
#line 374 "engines/director/lingo/lingo-lex.l"
#line 376 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.f = atof(yytext); return FLOAT; }
YY_BREAK
case 71:
YY_RULE_SETUP
#line 375 "engines/director/lingo/lingo-lex.l"
#line 377 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.i = strtol(yytext, NULL, 10); return INT; }
YY_BREAK
case 72:
YY_RULE_SETUP
#line 376 "engines/director/lingo/lingo-lex.l"
#line 378 "engines/director/lingo/lingo-lex.l"
{ count(); return *yytext; }
YY_BREAK
case 73:
/* rule 73 can match eol */
YY_RULE_SETUP
#line 377 "engines/director/lingo/lingo-lex.l"
#line 379 "engines/director/lingo/lingo-lex.l"
{ count(); return '\n'; }
YY_BREAK
case 74:
YY_RULE_SETUP
#line 378 "engines/director/lingo/lingo-lex.l"
#line 380 "engines/director/lingo/lingo-lex.l"
{ count(); yylval.s = new Common::String(&yytext[1]); yylval.s->deleteLastChar(); return STRING; }
YY_BREAK
case 75:
YY_RULE_SETUP
#line 379 "engines/director/lingo/lingo-lex.l"
#line 381 "engines/director/lingo/lingo-lex.l"
{ count(); }
YY_BREAK
case 76:
YY_RULE_SETUP
#line 381 "engines/director/lingo/lingo-lex.l"
#line 383 "engines/director/lingo/lingo-lex.l"
ECHO;
YY_BREAK
#line 1722 "engines/director/lingo/lingo-lex.cpp"
@ -2678,7 +2678,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
#line 381 "engines/director/lingo/lingo-lex.l"
#line 383 "engines/director/lingo/lingo-lex.l"

View File

@ -25,6 +25,8 @@
%option noinput
%option never-interactive
%option outfile="engines/director/lingo/lingo-lex.cpp"
%{
#define YY_NO_UNISTD_H

View File

@ -30,7 +30,7 @@ MODULE_OBJS = \
lingo/lingo-the.o
director-grammar:
flex -o engines/director/lingo/lingo-lex.cpp engines/director/lingo/lingo-lex.l
flex engines/director/lingo/lingo-lex.l
bison -dv engines/director/lingo/lingo-gr.y
# This module can be built as a plugin