Add support for unsigned integer literals in the shading language.
TRAC #23080
Signed-off-by: Nicolas Capens
Signed-off-by: Shannon Woods
Author: Jamie Madill
git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2405 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/compiler/glslang.l b/src/compiler/glslang.l
index 3773d80..dace14f 100644
--- a/src/compiler/glslang.l
+++ b/src/compiler/glslang.l
@@ -57,6 +57,7 @@
static int ES2_reserved_ES3_keyword(TParseContext *context, int token);
static int ES2_keyword_ES3_reserved(TParseContext *context, int token);
static int ES2_ident_ES3_keyword(TParseContext *context, int token);
+static int uint_constant(TParseContext *context);
%}
%option noyywrap nounput never-interactive
@@ -294,6 +295,9 @@
0{O}+ { yylval->lex.i = static_cast<int>(strtol(yytext, 0, 0)); return(INTCONSTANT); }
0{D}+ { context->error(yylineno, "Invalid Octal number.", yytext); context->recover(); return 0;}
{D}+ { yylval->lex.i = static_cast<int>(strtol(yytext, 0, 0)); return(INTCONSTANT); }
+0[xX]{H}+[uU] { return uint_constant(context); }
+0{O}+[uU] { return uint_constant(context); }
+{D}+[uU] { return uint_constant(context); }
{D}+{E} { yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
{D}+"."{D}*({E})? { yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
@@ -437,6 +441,22 @@
return token;
}
+int uint_constant(TParseContext *context)
+{
+ struct yyguts_t* yyg = (struct yyguts_t*) context->scanner;
+ yyscan_t yyscanner = (yyscan_t) context->scanner;
+
+ if (context->shaderVersion < 300)
+ {
+ context->error(yylineno, "Unsigned integers are unsupported prior to GLSL ES 3.00", yytext, "");
+ context->recover();
+ return 0;
+ }
+
+ yylval->lex.u = static_cast<unsigned int>(strtol(yytext, 0, 0));
+ return UINTCONSTANT;
+}
+
void yyerror(TParseContext* context, const char* reason) {
struct yyguts_t* yyg = (struct yyguts_t*) context->scanner;
diff --git a/src/compiler/glslang.y b/src/compiler/glslang.y
index aeadbfc..d9c807b 100644
--- a/src/compiler/glslang.y
+++ b/src/compiler/glslang.y
@@ -55,6 +55,7 @@
TString *string;
float f;
int i;
+ unsigned int u;
bool b;
};
TSymbol* symbol;
@@ -132,7 +133,7 @@
%token <lex> SAMPLER2D SAMPLERCUBE SAMPLER_EXTERNAL_OES SAMPLER2DRECT
%token <lex> SAMPLER3D SAMPLER3DRECT SAMPLER2DSHADOW
-%token <lex> IDENTIFIER TYPE_NAME FLOATCONSTANT INTCONSTANT BOOLCONSTANT
+%token <lex> IDENTIFIER TYPE_NAME FLOATCONSTANT INTCONSTANT UINTCONSTANT BOOLCONSTANT
%token <lex> FIELD_SELECTION
%token <lex> LEFT_OP RIGHT_OP
%token <lex> INC_OP DEC_OP LE_OP GE_OP EQ_OP NE_OP
@@ -227,6 +228,11 @@
unionArray->setIConst($1.i);
$$ = context->intermediate.addConstantUnion(unionArray, TType(EbtInt, EbpUndefined, EvqConst), $1.line);
}
+ | UINTCONSTANT {
+ ConstantUnion *unionArray = new ConstantUnion[1];
+ unionArray->setUConst($1.u);
+ $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtUInt, EbpUndefined, EvqConst), $1.line);
+ }
| FLOATCONSTANT {
ConstantUnion *unionArray = new ConstantUnion[1];
unionArray->setFConst($1.f);
diff --git a/src/compiler/glslang_lex.cpp b/src/compiler/glslang_lex.cpp
index 1d5de42..762faa6 100644
--- a/src/compiler/glslang_lex.cpp
+++ b/src/compiler/glslang_lex.cpp
@@ -383,8 +383,8 @@
*yy_cp = '\0'; \
yyg->yy_c_buf_p = yy_cp;
-#define YY_NUM_RULES 227
-#define YY_END_OF_BUFFER 228
+#define YY_NUM_RULES 230
+#define YY_END_OF_BUFFER 231
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
@@ -392,93 +392,94 @@
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int16_t yy_accept[779] =
+static yyconst flex_int16_t yy_accept[782] =
{ 0,
- 0, 0, 0, 0, 0, 0, 228, 226, 225, 225,
- 210, 216, 221, 205, 206, 214, 213, 202, 211, 209,
- 215, 174, 174, 203, 199, 217, 204, 218, 222, 170,
- 207, 208, 220, 170, 170, 170, 170, 170, 170, 170,
+ 0, 0, 0, 0, 0, 0, 231, 229, 228, 228,
+ 213, 219, 224, 208, 209, 217, 216, 205, 214, 212,
+ 218, 174, 174, 206, 202, 220, 207, 221, 225, 170,
+ 210, 211, 223, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 200, 219, 201, 212, 3, 4, 3,
- 224, 227, 223, 196, 182, 201, 190, 185, 180, 188,
- 178, 189, 179, 177, 2, 1, 181, 176, 172, 173,
- 0, 0, 174, 208, 200, 207, 197, 193, 195, 194,
- 198, 170, 186, 192, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 203, 222, 204, 215, 3, 4, 3,
+ 227, 230, 226, 199, 185, 204, 193, 188, 183, 191,
+ 181, 192, 182, 180, 2, 1, 184, 179, 172, 173,
+ 0, 177, 0, 174, 211, 203, 210, 200, 196, 198,
+ 197, 201, 170, 189, 195, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 17, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 17, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 20, 170, 170, 28, 170, 170, 170, 170, 170, 170,
+ 170, 20, 170, 170, 28, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 187, 191, 5, 223,
- 0, 1, 176, 0, 0, 175, 171, 183, 184, 170,
- 128, 170, 170, 170, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 190, 194, 5,
+ 226, 0, 1, 179, 0, 176, 0, 178, 171, 186,
+ 187, 170, 128, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 18, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 18, 170, 170, 170,
- 170, 170, 170, 170, 170, 32, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 29, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 32, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 29, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 0, 177, 0, 176, 170, 170, 170, 35, 170,
- 170, 23, 167, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 21, 131, 170, 170, 170, 170, 26,
- 170, 170, 136, 148, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 145, 9, 40, 41, 42,
+ 170, 170, 170, 0, 180, 0, 179, 175, 170, 170,
+ 170, 35, 170, 170, 23, 167, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 21, 131, 170, 170,
+ 170, 170, 26, 170, 170, 136, 148, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 145, 9,
+ 40, 41, 42, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 134, 36, 170, 170, 33, 170,
- 170, 170, 170, 170, 170, 170, 52, 53, 54, 34,
- 170, 170, 170, 170, 170, 170, 15, 61, 62, 63,
- 170, 129, 170, 170, 12, 170, 170, 170, 170, 157,
- 158, 159, 170, 37, 170, 149, 31, 160, 161, 162,
- 7, 154, 155, 156, 170, 170, 170, 30, 152, 170,
- 170, 170, 55, 56, 57, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 79, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 134, 36, 170,
+ 170, 33, 170, 170, 170, 170, 170, 170, 170, 52,
+ 53, 54, 34, 170, 170, 170, 170, 170, 170, 15,
+ 61, 62, 63, 170, 129, 170, 170, 12, 170, 170,
+ 170, 170, 157, 158, 159, 170, 37, 170, 149, 31,
+ 160, 161, 162, 7, 154, 155, 156, 170, 170, 170,
+ 30, 152, 170, 170, 170, 55, 56, 57, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 79, 170,
- 170, 170, 170, 146, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 130, 170, 170, 169, 58,
- 59, 60, 170, 170, 19, 170, 84, 170, 170, 170,
- 170, 82, 170, 170, 170, 147, 142, 85, 170, 170,
- 170, 170, 170, 170, 137, 170, 170, 170, 43, 46,
- 48, 47, 44, 50, 49, 51, 45, 170, 170, 170,
- 170, 153, 135, 170, 170, 140, 170, 170, 170, 39,
- 80, 166, 27, 141, 71, 170, 151, 22, 170, 170,
- 170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 24, 38, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 146, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 130, 170,
+ 170, 169, 58, 59, 60, 170, 170, 19, 170, 84,
+ 170, 170, 170, 170, 82, 170, 170, 170, 147, 142,
+ 85, 170, 170, 170, 170, 170, 170, 137, 170, 170,
+ 170, 43, 46, 48, 47, 44, 50, 49, 51, 45,
+ 170, 170, 170, 170, 153, 135, 170, 170, 140, 170,
+ 170, 170, 39, 80, 166, 27, 141, 71, 170, 151,
+ 22, 170, 170, 170, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 24, 38, 170, 170, 170,
- 86, 87, 88, 170, 170, 170, 170, 170, 8, 170,
- 170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 132, 170, 170, 170, 170, 170, 13, 170, 170, 14,
- 170, 170, 170, 170, 25, 72, 16, 143, 90, 91,
- 92, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 138, 170, 170, 170, 74, 76, 73,
- 170, 170, 170, 170, 170, 170, 170, 133, 94, 95,
- 96, 170, 170, 150, 170, 139, 170, 170, 11, 170,
- 170, 170, 170, 170, 170, 170, 170, 170, 89, 144,
- 6, 170, 170, 170, 168, 170, 83, 10, 163, 64,
+ 170, 170, 170, 86, 87, 88, 170, 170, 170, 170,
+ 170, 8, 170, 170, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 132, 170, 170, 170, 170, 170, 13,
+ 170, 170, 14, 170, 170, 170, 170, 25, 72, 16,
+ 143, 90, 91, 92, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 138, 170, 170, 170,
+ 74, 76, 73, 170, 170, 170, 170, 170, 170, 170,
+ 133, 94, 95, 96, 170, 170, 150, 170, 139, 170,
+ 170, 11, 170, 170, 170, 170, 170, 170, 170, 170,
+ 170, 89, 144, 6, 170, 170, 170, 168, 170, 83,
- 67, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 75, 170, 170, 170, 170, 93, 170, 170,
- 170, 170, 170, 113, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 81, 170, 170, 170,
- 97, 115, 170, 170, 77, 170, 170, 170, 170, 170,
- 170, 170, 108, 170, 170, 170, 170, 170, 170, 170,
- 122, 170, 170, 170, 170, 65, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 109, 98, 170, 99,
- 170, 170, 123, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 110, 170, 124, 170,
+ 10, 163, 64, 67, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 75, 170, 170, 170, 170,
+ 93, 170, 170, 170, 170, 170, 113, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 170, 81,
+ 170, 170, 170, 97, 115, 170, 170, 77, 170, 170,
+ 170, 170, 170, 170, 170, 108, 170, 170, 170, 170,
+ 170, 170, 170, 122, 170, 170, 170, 170, 65, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 170, 109,
+ 98, 170, 99, 170, 170, 123, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 170, 110,
- 170, 100, 101, 170, 104, 170, 105, 170, 170, 170,
- 170, 78, 170, 170, 170, 70, 170, 68, 119, 170,
- 102, 103, 170, 170, 170, 170, 170, 170, 170, 170,
- 117, 120, 111, 170, 170, 170, 170, 170, 170, 170,
- 118, 121, 170, 170, 114, 170, 170, 164, 170, 170,
- 69, 170, 116, 170, 170, 170, 170, 170, 125, 170,
- 170, 170, 170, 170, 126, 170, 170, 170, 127, 106,
- 107, 170, 170, 66, 170, 165, 112, 0
+ 170, 124, 170, 170, 100, 101, 170, 104, 170, 105,
+ 170, 170, 170, 170, 78, 170, 170, 170, 70, 170,
+ 68, 119, 170, 102, 103, 170, 170, 170, 170, 170,
+ 170, 170, 170, 117, 120, 111, 170, 170, 170, 170,
+ 170, 170, 170, 118, 121, 170, 170, 114, 170, 170,
+ 164, 170, 170, 69, 170, 116, 170, 170, 170, 170,
+ 170, 125, 170, 170, 170, 170, 170, 126, 170, 170,
+ 170, 127, 106, 107, 170, 170, 66, 170, 165, 112,
+ 0
} ;
static yyconst flex_int32_t yy_ec[256] =
@@ -491,12 +492,12 @@
18, 19, 20, 20, 20, 21, 21, 22, 23, 24,
25, 26, 27, 1, 28, 29, 30, 31, 32, 33,
34, 34, 34, 34, 34, 34, 35, 34, 36, 34,
- 34, 37, 38, 34, 34, 34, 34, 39, 34, 34,
- 40, 1, 41, 42, 43, 1, 44, 45, 46, 47,
+ 34, 37, 38, 34, 39, 34, 34, 40, 34, 34,
+ 41, 1, 42, 43, 44, 1, 45, 46, 47, 48,
- 48, 49, 50, 51, 52, 34, 53, 54, 55, 56,
- 57, 58, 34, 59, 60, 61, 62, 63, 64, 65,
- 66, 67, 68, 69, 70, 71, 1, 1, 1, 1,
+ 49, 50, 51, 52, 53, 34, 54, 55, 56, 57,
+ 58, 59, 34, 60, 61, 62, 63, 64, 65, 66,
+ 67, 68, 69, 70, 71, 72, 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,
@@ -513,321 +514,321 @@
1, 1, 1, 1, 1
} ;
-static yyconst flex_int32_t yy_meta[72] =
+static yyconst flex_int32_t yy_meta[73] =
{ 0,
1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 3, 3, 3, 3, 3, 3,
3, 1, 1, 1, 1, 1, 1, 3, 3, 3,
- 3, 3, 3, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 4, 3, 3, 3, 3, 3, 3, 4,
+ 3, 3, 3, 4, 4, 4, 4, 4, 4, 4,
+ 1, 1, 1, 4, 3, 3, 3, 3, 3, 3,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
- 1
+ 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
+ 1, 1
} ;
-static yyconst flex_int16_t yy_base[784] =
+static yyconst flex_int16_t yy_base[787] =
{ 0,
- 0, 0, 69, 70, 79, 0, 1008, 1009, 1009, 1009,
- 982, 49, 145, 1009, 1009, 981, 142, 1009, 141, 139,
- 154, 167, 176, 979, 1009, 176, 979, 51, 1009, 0,
- 1009, 1009, 136, 116, 112, 159, 157, 156, 173, 946,
- 174, 179, 945, 175, 189, 939, 185, 952, 197, 203,
- 204, 209, 113, 1009, 186, 1009, 1009, 1009, 1009, 985,
- 1009, 1009, 0, 1009, 1009, 1009, 1009, 1009, 1009, 1009,
- 1009, 1009, 1009, 255, 1009, 0, 1009, 262, 280, 298,
- 317, 0, 332, 1009, 1009, 1009, 973, 1009, 1009, 1009,
- 972, 0, 1009, 1009, 935, 940, 227, 937, 945, 944,
+ 0, 0, 70, 71, 80, 0, 1002, 1003, 1003, 1003,
+ 976, 50, 147, 1003, 1003, 975, 144, 1003, 143, 141,
+ 156, 169, 223, 973, 1003, 169, 973, 52, 1003, 0,
+ 1003, 1003, 152, 117, 138, 118, 157, 148, 167, 939,
+ 147, 173, 938, 126, 159, 932, 188, 945, 201, 198,
+ 214, 211, 147, 1003, 158, 1003, 1003, 1003, 1003, 979,
+ 1003, 1003, 0, 1003, 1003, 1003, 1003, 1003, 1003, 1003,
+ 1003, 1003, 1003, 264, 1003, 0, 1003, 272, 234, 309,
+ 291, 1003, 0, 0, 1003, 1003, 1003, 967, 1003, 1003,
+ 1003, 966, 0, 1003, 1003, 928, 933, 187, 930, 938,
- 931, 934, 945, 234, 939, 927, 924, 937, 924, 921,
- 921, 927, 237, 206, 921, 931, 917, 923, 926, 927,
- 0, 919, 929, 300, 928, 923, 109, 909, 922, 913,
- 234, 906, 261, 918, 920, 264, 909, 906, 895, 904,
- 262, 281, 908, 904, 906, 895, 898, 249, 271, 315,
- 907, 895, 907, 150, 900, 899, 1009, 1009, 1009, 0,
- 356, 0, 366, 384, 391, 400, 0, 1009, 1009, 898,
- 0, 894, 889, 893, 902, 899, 294, 883, 883, 894,
- 886, 280, 896, 893, 893, 891, 888, 880, 886, 873,
- 871, 883, 869, 885, 0, 882, 870, 877, 874, 878,
+ 937, 924, 927, 938, 242, 932, 920, 917, 930, 917,
+ 914, 914, 920, 158, 257, 914, 924, 910, 916, 919,
+ 920, 0, 912, 922, 276, 921, 916, 162, 902, 915,
+ 906, 217, 899, 258, 911, 913, 271, 902, 899, 888,
+ 897, 291, 291, 901, 897, 899, 888, 891, 286, 286,
+ 299, 900, 888, 900, 206, 893, 892, 1003, 1003, 1003,
+ 0, 344, 0, 358, 376, 1003, 383, 393, 256, 1003,
+ 1003, 891, 0, 887, 882, 886, 895, 892, 304, 876,
+ 876, 887, 879, 284, 889, 886, 886, 884, 881, 873,
+ 879, 866, 864, 876, 862, 878, 0, 875, 863, 870,
- 879, 872, 869, 858, 857, 870, 873, 861, 869, 864,
- 855, 371, 860, 863, 854, 861, 850, 854, 845, 859,
- 858, 849, 855, 299, 839, 842, 840, 850, 840, 835,
- 833, 835, 845, 831, 833, 830, 841, 840, 843, 825,
- 313, 833, 829, 827, 836, 815, 374, 833, 835, 824,
- 816, 407, 414, 421, 428, 813, 823, 822, 0, 820,
- 433, 0, 0, 813, 811, 811, 812, 807, 815, 804,
- 821, 810, 436, 0, 0, 804, 814, 813, 813, 0,
- 798, 439, 0, 0, 800, 442, 807, 808, 799, 793,
- 792, 793, 792, 792, 445, 0, 0, 784, 783, 782,
+ 867, 871, 872, 865, 862, 851, 850, 863, 866, 854,
+ 862, 857, 848, 350, 853, 856, 847, 854, 843, 847,
+ 838, 852, 851, 842, 848, 322, 832, 835, 833, 843,
+ 833, 828, 826, 828, 838, 824, 826, 823, 834, 833,
+ 836, 818, 299, 826, 822, 820, 829, 808, 364, 826,
+ 828, 817, 809, 400, 407, 414, 421, 1003, 806, 816,
+ 815, 0, 813, 426, 0, 0, 806, 804, 804, 805,
+ 800, 808, 797, 814, 803, 429, 0, 0, 797, 807,
+ 806, 806, 0, 791, 432, 0, 0, 793, 435, 800,
+ 801, 792, 786, 785, 786, 785, 785, 438, 0, 0,
- 784, 785, 790, 784, 780, 793, 788, 788, 786, 785,
- 779, 773, 775, 774, 778, 770, 773, 768, 776, 781,
- 769, 766, 778, 769, 0, 0, 775, 771, 0, 763,
- 763, 768, 759, 766, 448, 763, 0, 0, 0, 0,
- 753, 765, 764, 763, 764, 764, 0, 0, 0, 0,
- 751, 0, 759, 750, 0, 749, 750, 744, 754, 0,
- 0, 0, 745, 0, 741, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 751, 452, 750, 0, 0, 748,
- 744, 741, 0, 0, 0, 454, 457, 460, 739, 735,
- 740, 731, 729, 742, 727, 0, 727, 740, 729, 725,
+ 777, 776, 775, 777, 778, 783, 777, 773, 786, 781,
+ 781, 779, 778, 772, 766, 768, 767, 771, 763, 766,
+ 761, 769, 774, 762, 759, 771, 762, 0, 0, 768,
+ 764, 0, 756, 756, 761, 752, 759, 441, 756, 0,
+ 0, 0, 0, 746, 758, 757, 756, 757, 757, 0,
+ 0, 0, 0, 744, 0, 752, 743, 0, 742, 743,
+ 737, 747, 0, 0, 0, 738, 0, 734, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 744, 445, 743,
+ 0, 0, 741, 737, 734, 0, 0, 0, 447, 450,
+ 453, 732, 728, 733, 724, 722, 735, 720, 0, 720,
- 731, 726, 733, 0, 731, 728, 732, 716, 714, 717,
- 723, 729, 724, 723, 711, 0, 713, 714, 0, 0,
- 0, 0, 711, 714, 0, 708, 0, 721, 701, 710,
- 705, 0, 698, 698, 711, 0, 713, 0, 467, 725,
- 724, 723, 691, 690, 0, 707, 706, 701, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 690, 703, 690,
- 687, 0, 0, 692, 691, 0, 688, 695, 694, 0,
- 680, 0, 0, 0, 0, 677, 0, 0, 676, 687,
- 470, 680, 686, 685, 682, 677, 674, 667, 667, 680,
- 665, 677, 0, 0, 670, 692, 691, 690, 658, 657,
+ 733, 722, 718, 724, 719, 726, 0, 724, 721, 725,
+ 709, 707, 710, 716, 722, 717, 716, 704, 0, 706,
+ 707, 0, 0, 0, 0, 704, 707, 0, 701, 0,
+ 714, 694, 703, 698, 0, 691, 691, 704, 0, 706,
+ 0, 460, 719, 718, 717, 684, 683, 0, 700, 699,
+ 694, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 683, 696, 683, 680, 0, 0, 685, 684, 0, 681,
+ 688, 687, 0, 673, 0, 0, 0, 0, 670, 0,
+ 0, 669, 680, 463, 673, 679, 678, 675, 670, 667,
+ 660, 660, 673, 658, 670, 0, 0, 663, 686, 685,
- 341, 452, 0, 669, 672, 670, 659, 655, 0, 667,
- 664, 663, 653, 652, 642, 659, 645, 475, 653, 656,
- 0, 672, 671, 670, 638, 637, 0, 651, 638, 0,
- 648, 641, 642, 645, 0, 0, 0, 0, 664, 663,
- 0, 641, 644, 629, 636, 627, 634, 635, 635, 634,
- 620, 485, 632, 0, 633, 622, 621, 0, 0, 0,
- 645, 644, 643, 611, 610, 606, 614, 0, 641, 640,
- 0, 618, 621, 0, 492, 0, 599, 608, 0, 604,
- 603, 612, 612, 600, 614, 598, 612, 607, 0, 0,
- 0, 623, 622, 590, 0, 590, 0, 0, 475, 480,
+ 684, 651, 650, 445, 456, 0, 662, 665, 663, 652,
+ 648, 0, 660, 657, 656, 646, 645, 635, 652, 638,
+ 469, 646, 649, 0, 666, 665, 664, 631, 630, 0,
+ 644, 631, 0, 641, 634, 635, 638, 0, 0, 0,
+ 0, 658, 657, 0, 634, 637, 622, 629, 620, 627,
+ 628, 628, 627, 613, 479, 625, 0, 626, 615, 614,
+ 0, 0, 0, 639, 638, 637, 604, 603, 599, 607,
+ 0, 635, 634, 0, 611, 614, 0, 486, 0, 592,
+ 601, 0, 597, 596, 605, 605, 593, 607, 591, 605,
+ 600, 0, 0, 0, 617, 616, 583, 0, 583, 0,
- 613, 600, 603, 586, 598, 586, 585, 594, 594, 610,
- 609, 577, 0, 577, 578, 577, 587, 0, 590, 586,
- 588, 584, 571, 601, 203, 579, 575, 567, 574, 586,
- 575, 571, 573, 571, 571, 570, 0, 558, 557, 567,
- 0, 586, 208, 564, 0, 568, 567, 551, 543, 551,
- 541, 549, 0, 546, 566, 555, 553, 538, 541, 555,
- 570, 551, 552, 549, 546, 0, 534, 548, 547, 531,
- 530, 550, 539, 537, 519, 518, 0, 545, 518, 543,
- 516, 520, 550, 531, 528, 527, 530, 526, 513, 510,
- 523, 508, 509, 511, 500, 499, 0, 505, 535, 516,
+ 0, 469, 474, 607, 593, 596, 579, 591, 579, 578,
+ 587, 587, 604, 603, 570, 0, 570, 571, 570, 580,
+ 0, 583, 579, 581, 577, 564, 595, 350, 572, 568,
+ 560, 567, 580, 568, 564, 566, 564, 564, 563, 0,
+ 551, 550, 560, 0, 580, 469, 557, 0, 561, 560,
+ 544, 536, 544, 534, 542, 0, 539, 560, 548, 546,
+ 531, 534, 548, 564, 544, 545, 542, 539, 0, 527,
+ 541, 540, 524, 523, 544, 532, 530, 512, 511, 0,
+ 539, 511, 537, 509, 513, 544, 524, 521, 520, 523,
+ 519, 506, 503, 516, 501, 502, 504, 493, 492, 0,
- 513, 0, 0, 509, 0, 508, 0, 514, 498, 495,
- 496, 0, 488, 496, 493, 513, 493, 0, 0, 505,
- 0, 0, 504, 488, 485, 486, 500, 499, 476, 482,
- 0, 0, 502, 475, 494, 486, 472, 481, 468, 472,
- 0, 0, 473, 472, 0, 472, 461, 0, 445, 466,
- 0, 470, 0, 454, 438, 437, 423, 369, 0, 350,
- 363, 312, 301, 280, 0, 296, 252, 230, 0, 0,
- 0, 208, 158, 0, 126, 0, 0, 1009, 521, 523,
- 525, 529, 171
+ 498, 529, 509, 506, 0, 0, 502, 0, 501, 0,
+ 507, 491, 488, 489, 0, 481, 489, 486, 507, 486,
+ 0, 0, 498, 0, 0, 497, 481, 478, 479, 493,
+ 492, 469, 475, 0, 0, 496, 468, 487, 479, 465,
+ 474, 461, 465, 0, 0, 466, 465, 0, 465, 453,
+ 0, 433, 446, 0, 452, 0, 437, 348, 347, 322,
+ 326, 0, 322, 323, 256, 252, 249, 0, 229, 210,
+ 214, 0, 0, 0, 158, 132, 0, 115, 0, 0,
+ 1003, 515, 517, 519, 523, 163
} ;
-static yyconst flex_int16_t yy_def[784] =
+static yyconst flex_int16_t yy_def[787] =
{ 0,
- 778, 1, 779, 779, 778, 5, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 780,
- 778, 778, 778, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 781, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 782, 778, 778, 778, 778,
- 778, 783, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 780, 778, 778, 780, 780, 780, 780, 780, 780,
+ 781, 1, 782, 782, 781, 5, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 783,
+ 781, 781, 781, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 784, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 785, 781, 781, 22, 781,
+ 781, 781, 786, 23, 781, 781, 781, 781, 781, 781,
+ 781, 781, 783, 781, 781, 783, 783, 783, 783, 783,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 778, 778, 778, 781,
- 778, 782, 778, 778, 778, 778, 783, 778, 778, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 781, 781, 781,
+ 784, 781, 785, 781, 781, 781, 781, 781, 786, 781,
+ 781, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 778, 778, 778, 778, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 781, 781, 781, 781, 781, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
- 780, 780, 780, 780, 780, 780, 780, 0, 778, 778,
- 778, 778, 778
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 783, 783, 783, 783, 783, 783, 783, 783, 783, 783,
+ 0, 781, 781, 781, 781, 781
} ;
-static yyconst flex_int16_t yy_nxt[1081] =
+static yyconst flex_int16_t yy_nxt[1076] =
{ 0,
8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 23, 23, 23, 23,
23, 24, 25, 26, 27, 28, 29, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 31,
- 32, 33, 30, 34, 35, 36, 37, 38, 39, 40,
- 41, 42, 30, 43, 44, 45, 46, 47, 48, 49,
- 50, 51, 52, 53, 30, 30, 30, 54, 55, 56,
- 57, 59, 59, 65, 66, 90, 91, 60, 60, 8,
- 61, 62, 8, 8, 8, 8, 8, 8, 8, 8,
+ 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
+ 31, 32, 33, 30, 34, 35, 36, 37, 38, 39,
+ 40, 41, 42, 30, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, 52, 53, 30, 30, 30, 54, 55,
+ 56, 57, 59, 59, 65, 66, 91, 92, 60, 60,
+ 8, 61, 62, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 63, 63, 8, 8,
- 8, 63, 63, 63, 63, 63, 63, 63, 63, 63,
+ 8, 8, 8, 8, 8, 8, 8, 63, 63, 63,
63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 63, 63, 63, 8, 8, 8, 8,
- 67, 70, 72, 74, 74, 74, 74, 74, 74, 74,
- 93, 95, 75, 155, 210, 73, 71, 76, 98, 68,
- 99, 156, 211, 167, 100, 96, 97, 94, 77, 78,
- 85, 79, 79, 79, 79, 79, 79, 80, 78, 777,
- 83, 83, 83, 83, 83, 83, 83, 86, 81, 87,
+ 8, 8, 8, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63, 8, 8,
+ 8, 8, 67, 70, 72, 74, 74, 74, 74, 74,
+ 74, 74, 102, 96, 75, 169, 103, 73, 71, 76,
+ 129, 68, 104, 86, 130, 105, 94, 97, 98, 780,
+ 77, 78, 158, 79, 79, 79, 79, 79, 79, 80,
+ 87, 119, 88, 89, 95, 99, 779, 100, 156, 120,
- 88, 248, 101, 249, 105, 82, 102, 81, 106, 109,
- 157, 110, 103, 107, 81, 104, 112, 118, 128, 108,
- 111, 776, 129, 81, 113, 119, 114, 121, 133, 115,
- 122, 82, 130, 123, 124, 116, 120, 655, 125, 656,
- 137, 126, 672, 134, 673, 131, 135, 138, 139, 193,
- 144, 140, 152, 145, 158, 148, 153, 141, 142, 149,
- 143, 146, 194, 150, 775, 154, 151, 774, 147, 74,
- 74, 74, 74, 74, 74, 74, 163, 163, 163, 163,
- 163, 163, 163, 172, 180, 215, 161, 173, 181, 182,
- 191, 216, 78, 164, 79, 79, 79, 79, 79, 79,
+ 81, 101, 110, 131, 111, 106, 157, 82, 83, 107,
+ 121, 113, 193, 112, 108, 778, 132, 81, 212, 114,
+ 109, 115, 122, 194, 116, 123, 213, 159, 124, 125,
+ 117, 82, 134, 126, 83, 78, 127, 84, 84, 84,
+ 84, 84, 84, 84, 174, 138, 145, 135, 175, 146,
+ 136, 777, 139, 140, 81, 153, 141, 147, 250, 154,
+ 251, 82, 142, 143, 148, 144, 149, 776, 155, 217,
+ 150, 81, 166, 781, 151, 218, 775, 152, 74, 74,
+ 74, 74, 74, 74, 74, 82, 164, 164, 164, 164,
+ 164, 164, 164, 182, 258, 162, 166, 183, 184, 781,
- 80, 192, 161, 239, 240, 230, 218, 223, 773, 164,
- 78, 81, 80, 80, 80, 80, 80, 80, 80, 219,
- 231, 220, 241, 224, 225, 232, 165, 81, 165, 81,
- 242, 166, 166, 166, 166, 166, 166, 166, 233, 268,
- 269, 262, 772, 771, 78, 81, 83, 83, 83, 83,
- 83, 83, 83, 203, 263, 312, 204, 205, 243, 313,
- 206, 330, 207, 81, 770, 252, 244, 252, 544, 331,
- 253, 253, 253, 253, 253, 253, 253, 769, 545, 81,
- 163, 163, 163, 163, 163, 163, 163, 298, 299, 300,
- 337, 338, 339, 254, 768, 254, 767, 164, 255, 255,
+ 167, 195, 167, 165, 220, 168, 168, 168, 168, 168,
+ 168, 168, 162, 774, 196, 225, 773, 221, 258, 222,
+ 165, 78, 772, 80, 80, 80, 80, 80, 80, 80,
+ 205, 226, 227, 206, 207, 232, 234, 208, 243, 209,
+ 81, 241, 242, 245, 271, 272, 244, 82, 333, 235,
+ 233, 246, 265, 254, 771, 254, 334, 81, 255, 255,
+ 255, 255, 255, 255, 255, 266, 301, 302, 303, 770,
+ 769, 82, 164, 164, 164, 164, 164, 164, 164, 315,
+ 340, 341, 342, 316, 658, 256, 659, 256, 768, 165,
+ 257, 257, 257, 257, 257, 257, 257, 168, 168, 168,
- 255, 255, 255, 255, 255, 166, 166, 166, 166, 166,
- 166, 166, 766, 164, 166, 166, 166, 166, 166, 166,
- 166, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 255, 255, 255, 255, 255,
- 255, 255, 255, 255, 255, 255, 255, 255, 255, 348,
- 349, 350, 360, 361, 362, 368, 369, 370, 372, 373,
- 374, 383, 384, 385, 420, 421, 422, 440, 441, 442,
- 449, 450, 451, 452, 453, 454, 455, 456, 457, 546,
- 443, 444, 496, 497, 498, 522, 523, 524, 765, 547,
- 561, 562, 563, 764, 763, 499, 500, 762, 525, 526,
+ 168, 168, 168, 168, 767, 766, 165, 168, 168, 168,
+ 168, 168, 168, 168, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 257, 257,
+ 257, 257, 257, 257, 257, 257, 257, 257, 257, 257,
+ 257, 257, 351, 352, 353, 363, 364, 365, 371, 372,
+ 373, 375, 376, 377, 386, 387, 388, 423, 424, 425,
+ 443, 444, 445, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 547, 446, 447, 499, 500, 501, 525, 526,
+ 527, 765, 548, 549, 564, 565, 566, 764, 502, 503,
+ 763, 528, 529, 550, 595, 596, 631, 567, 568, 762,
- 592, 593, 628, 564, 565, 761, 566, 610, 611, 760,
- 759, 758, 629, 594, 630, 757, 631, 632, 756, 755,
- 612, 58, 58, 58, 58, 92, 92, 160, 160, 162,
- 754, 162, 162, 753, 752, 751, 750, 749, 748, 747,
- 746, 745, 744, 743, 742, 741, 740, 739, 738, 737,
- 736, 735, 734, 733, 732, 731, 730, 729, 728, 727,
- 726, 725, 724, 723, 722, 721, 720, 719, 718, 717,
- 716, 715, 714, 713, 712, 711, 710, 709, 708, 707,
- 706, 705, 704, 703, 702, 701, 700, 699, 698, 697,
- 696, 695, 694, 693, 692, 691, 690, 689, 688, 687,
+ 569, 613, 614, 675, 761, 676, 632, 597, 633, 760,
+ 634, 635, 759, 758, 615, 58, 58, 58, 58, 93,
+ 93, 161, 161, 163, 757, 163, 163, 756, 755, 754,
+ 753, 752, 751, 750, 749, 748, 747, 746, 745, 744,
+ 743, 742, 741, 740, 739, 738, 737, 736, 735, 734,
+ 733, 732, 731, 730, 729, 728, 727, 726, 725, 724,
+ 723, 722, 721, 720, 719, 718, 717, 716, 715, 714,
+ 713, 712, 711, 710, 709, 708, 707, 706, 705, 704,
+ 703, 702, 701, 700, 699, 698, 697, 696, 695, 694,
+ 693, 692, 691, 690, 689, 688, 687, 686, 685, 684,
- 686, 685, 684, 683, 682, 681, 680, 679, 678, 677,
- 676, 675, 674, 671, 670, 669, 668, 667, 666, 665,
- 664, 663, 662, 661, 660, 659, 658, 657, 654, 653,
- 652, 651, 650, 649, 648, 647, 646, 645, 644, 643,
- 642, 641, 640, 639, 638, 637, 636, 635, 634, 633,
- 627, 626, 625, 624, 623, 622, 621, 620, 619, 618,
- 617, 616, 615, 614, 613, 609, 608, 607, 606, 605,
- 604, 603, 602, 601, 600, 599, 598, 597, 596, 595,
- 591, 590, 589, 588, 587, 586, 585, 584, 583, 582,
- 581, 580, 579, 578, 577, 576, 575, 574, 573, 572,
+ 683, 682, 681, 680, 679, 678, 677, 674, 673, 672,
+ 671, 670, 669, 668, 667, 666, 665, 664, 663, 662,
+ 661, 660, 657, 656, 655, 654, 653, 652, 651, 650,
+ 649, 648, 647, 646, 645, 644, 643, 642, 641, 640,
+ 639, 638, 637, 636, 630, 629, 628, 627, 626, 625,
+ 624, 623, 622, 621, 620, 619, 618, 617, 616, 612,
+ 611, 610, 609, 608, 607, 606, 605, 604, 603, 602,
+ 601, 600, 599, 598, 594, 593, 592, 591, 590, 589,
+ 588, 587, 586, 585, 584, 583, 582, 581, 580, 579,
+ 578, 577, 576, 575, 574, 573, 572, 571, 570, 563,
- 571, 570, 569, 568, 567, 560, 559, 558, 557, 556,
- 555, 554, 553, 552, 551, 550, 549, 548, 543, 542,
- 541, 540, 539, 538, 537, 536, 535, 534, 533, 532,
- 531, 530, 529, 528, 527, 521, 520, 519, 518, 517,
- 516, 515, 514, 513, 512, 511, 510, 509, 508, 507,
- 506, 505, 504, 503, 502, 501, 495, 494, 493, 492,
- 491, 490, 489, 488, 487, 486, 485, 484, 483, 482,
- 481, 480, 479, 478, 477, 476, 475, 474, 473, 472,
- 471, 470, 469, 468, 467, 466, 465, 464, 463, 462,
- 461, 460, 459, 458, 448, 447, 446, 445, 439, 438,
+ 562, 561, 560, 559, 558, 557, 556, 555, 554, 553,
+ 552, 551, 546, 545, 544, 543, 542, 541, 540, 539,
+ 538, 537, 536, 535, 534, 533, 532, 531, 530, 524,
+ 523, 522, 521, 520, 519, 518, 517, 516, 515, 514,
+ 513, 512, 511, 510, 509, 508, 507, 506, 505, 504,
+ 498, 497, 496, 495, 494, 493, 492, 491, 490, 489,
+ 488, 487, 486, 485, 484, 483, 482, 481, 480, 479,
+ 478, 477, 476, 475, 474, 473, 472, 471, 470, 469,
+ 468, 467, 466, 465, 464, 463, 462, 461, 451, 450,
+ 449, 448, 442, 441, 440, 439, 438, 437, 436, 435,
- 437, 436, 435, 434, 433, 432, 431, 430, 429, 428,
- 427, 426, 425, 424, 423, 419, 418, 417, 416, 415,
- 414, 413, 412, 411, 410, 409, 408, 407, 406, 405,
- 404, 403, 402, 401, 400, 399, 398, 397, 396, 395,
- 394, 393, 392, 391, 390, 389, 388, 387, 386, 382,
- 381, 380, 379, 378, 377, 376, 375, 371, 367, 366,
- 365, 364, 363, 359, 358, 357, 356, 355, 354, 353,
- 352, 351, 347, 346, 345, 344, 343, 342, 341, 340,
- 336, 335, 334, 333, 332, 329, 328, 327, 326, 325,
- 324, 323, 322, 321, 320, 319, 318, 317, 316, 315,
+ 434, 433, 432, 431, 430, 429, 428, 427, 426, 422,
+ 421, 420, 419, 418, 417, 416, 415, 414, 413, 412,
+ 411, 410, 409, 408, 407, 406, 405, 404, 403, 402,
+ 401, 400, 399, 398, 397, 396, 395, 394, 393, 392,
+ 391, 390, 389, 385, 384, 383, 382, 381, 380, 379,
+ 378, 374, 370, 369, 368, 367, 366, 362, 361, 360,
+ 359, 358, 357, 356, 355, 354, 350, 349, 348, 347,
+ 346, 345, 344, 343, 339, 338, 337, 336, 335, 332,
+ 331, 330, 329, 328, 327, 326, 325, 324, 323, 322,
+ 321, 320, 319, 318, 317, 314, 313, 312, 311, 310,
- 314, 311, 310, 309, 308, 307, 306, 305, 304, 303,
- 302, 301, 297, 296, 295, 294, 293, 292, 291, 290,
- 289, 288, 287, 286, 285, 284, 283, 282, 281, 280,
- 279, 278, 277, 276, 275, 274, 273, 272, 271, 270,
- 267, 266, 265, 264, 261, 260, 259, 258, 257, 256,
- 251, 250, 247, 246, 245, 238, 237, 236, 235, 234,
- 229, 228, 227, 226, 222, 221, 217, 214, 213, 212,
- 209, 208, 202, 201, 200, 199, 198, 197, 196, 195,
- 190, 189, 188, 187, 186, 185, 184, 183, 179, 178,
- 177, 176, 175, 174, 171, 170, 169, 168, 159, 136,
+ 309, 308, 307, 306, 305, 304, 300, 299, 298, 297,
+ 296, 295, 294, 293, 292, 291, 290, 289, 288, 287,
+ 286, 285, 284, 283, 282, 281, 280, 279, 278, 277,
+ 276, 275, 274, 273, 270, 269, 268, 267, 264, 263,
+ 262, 261, 260, 259, 253, 252, 249, 248, 247, 240,
+ 239, 238, 237, 236, 231, 230, 229, 228, 224, 223,
+ 219, 216, 215, 214, 211, 210, 204, 203, 202, 201,
+ 200, 199, 198, 197, 192, 191, 190, 189, 188, 187,
+ 186, 185, 181, 180, 179, 178, 177, 176, 173, 172,
+ 171, 170, 160, 137, 133, 128, 118, 90, 85, 69,
- 132, 127, 117, 89, 84, 69, 64, 778, 7, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778
+ 64, 781, 7, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781
} ;
-static yyconst flex_int16_t yy_chk[1081] =
+static yyconst flex_int16_t yy_chk[1076] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -836,7 +837,7 @@
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, 3, 4, 12, 12, 28, 28, 3, 4, 5,
+ 1, 1, 3, 4, 12, 12, 28, 28, 3, 4,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
@@ -845,112 +846,112 @@
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, 5, 5, 5,
- 13, 17, 19, 20, 20, 20, 20, 20, 20, 20,
- 33, 34, 21, 53, 127, 19, 17, 21, 35, 13,
- 35, 53, 127, 783, 35, 34, 34, 33, 21, 22,
- 26, 22, 22, 22, 22, 22, 22, 22, 23, 775,
- 23, 23, 23, 23, 23, 23, 23, 26, 22, 26,
+ 5, 5, 13, 17, 19, 20, 20, 20, 20, 20,
+ 20, 20, 36, 34, 21, 786, 36, 19, 17, 21,
+ 44, 13, 36, 26, 44, 36, 33, 34, 34, 778,
+ 21, 22, 55, 22, 22, 22, 22, 22, 22, 22,
+ 26, 41, 26, 26, 33, 35, 776, 35, 53, 41,
- 26, 154, 36, 154, 37, 22, 36, 23, 37, 38,
- 55, 38, 36, 37, 22, 36, 39, 41, 44, 37,
- 38, 773, 44, 23, 39, 41, 39, 42, 47, 39,
- 42, 22, 45, 42, 42, 39, 41, 625, 42, 625,
- 49, 42, 643, 47, 643, 45, 47, 49, 49, 114,
- 50, 49, 52, 50, 55, 51, 52, 49, 49, 51,
- 49, 50, 114, 51, 772, 52, 51, 768, 50, 74,
- 74, 74, 74, 74, 74, 74, 78, 78, 78, 78,
- 78, 78, 78, 97, 104, 131, 74, 97, 104, 104,
- 113, 131, 79, 78, 79, 79, 79, 79, 79, 79,
+ 22, 35, 38, 45, 38, 37, 53, 22, 22, 37,
+ 41, 39, 114, 38, 37, 775, 45, 22, 128, 39,
+ 37, 39, 42, 114, 39, 42, 128, 55, 42, 42,
+ 39, 22, 47, 42, 22, 23, 42, 23, 23, 23,
+ 23, 23, 23, 23, 98, 49, 50, 47, 98, 50,
+ 47, 771, 49, 49, 23, 52, 49, 50, 155, 52,
+ 155, 23, 49, 49, 50, 49, 51, 770, 52, 132,
+ 51, 23, 79, 79, 51, 132, 769, 51, 74, 74,
+ 74, 74, 74, 74, 74, 23, 78, 78, 78, 78,
+ 78, 78, 78, 105, 169, 74, 79, 105, 105, 79,
- 79, 113, 74, 148, 148, 141, 133, 136, 767, 78,
- 80, 79, 80, 80, 80, 80, 80, 80, 80, 133,
- 141, 133, 149, 136, 136, 142, 81, 79, 81, 80,
- 149, 81, 81, 81, 81, 81, 81, 81, 142, 182,
- 182, 177, 766, 764, 83, 80, 83, 83, 83, 83,
- 83, 83, 83, 124, 177, 224, 124, 124, 150, 224,
- 124, 241, 124, 83, 763, 161, 150, 161, 501, 241,
- 161, 161, 161, 161, 161, 161, 161, 762, 501, 83,
- 163, 163, 163, 163, 163, 163, 163, 212, 212, 212,
- 247, 247, 247, 164, 761, 164, 760, 163, 164, 164,
+ 81, 115, 81, 78, 134, 81, 81, 81, 81, 81,
+ 81, 81, 74, 767, 115, 137, 766, 134, 169, 134,
+ 78, 80, 765, 80, 80, 80, 80, 80, 80, 80,
+ 125, 137, 137, 125, 125, 142, 143, 125, 150, 125,
+ 80, 149, 149, 151, 184, 184, 150, 80, 243, 143,
+ 142, 151, 179, 162, 764, 162, 243, 80, 162, 162,
+ 162, 162, 162, 162, 162, 179, 214, 214, 214, 763,
+ 761, 80, 164, 164, 164, 164, 164, 164, 164, 226,
+ 249, 249, 249, 226, 628, 165, 628, 165, 760, 164,
+ 165, 165, 165, 165, 165, 165, 165, 167, 167, 167,
- 164, 164, 164, 164, 164, 165, 165, 165, 165, 165,
- 165, 165, 758, 163, 166, 166, 166, 166, 166, 166,
- 166, 252, 252, 252, 252, 252, 252, 252, 253, 253,
- 253, 253, 253, 253, 253, 254, 254, 254, 254, 254,
- 254, 254, 255, 255, 255, 255, 255, 255, 255, 261,
- 261, 261, 273, 273, 273, 282, 282, 282, 286, 286,
- 286, 295, 295, 295, 335, 335, 335, 376, 376, 376,
- 386, 386, 386, 387, 387, 387, 388, 388, 388, 502,
- 376, 376, 439, 439, 439, 481, 481, 481, 757, 502,
- 518, 518, 518, 756, 755, 439, 439, 754, 481, 481,
+ 167, 167, 167, 167, 759, 758, 164, 168, 168, 168,
+ 168, 168, 168, 168, 254, 254, 254, 254, 254, 254,
+ 254, 255, 255, 255, 255, 255, 255, 255, 256, 256,
+ 256, 256, 256, 256, 256, 257, 257, 257, 257, 257,
+ 257, 257, 264, 264, 264, 276, 276, 276, 285, 285,
+ 285, 289, 289, 289, 298, 298, 298, 338, 338, 338,
+ 379, 379, 379, 389, 389, 389, 390, 390, 390, 391,
+ 391, 391, 504, 379, 379, 442, 442, 442, 484, 484,
+ 484, 757, 504, 505, 521, 521, 521, 755, 442, 442,
+ 753, 484, 484, 505, 555, 555, 602, 521, 521, 752,
- 552, 552, 599, 518, 518, 752, 518, 575, 575, 750,
- 749, 747, 599, 552, 600, 746, 600, 600, 744, 743,
- 575, 779, 779, 779, 779, 780, 780, 781, 781, 782,
- 740, 782, 782, 739, 738, 737, 736, 735, 734, 733,
- 730, 729, 728, 727, 726, 725, 724, 723, 720, 717,
- 716, 715, 714, 713, 711, 710, 709, 708, 706, 704,
- 701, 700, 699, 698, 696, 695, 694, 693, 692, 691,
- 690, 689, 688, 687, 686, 685, 684, 683, 682, 681,
- 680, 679, 678, 676, 675, 674, 673, 672, 671, 670,
- 669, 668, 667, 665, 664, 663, 662, 661, 660, 659,
+ 521, 578, 578, 646, 750, 646, 602, 555, 603, 749,
+ 603, 603, 747, 746, 578, 782, 782, 782, 782, 783,
+ 783, 784, 784, 785, 743, 785, 785, 742, 741, 740,
+ 739, 738, 737, 736, 733, 732, 731, 730, 729, 728,
+ 727, 726, 723, 720, 719, 718, 717, 716, 714, 713,
+ 712, 711, 709, 707, 704, 703, 702, 701, 699, 698,
+ 697, 696, 695, 694, 693, 692, 691, 690, 689, 688,
+ 687, 686, 685, 684, 683, 682, 681, 679, 678, 677,
+ 676, 675, 674, 673, 672, 671, 670, 668, 667, 666,
+ 665, 664, 663, 662, 661, 660, 659, 658, 657, 655,
- 658, 657, 656, 655, 654, 652, 651, 650, 649, 648,
- 647, 646, 644, 642, 640, 639, 638, 636, 635, 634,
- 633, 632, 631, 630, 629, 628, 627, 626, 624, 623,
- 622, 621, 620, 619, 617, 616, 615, 614, 612, 611,
- 610, 609, 608, 607, 606, 605, 604, 603, 602, 601,
- 596, 594, 593, 592, 588, 587, 586, 585, 584, 583,
- 582, 581, 580, 578, 577, 573, 572, 570, 569, 567,
- 566, 565, 564, 563, 562, 561, 557, 556, 555, 553,
- 551, 550, 549, 548, 547, 546, 545, 544, 543, 542,
- 540, 539, 534, 533, 532, 531, 529, 528, 526, 525,
+ 654, 653, 652, 651, 650, 649, 647, 645, 643, 642,
+ 641, 639, 638, 637, 636, 635, 634, 633, 632, 631,
+ 630, 629, 627, 626, 625, 624, 623, 622, 620, 619,
+ 618, 617, 615, 614, 613, 612, 611, 610, 609, 608,
+ 607, 606, 605, 604, 599, 597, 596, 595, 591, 590,
+ 589, 588, 587, 586, 585, 584, 583, 581, 580, 576,
+ 575, 573, 572, 570, 569, 568, 567, 566, 565, 564,
+ 560, 559, 558, 556, 554, 553, 552, 551, 550, 549,
+ 548, 547, 546, 545, 543, 542, 537, 536, 535, 534,
+ 532, 531, 529, 528, 527, 526, 525, 523, 522, 520,
- 524, 523, 522, 520, 519, 517, 516, 515, 514, 513,
- 512, 511, 510, 508, 507, 506, 505, 504, 500, 499,
- 498, 497, 496, 495, 492, 491, 490, 489, 488, 487,
- 486, 485, 484, 483, 482, 480, 479, 476, 471, 469,
- 468, 467, 465, 464, 461, 460, 459, 458, 448, 447,
- 446, 444, 443, 442, 441, 440, 437, 435, 434, 433,
- 431, 430, 429, 428, 426, 424, 423, 418, 417, 415,
- 414, 413, 412, 411, 410, 409, 408, 407, 406, 405,
- 403, 402, 401, 400, 399, 398, 397, 395, 394, 393,
- 392, 391, 390, 389, 382, 381, 380, 377, 375, 365,
+ 519, 518, 517, 516, 515, 514, 513, 511, 510, 509,
+ 508, 507, 503, 502, 501, 500, 499, 498, 495, 494,
+ 493, 492, 491, 490, 489, 488, 487, 486, 485, 483,
+ 482, 479, 474, 472, 471, 470, 468, 467, 464, 463,
+ 462, 461, 451, 450, 449, 447, 446, 445, 444, 443,
+ 440, 438, 437, 436, 434, 433, 432, 431, 429, 427,
+ 426, 421, 420, 418, 417, 416, 415, 414, 413, 412,
+ 411, 410, 409, 408, 406, 405, 404, 403, 402, 401,
+ 400, 398, 397, 396, 395, 394, 393, 392, 385, 384,
+ 383, 380, 378, 368, 366, 362, 361, 360, 359, 357,
- 363, 359, 358, 357, 356, 354, 353, 351, 346, 345,
- 344, 343, 342, 341, 336, 334, 333, 332, 331, 330,
- 328, 327, 324, 323, 322, 321, 320, 319, 318, 317,
- 316, 315, 314, 313, 312, 311, 310, 309, 308, 307,
- 306, 305, 304, 303, 302, 301, 300, 299, 298, 294,
- 293, 292, 291, 290, 289, 288, 287, 285, 281, 279,
- 278, 277, 276, 272, 271, 270, 269, 268, 267, 266,
- 265, 264, 260, 258, 257, 256, 251, 250, 249, 248,
- 246, 245, 244, 243, 242, 240, 239, 238, 237, 236,
- 235, 234, 233, 232, 231, 230, 229, 228, 227, 226,
+ 356, 354, 349, 348, 347, 346, 345, 344, 339, 337,
+ 336, 335, 334, 333, 331, 330, 327, 326, 325, 324,
+ 323, 322, 321, 320, 319, 318, 317, 316, 315, 314,
+ 313, 312, 311, 310, 309, 308, 307, 306, 305, 304,
+ 303, 302, 301, 297, 296, 295, 294, 293, 292, 291,
+ 290, 288, 284, 282, 281, 280, 279, 275, 274, 273,
+ 272, 271, 270, 269, 268, 267, 263, 261, 260, 259,
+ 253, 252, 251, 250, 248, 247, 246, 245, 244, 242,
+ 241, 240, 239, 238, 237, 236, 235, 234, 233, 232,
+ 231, 230, 229, 228, 227, 225, 224, 223, 222, 221,
- 225, 223, 222, 221, 220, 219, 218, 217, 216, 215,
- 214, 213, 211, 210, 209, 208, 207, 206, 205, 204,
- 203, 202, 201, 200, 199, 198, 197, 196, 194, 193,
- 192, 191, 190, 189, 188, 187, 186, 185, 184, 183,
- 181, 180, 179, 178, 176, 175, 174, 173, 172, 170,
- 156, 155, 153, 152, 151, 147, 146, 145, 144, 143,
- 140, 139, 138, 137, 135, 134, 132, 130, 129, 128,
- 126, 125, 123, 122, 120, 119, 118, 117, 116, 115,
- 112, 111, 110, 109, 108, 107, 106, 105, 103, 102,
- 101, 100, 99, 98, 96, 95, 91, 87, 60, 48,
+ 220, 219, 218, 217, 216, 215, 213, 212, 211, 210,
+ 209, 208, 207, 206, 205, 204, 203, 202, 201, 200,
+ 199, 198, 196, 195, 194, 193, 192, 191, 190, 189,
+ 188, 187, 186, 185, 183, 182, 181, 180, 178, 177,
+ 176, 175, 174, 172, 157, 156, 154, 153, 152, 148,
+ 147, 146, 145, 144, 141, 140, 139, 138, 136, 135,
+ 133, 131, 130, 129, 127, 126, 124, 123, 121, 120,
+ 119, 118, 117, 116, 113, 112, 111, 110, 109, 108,
+ 107, 106, 104, 103, 102, 101, 100, 99, 97, 96,
+ 92, 88, 60, 48, 46, 43, 40, 27, 24, 16,
- 46, 43, 40, 27, 24, 16, 11, 7, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778,
- 778, 778, 778, 778, 778, 778, 778, 778, 778, 778
+ 11, 7, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781, 781, 781, 781, 781, 781,
+ 781, 781, 781, 781, 781
} ;
/* Table of booleans, true if rule could match eol. */
-static yyconst flex_int32_t yy_rule_can_match_eol[228] =
+static yyconst flex_int32_t yy_rule_can_match_eol[231] =
{ 0,
0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -963,7 +964,7 @@
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1, 0, 0, };
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, };
/* The intent behind this definition is that it'll catch
* any uses of REJECT which flex missed.
@@ -1008,6 +1009,7 @@
static int ES2_reserved_ES3_keyword(TParseContext *context, int token);
static int ES2_keyword_ES3_reserved(TParseContext *context, int token);
static int ES2_ident_ES3_keyword(TParseContext *context, int token);
+static int uint_constant(TParseContext *context);
#define INITIAL 0
#define COMMENT 1
@@ -1293,13 +1295,13 @@
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 >= 779 )
+ if ( yy_current_state >= 782 )
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 != 778 );
+ while ( yy_current_state != 781 );
yy_cp = yyg->yy_last_accepting_cpos;
yy_current_state = yyg->yy_last_accepting_state;
@@ -1751,210 +1753,222 @@
YY_BREAK
case 175:
YY_RULE_SETUP
-{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
+{ return uint_constant(context); }
YY_BREAK
case 176:
YY_RULE_SETUP
-{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
+{ return uint_constant(context); }
YY_BREAK
case 177:
YY_RULE_SETUP
-{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
+{ return uint_constant(context); }
YY_BREAK
case 178:
YY_RULE_SETUP
-{ return(ADD_ASSIGN); }
+{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
YY_BREAK
case 179:
YY_RULE_SETUP
-{ return(SUB_ASSIGN); }
+{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
YY_BREAK
case 180:
YY_RULE_SETUP
-{ return(MUL_ASSIGN); }
+{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
YY_BREAK
case 181:
YY_RULE_SETUP
-{ return(DIV_ASSIGN); }
+{ return(ADD_ASSIGN); }
YY_BREAK
case 182:
YY_RULE_SETUP
-{ return(MOD_ASSIGN); }
+{ return(SUB_ASSIGN); }
YY_BREAK
case 183:
YY_RULE_SETUP
-{ return(LEFT_ASSIGN); }
+{ return(MUL_ASSIGN); }
YY_BREAK
case 184:
YY_RULE_SETUP
-{ return(RIGHT_ASSIGN); }
+{ return(DIV_ASSIGN); }
YY_BREAK
case 185:
YY_RULE_SETUP
-{ return(AND_ASSIGN); }
+{ return(MOD_ASSIGN); }
YY_BREAK
case 186:
YY_RULE_SETUP
-{ return(XOR_ASSIGN); }
+{ return(LEFT_ASSIGN); }
YY_BREAK
case 187:
YY_RULE_SETUP
-{ return(OR_ASSIGN); }
+{ return(RIGHT_ASSIGN); }
YY_BREAK
case 188:
YY_RULE_SETUP
-{ return(INC_OP); }
+{ return(AND_ASSIGN); }
YY_BREAK
case 189:
YY_RULE_SETUP
-{ return(DEC_OP); }
+{ return(XOR_ASSIGN); }
YY_BREAK
case 190:
YY_RULE_SETUP
-{ return(AND_OP); }
+{ return(OR_ASSIGN); }
YY_BREAK
case 191:
YY_RULE_SETUP
-{ return(OR_OP); }
+{ return(INC_OP); }
YY_BREAK
case 192:
YY_RULE_SETUP
-{ return(XOR_OP); }
+{ return(DEC_OP); }
YY_BREAK
case 193:
YY_RULE_SETUP
-{ return(LE_OP); }
+{ return(AND_OP); }
YY_BREAK
case 194:
YY_RULE_SETUP
-{ return(GE_OP); }
+{ return(OR_OP); }
YY_BREAK
case 195:
YY_RULE_SETUP
-{ return(EQ_OP); }
+{ return(XOR_OP); }
YY_BREAK
case 196:
YY_RULE_SETUP
-{ return(NE_OP); }
+{ return(LE_OP); }
YY_BREAK
case 197:
YY_RULE_SETUP
-{ return(LEFT_OP); }
+{ return(GE_OP); }
YY_BREAK
case 198:
YY_RULE_SETUP
-{ return(RIGHT_OP); }
+{ return(EQ_OP); }
YY_BREAK
case 199:
YY_RULE_SETUP
-{ context->lexAfterType = false; return(SEMICOLON); }
+{ return(NE_OP); }
YY_BREAK
case 200:
YY_RULE_SETUP
-{ context->lexAfterType = false; return(LEFT_BRACE); }
+{ return(LEFT_OP); }
YY_BREAK
case 201:
YY_RULE_SETUP
-{ return(RIGHT_BRACE); }
+{ return(RIGHT_OP); }
YY_BREAK
case 202:
YY_RULE_SETUP
-{ if (context->inTypeParen) context->lexAfterType = false; return(COMMA); }
+{ context->lexAfterType = false; return(SEMICOLON); }
YY_BREAK
case 203:
YY_RULE_SETUP
-{ return(COLON); }
+{ context->lexAfterType = false; return(LEFT_BRACE); }
YY_BREAK
case 204:
YY_RULE_SETUP
-{ context->lexAfterType = false; return(EQUAL); }
+{ return(RIGHT_BRACE); }
YY_BREAK
case 205:
YY_RULE_SETUP
-{ context->lexAfterType = false; context->inTypeParen = true; return(LEFT_PAREN); }
+{ if (context->inTypeParen) context->lexAfterType = false; return(COMMA); }
YY_BREAK
case 206:
YY_RULE_SETUP
-{ context->inTypeParen = false; return(RIGHT_PAREN); }
+{ return(COLON); }
YY_BREAK
case 207:
YY_RULE_SETUP
-{ return(LEFT_BRACKET); }
+{ context->lexAfterType = false; return(EQUAL); }
YY_BREAK
case 208:
YY_RULE_SETUP
-{ return(RIGHT_BRACKET); }
+{ context->lexAfterType = false; context->inTypeParen = true; return(LEFT_PAREN); }
YY_BREAK
case 209:
YY_RULE_SETUP
-{ BEGIN(FIELDS); return(DOT); }
+{ context->inTypeParen = false; return(RIGHT_PAREN); }
YY_BREAK
case 210:
YY_RULE_SETUP
-{ return(BANG); }
+{ return(LEFT_BRACKET); }
YY_BREAK
case 211:
YY_RULE_SETUP
-{ return(DASH); }
+{ return(RIGHT_BRACKET); }
YY_BREAK
case 212:
YY_RULE_SETUP
-{ return(TILDE); }
+{ BEGIN(FIELDS); return(DOT); }
YY_BREAK
case 213:
YY_RULE_SETUP
-{ return(PLUS); }
+{ return(BANG); }
YY_BREAK
case 214:
YY_RULE_SETUP
-{ return(STAR); }
+{ return(DASH); }
YY_BREAK
case 215:
YY_RULE_SETUP
-{ return(SLASH); }
+{ return(TILDE); }
YY_BREAK
case 216:
YY_RULE_SETUP
-{ return(PERCENT); }
+{ return(PLUS); }
YY_BREAK
case 217:
YY_RULE_SETUP
-{ return(LEFT_ANGLE); }
+{ return(STAR); }
YY_BREAK
case 218:
YY_RULE_SETUP
-{ return(RIGHT_ANGLE); }
+{ return(SLASH); }
YY_BREAK
case 219:
YY_RULE_SETUP
-{ return(VERTICAL_BAR); }
+{ return(PERCENT); }
YY_BREAK
case 220:
YY_RULE_SETUP
-{ return(CARET); }
+{ return(LEFT_ANGLE); }
YY_BREAK
case 221:
YY_RULE_SETUP
-{ return(AMPERSAND); }
+{ return(RIGHT_ANGLE); }
YY_BREAK
case 222:
YY_RULE_SETUP
-{ return(QUESTION); }
+{ return(VERTICAL_BAR); }
YY_BREAK
case 223:
YY_RULE_SETUP
+{ return(CARET); }
+ YY_BREAK
+case 224:
+YY_RULE_SETUP
+{ return(AMPERSAND); }
+ YY_BREAK
+case 225:
+YY_RULE_SETUP
+{ return(QUESTION); }
+ YY_BREAK
+case 226:
+YY_RULE_SETUP
{
BEGIN(INITIAL);
yylval->lex.string = NewPoolTString(yytext);
return FIELD_SELECTION;
}
YY_BREAK
-case 224:
+case 227:
YY_RULE_SETUP
{}
YY_BREAK
-case 225:
-/* rule 225 can match eol */
+case 228:
+/* rule 228 can match eol */
YY_RULE_SETUP
{ }
YY_BREAK
@@ -1963,11 +1977,11 @@
case YY_STATE_EOF(FIELDS):
{ context->AfterEOF = true; yyterminate(); }
YY_BREAK
-case 226:
+case 229:
YY_RULE_SETUP
{ context->warning(yylineno, "Unknown char", yytext, ""); return 0; }
YY_BREAK
-case 227:
+case 230:
YY_RULE_SETUP
ECHO;
YY_BREAK
@@ -2263,7 +2277,7 @@
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 >= 779 )
+ if ( yy_current_state >= 782 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2292,11 +2306,11 @@
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 >= 779 )
+ if ( yy_current_state >= 782 )
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 == 778);
+ yy_is_jam = (yy_current_state == 781);
return yy_is_jam ? 0 : yy_current_state;
}
@@ -3219,6 +3233,22 @@
return token;
}
+int uint_constant(TParseContext *context)
+{
+ struct yyguts_t* yyg = (struct yyguts_t*) context->scanner;
+ yyscan_t yyscanner = (yyscan_t) context->scanner;
+
+ if (context->shaderVersion < 300)
+ {
+ context->error(yylineno, "Unsigned integers are unsupported prior to GLSL ES 3.00", yytext, "");
+ context->recover();
+ return 0;
+ }
+
+ yylval->lex.u = static_cast<unsigned int>(strtol(yytext, 0, 0));
+ return UINTCONSTANT;
+}
+
void yyerror(TParseContext* context, const char* reason) {
struct yyguts_t* yyg = (struct yyguts_t*) context->scanner;
diff --git a/src/compiler/glslang_tab.cpp b/src/compiler/glslang_tab.cpp
index ed7de2e..7c8d706 100644
--- a/src/compiler/glslang_tab.cpp
+++ b/src/compiler/glslang_tab.cpp
@@ -195,53 +195,54 @@
TYPE_NAME = 320,
FLOATCONSTANT = 321,
INTCONSTANT = 322,
- BOOLCONSTANT = 323,
- FIELD_SELECTION = 324,
- LEFT_OP = 325,
- RIGHT_OP = 326,
- INC_OP = 327,
- DEC_OP = 328,
- LE_OP = 329,
- GE_OP = 330,
- EQ_OP = 331,
- NE_OP = 332,
- AND_OP = 333,
- OR_OP = 334,
- XOR_OP = 335,
- MUL_ASSIGN = 336,
- DIV_ASSIGN = 337,
- ADD_ASSIGN = 338,
- MOD_ASSIGN = 339,
- LEFT_ASSIGN = 340,
- RIGHT_ASSIGN = 341,
- AND_ASSIGN = 342,
- XOR_ASSIGN = 343,
- OR_ASSIGN = 344,
- SUB_ASSIGN = 345,
- LEFT_PAREN = 346,
- RIGHT_PAREN = 347,
- LEFT_BRACKET = 348,
- RIGHT_BRACKET = 349,
- LEFT_BRACE = 350,
- RIGHT_BRACE = 351,
- DOT = 352,
- COMMA = 353,
- COLON = 354,
- EQUAL = 355,
- SEMICOLON = 356,
- BANG = 357,
- DASH = 358,
- TILDE = 359,
- PLUS = 360,
- STAR = 361,
- SLASH = 362,
- PERCENT = 363,
- LEFT_ANGLE = 364,
- RIGHT_ANGLE = 365,
- VERTICAL_BAR = 366,
- CARET = 367,
- AMPERSAND = 368,
- QUESTION = 369
+ UINTCONSTANT = 323,
+ BOOLCONSTANT = 324,
+ FIELD_SELECTION = 325,
+ LEFT_OP = 326,
+ RIGHT_OP = 327,
+ INC_OP = 328,
+ DEC_OP = 329,
+ LE_OP = 330,
+ GE_OP = 331,
+ EQ_OP = 332,
+ NE_OP = 333,
+ AND_OP = 334,
+ OR_OP = 335,
+ XOR_OP = 336,
+ MUL_ASSIGN = 337,
+ DIV_ASSIGN = 338,
+ ADD_ASSIGN = 339,
+ MOD_ASSIGN = 340,
+ LEFT_ASSIGN = 341,
+ RIGHT_ASSIGN = 342,
+ AND_ASSIGN = 343,
+ XOR_ASSIGN = 344,
+ OR_ASSIGN = 345,
+ SUB_ASSIGN = 346,
+ LEFT_PAREN = 347,
+ RIGHT_PAREN = 348,
+ LEFT_BRACKET = 349,
+ RIGHT_BRACKET = 350,
+ LEFT_BRACE = 351,
+ RIGHT_BRACE = 352,
+ DOT = 353,
+ COMMA = 354,
+ COLON = 355,
+ EQUAL = 356,
+ SEMICOLON = 357,
+ BANG = 358,
+ DASH = 359,
+ TILDE = 360,
+ PLUS = 361,
+ STAR = 362,
+ SLASH = 363,
+ PERCENT = 364,
+ LEFT_ANGLE = 365,
+ RIGHT_ANGLE = 366,
+ VERTICAL_BAR = 367,
+ CARET = 368,
+ AMPERSAND = 369,
+ QUESTION = 370
};
#endif
@@ -257,6 +258,7 @@
TString *string;
float f;
int i;
+ unsigned int u;
bool b;
};
TSymbol* symbol;
@@ -568,20 +570,20 @@
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 93
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 2054
+#define YYLAST 2065
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 115
+#define YYNTOKENS 116
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 87
/* YYNRULES -- Number of rules. */
-#define YYNRULES 226
+#define YYNRULES 227
/* YYNRULES -- Number of states. */
-#define YYNSTATES 342
+#define YYNSTATES 343
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 369
+#define YYMAXUTOK 370
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -625,7 +627,8 @@
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
- 105, 106, 107, 108, 109, 110, 111, 112, 113, 114
+ 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115
};
#if YYDEBUG
@@ -633,127 +636,127 @@
YYRHS. */
static const yytype_uint16 yyprhs[] =
{
- 0, 0, 3, 5, 7, 9, 11, 13, 17, 19,
- 24, 26, 30, 33, 36, 38, 40, 42, 46, 49,
- 52, 55, 57, 60, 64, 67, 69, 71, 73, 75,
- 78, 81, 84, 86, 88, 90, 92, 96, 100, 102,
- 106, 110, 112, 114, 118, 122, 126, 130, 132, 136,
- 140, 142, 144, 146, 148, 152, 154, 158, 160, 164,
- 166, 172, 174, 178, 180, 182, 184, 186, 188, 190,
- 194, 196, 199, 202, 205, 210, 216, 223, 233, 236,
- 238, 240, 243, 247, 251, 254, 260, 264, 267, 271,
- 274, 275, 277, 279, 281, 283, 285, 289, 295, 302,
- 308, 310, 313, 318, 324, 329, 332, 334, 337, 339,
- 341, 343, 345, 347, 350, 352, 355, 357, 359, 361,
- 363, 366, 369, 371, 373, 376, 378, 380, 382, 384,
- 389, 391, 393, 395, 397, 399, 401, 403, 405, 407,
+ 0, 0, 3, 5, 7, 9, 11, 13, 15, 19,
+ 21, 26, 28, 32, 35, 38, 40, 42, 44, 48,
+ 51, 54, 57, 59, 62, 66, 69, 71, 73, 75,
+ 77, 80, 83, 86, 88, 90, 92, 94, 98, 102,
+ 104, 108, 112, 114, 116, 120, 124, 128, 132, 134,
+ 138, 142, 144, 146, 148, 150, 154, 156, 160, 162,
+ 166, 168, 174, 176, 180, 182, 184, 186, 188, 190,
+ 192, 196, 198, 201, 204, 207, 212, 218, 225, 235,
+ 238, 240, 242, 245, 249, 253, 256, 262, 266, 269,
+ 273, 276, 277, 279, 281, 283, 285, 287, 291, 297,
+ 304, 310, 312, 315, 320, 326, 331, 334, 336, 339,
+ 341, 343, 345, 347, 349, 352, 354, 357, 359, 361,
+ 363, 365, 368, 371, 373, 375, 378, 380, 382, 384,
+ 386, 391, 393, 395, 397, 399, 401, 403, 405, 407,
409, 411, 413, 415, 417, 419, 421, 423, 425, 427,
429, 431, 433, 435, 437, 439, 441, 443, 445, 447,
- 449, 451, 453, 454, 461, 462, 468, 470, 473, 477,
- 482, 484, 488, 490, 495, 497, 499, 501, 503, 505,
- 507, 509, 511, 513, 516, 517, 518, 524, 526, 528,
- 529, 532, 533, 536, 539, 543, 545, 548, 550, 553,
- 559, 563, 565, 567, 572, 573, 580, 581, 590, 591,
- 599, 601, 603, 605, 606, 609, 613, 616, 619, 622,
- 626, 629, 631, 634, 636, 638, 639
+ 449, 451, 453, 455, 456, 463, 464, 470, 472, 475,
+ 479, 484, 486, 490, 492, 497, 499, 501, 503, 505,
+ 507, 509, 511, 513, 515, 518, 519, 520, 526, 528,
+ 530, 531, 534, 535, 538, 541, 545, 547, 550, 552,
+ 555, 561, 565, 567, 569, 574, 575, 582, 583, 592,
+ 593, 601, 603, 605, 607, 608, 611, 615, 618, 621,
+ 624, 628, 631, 633, 636, 638, 640, 641
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yytype_int16 yyrhs[] =
{
- 198, 0, -1, 64, -1, 116, -1, 67, -1, 66,
- -1, 68, -1, 91, 143, 92, -1, 117, -1, 118,
- 93, 119, 94, -1, 120, -1, 118, 97, 69, -1,
- 118, 72, -1, 118, 73, -1, 143, -1, 121, -1,
- 122, -1, 118, 97, 122, -1, 124, 92, -1, 123,
- 92, -1, 125, 55, -1, 125, -1, 125, 141, -1,
- 124, 98, 141, -1, 126, 91, -1, 165, -1, 64,
- -1, 69, -1, 118, -1, 72, 127, -1, 73, 127,
- -1, 128, 127, -1, 105, -1, 103, -1, 102, -1,
- 127, -1, 129, 106, 127, -1, 129, 107, 127, -1,
- 129, -1, 130, 105, 129, -1, 130, 103, 129, -1,
- 130, -1, 131, -1, 132, 109, 131, -1, 132, 110,
- 131, -1, 132, 74, 131, -1, 132, 75, 131, -1,
- 132, -1, 133, 76, 132, -1, 133, 77, 132, -1,
- 133, -1, 134, -1, 135, -1, 136, -1, 137, 78,
- 136, -1, 137, -1, 138, 80, 137, -1, 138, -1,
- 139, 79, 138, -1, 139, -1, 139, 114, 143, 99,
- 141, -1, 140, -1, 127, 142, 141, -1, 100, -1,
- 81, -1, 82, -1, 83, -1, 90, -1, 141, -1,
- 143, 98, 141, -1, 140, -1, 64, 95, -1, 147,
- 101, -1, 155, 101, -1, 7, 163, 164, 101, -1,
- 160, 145, 169, 96, 101, -1, 160, 145, 169, 96,
- 64, 101, -1, 160, 145, 169, 96, 64, 93, 144,
- 94, 101, -1, 148, 92, -1, 150, -1, 149, -1,
- 150, 152, -1, 149, 98, 152, -1, 157, 64, 91,
- -1, 162, 64, -1, 162, 64, 93, 144, 94, -1,
- 159, 153, 151, -1, 153, 151, -1, 159, 153, 154,
- -1, 153, 154, -1, -1, 40, -1, 41, -1, 42,
- -1, 162, -1, 156, -1, 155, 98, 64, -1, 155,
- 98, 64, 93, 94, -1, 155, 98, 64, 93, 144,
- 94, -1, 155, 98, 64, 100, 173, -1, 157, -1,
- 157, 64, -1, 157, 64, 93, 94, -1, 157, 64,
- 93, 144, 94, -1, 157, 64, 100, 173, -1, 3,
- 64, -1, 162, -1, 160, 162, -1, 53, -1, 52,
- -1, 9, -1, 8, -1, 44, -1, 3, 44, -1,
- 161, -1, 158, 161, -1, 158, -1, 9, -1, 40,
- -1, 41, -1, 51, 40, -1, 51, 41, -1, 43,
- -1, 164, -1, 163, 164, -1, 4, -1, 5, -1,
- 6, -1, 165, -1, 165, 93, 144, 94, -1, 55,
- -1, 11, -1, 12, -1, 13, -1, 10, -1, 31,
- -1, 32, -1, 33, -1, 25, -1, 26, -1, 27,
- -1, 28, -1, 29, -1, 30, -1, 34, -1, 35,
- -1, 36, -1, 37, -1, 38, -1, 39, -1, 45,
- -1, 46, -1, 47, -1, 48, -1, 49, -1, 50,
- -1, 57, -1, 58, -1, 59, -1, 60, -1, 166,
- -1, 65, -1, -1, 54, 64, 95, 167, 169, 96,
- -1, -1, 54, 95, 168, 169, 96, -1, 170, -1,
- 169, 170, -1, 162, 171, 101, -1, 160, 162, 171,
- 101, -1, 172, -1, 171, 98, 172, -1, 64, -1,
- 64, 93, 144, 94, -1, 141, -1, 146, -1, 177,
- -1, 176, -1, 174, -1, 186, -1, 187, -1, 190,
- -1, 197, -1, 95, 96, -1, -1, -1, 95, 178,
- 185, 179, 96, -1, 184, -1, 176, -1, -1, 182,
- 184, -1, -1, 183, 176, -1, 95, 96, -1, 95,
- 185, 96, -1, 175, -1, 185, 175, -1, 101, -1,
- 143, 101, -1, 19, 91, 143, 92, 188, -1, 181,
- 17, 181, -1, 181, -1, 143, -1, 157, 64, 100,
- 173, -1, -1, 56, 91, 191, 189, 92, 180, -1,
- -1, 16, 192, 181, 56, 91, 143, 92, 101, -1,
- -1, 18, 91, 193, 194, 196, 92, 180, -1, 186,
- -1, 174, -1, 189, -1, -1, 195, 101, -1, 195,
- 101, 143, -1, 15, 101, -1, 14, 101, -1, 21,
- 101, -1, 21, 143, 101, -1, 20, 101, -1, 199,
- -1, 198, 199, -1, 200, -1, 146, -1, -1, 147,
- 201, 184, -1
+ 199, 0, -1, 64, -1, 117, -1, 67, -1, 68,
+ -1, 66, -1, 69, -1, 92, 144, 93, -1, 118,
+ -1, 119, 94, 120, 95, -1, 121, -1, 119, 98,
+ 70, -1, 119, 73, -1, 119, 74, -1, 144, -1,
+ 122, -1, 123, -1, 119, 98, 123, -1, 125, 93,
+ -1, 124, 93, -1, 126, 55, -1, 126, -1, 126,
+ 142, -1, 125, 99, 142, -1, 127, 92, -1, 166,
+ -1, 64, -1, 70, -1, 119, -1, 73, 128, -1,
+ 74, 128, -1, 129, 128, -1, 106, -1, 104, -1,
+ 103, -1, 128, -1, 130, 107, 128, -1, 130, 108,
+ 128, -1, 130, -1, 131, 106, 130, -1, 131, 104,
+ 130, -1, 131, -1, 132, -1, 133, 110, 132, -1,
+ 133, 111, 132, -1, 133, 75, 132, -1, 133, 76,
+ 132, -1, 133, -1, 134, 77, 133, -1, 134, 78,
+ 133, -1, 134, -1, 135, -1, 136, -1, 137, -1,
+ 138, 79, 137, -1, 138, -1, 139, 81, 138, -1,
+ 139, -1, 140, 80, 139, -1, 140, -1, 140, 115,
+ 144, 100, 142, -1, 141, -1, 128, 143, 142, -1,
+ 101, -1, 82, -1, 83, -1, 84, -1, 91, -1,
+ 142, -1, 144, 99, 142, -1, 141, -1, 64, 96,
+ -1, 148, 102, -1, 156, 102, -1, 7, 164, 165,
+ 102, -1, 161, 146, 170, 97, 102, -1, 161, 146,
+ 170, 97, 64, 102, -1, 161, 146, 170, 97, 64,
+ 94, 145, 95, 102, -1, 149, 93, -1, 151, -1,
+ 150, -1, 151, 153, -1, 150, 99, 153, -1, 158,
+ 64, 92, -1, 163, 64, -1, 163, 64, 94, 145,
+ 95, -1, 160, 154, 152, -1, 154, 152, -1, 160,
+ 154, 155, -1, 154, 155, -1, -1, 40, -1, 41,
+ -1, 42, -1, 163, -1, 157, -1, 156, 99, 64,
+ -1, 156, 99, 64, 94, 95, -1, 156, 99, 64,
+ 94, 145, 95, -1, 156, 99, 64, 101, 174, -1,
+ 158, -1, 158, 64, -1, 158, 64, 94, 95, -1,
+ 158, 64, 94, 145, 95, -1, 158, 64, 101, 174,
+ -1, 3, 64, -1, 163, -1, 161, 163, -1, 53,
+ -1, 52, -1, 9, -1, 8, -1, 44, -1, 3,
+ 44, -1, 162, -1, 159, 162, -1, 159, -1, 9,
+ -1, 40, -1, 41, -1, 51, 40, -1, 51, 41,
+ -1, 43, -1, 165, -1, 164, 165, -1, 4, -1,
+ 5, -1, 6, -1, 166, -1, 166, 94, 145, 95,
+ -1, 55, -1, 11, -1, 12, -1, 13, -1, 10,
+ -1, 31, -1, 32, -1, 33, -1, 25, -1, 26,
+ -1, 27, -1, 28, -1, 29, -1, 30, -1, 34,
+ -1, 35, -1, 36, -1, 37, -1, 38, -1, 39,
+ -1, 45, -1, 46, -1, 47, -1, 48, -1, 49,
+ -1, 50, -1, 57, -1, 58, -1, 59, -1, 60,
+ -1, 167, -1, 65, -1, -1, 54, 64, 96, 168,
+ 170, 97, -1, -1, 54, 96, 169, 170, 97, -1,
+ 171, -1, 170, 171, -1, 163, 172, 102, -1, 161,
+ 163, 172, 102, -1, 173, -1, 172, 99, 173, -1,
+ 64, -1, 64, 94, 145, 95, -1, 142, -1, 147,
+ -1, 178, -1, 177, -1, 175, -1, 187, -1, 188,
+ -1, 191, -1, 198, -1, 96, 97, -1, -1, -1,
+ 96, 179, 186, 180, 97, -1, 185, -1, 177, -1,
+ -1, 183, 185, -1, -1, 184, 177, -1, 96, 97,
+ -1, 96, 186, 97, -1, 176, -1, 186, 176, -1,
+ 102, -1, 144, 102, -1, 19, 92, 144, 93, 189,
+ -1, 182, 17, 182, -1, 182, -1, 144, -1, 158,
+ 64, 101, 174, -1, -1, 56, 92, 192, 190, 93,
+ 181, -1, -1, 16, 193, 182, 56, 92, 144, 93,
+ 102, -1, -1, 18, 92, 194, 195, 197, 93, 181,
+ -1, 187, -1, 175, -1, 190, -1, -1, 196, 102,
+ -1, 196, 102, 144, -1, 15, 102, -1, 14, 102,
+ -1, 21, 102, -1, 21, 144, 102, -1, 20, 102,
+ -1, 200, -1, 199, 200, -1, 201, -1, 147, -1,
+ -1, 148, 202, 185, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 187, 187, 222, 225, 230, 235, 240, 246, 249,
- 252, 255, 258, 268, 281, 289, 389, 392, 400, 404,
- 411, 415, 422, 428, 437, 445, 448, 455, 465, 468,
- 478, 488, 509, 510, 511, 516, 517, 526, 538, 539,
- 547, 558, 562, 563, 573, 583, 593, 606, 607, 617,
- 630, 634, 638, 642, 643, 656, 657, 670, 671, 684,
- 685, 702, 703, 716, 717, 718, 719, 720, 724, 727,
- 738, 746, 754, 781, 786, 797, 801, 805, 812, 850,
- 853, 860, 868, 889, 910, 921, 950, 955, 965, 970,
- 980, 983, 986, 989, 995, 1002, 1005, 1027, 1045, 1069,
- 1092, 1096, 1114, 1122, 1154, 1174, 1263, 1272, 1278, 1282,
- 1289, 1295, 1302, 1311, 1320, 1323, 1359, 1369, 1373, 1378,
- 1383, 1388, 1393, 1402, 1412, 1419, 1422, 1425, 1431, 1434,
- 1449, 1453, 1457, 1461, 1465, 1469, 1474, 1479, 1484, 1489,
- 1494, 1499, 1504, 1509, 1514, 1519, 1524, 1529, 1535, 1541,
- 1547, 1552, 1557, 1562, 1567, 1572, 1577, 1582, 1587, 1596,
- 1605, 1610, 1623, 1623, 1626, 1626, 1632, 1635, 1650, 1653,
- 1661, 1665, 1671, 1679, 1695, 1699, 1703, 1704, 1710, 1711,
- 1712, 1713, 1714, 1718, 1719, 1719, 1719, 1729, 1730, 1734,
- 1734, 1735, 1735, 1740, 1743, 1753, 1756, 1762, 1763, 1767,
- 1775, 1779, 1789, 1794, 1811, 1811, 1816, 1816, 1823, 1823,
- 1831, 1834, 1840, 1843, 1849, 1853, 1860, 1867, 1874, 1881,
- 1892, 1901, 1905, 1912, 1915, 1921, 1921
+ 0, 188, 188, 223, 226, 231, 236, 241, 246, 252,
+ 255, 258, 261, 264, 274, 287, 295, 395, 398, 406,
+ 410, 417, 421, 428, 434, 443, 451, 454, 461, 471,
+ 474, 484, 494, 515, 516, 517, 522, 523, 532, 544,
+ 545, 553, 564, 568, 569, 579, 589, 599, 612, 613,
+ 623, 636, 640, 644, 648, 649, 662, 663, 676, 677,
+ 690, 691, 708, 709, 722, 723, 724, 725, 726, 730,
+ 733, 744, 752, 760, 787, 792, 803, 807, 811, 818,
+ 856, 859, 866, 874, 895, 916, 927, 956, 961, 971,
+ 976, 986, 989, 992, 995, 1001, 1008, 1011, 1033, 1051,
+ 1075, 1098, 1102, 1120, 1128, 1160, 1180, 1269, 1278, 1284,
+ 1288, 1295, 1301, 1308, 1317, 1326, 1329, 1365, 1375, 1379,
+ 1384, 1389, 1394, 1399, 1408, 1418, 1425, 1428, 1431, 1437,
+ 1440, 1455, 1459, 1463, 1467, 1471, 1475, 1480, 1485, 1490,
+ 1495, 1500, 1505, 1510, 1515, 1520, 1525, 1530, 1535, 1541,
+ 1547, 1553, 1558, 1563, 1568, 1573, 1578, 1583, 1588, 1593,
+ 1602, 1611, 1616, 1629, 1629, 1632, 1632, 1638, 1641, 1656,
+ 1659, 1667, 1671, 1677, 1685, 1701, 1705, 1709, 1710, 1716,
+ 1717, 1718, 1719, 1720, 1724, 1725, 1725, 1725, 1735, 1736,
+ 1740, 1740, 1741, 1741, 1746, 1749, 1759, 1762, 1768, 1769,
+ 1773, 1781, 1785, 1795, 1800, 1817, 1817, 1822, 1822, 1829,
+ 1829, 1837, 1840, 1846, 1849, 1855, 1859, 1866, 1873, 1880,
+ 1887, 1898, 1907, 1911, 1918, 1921, 1927, 1927
};
#endif
@@ -774,11 +777,11 @@
"VOID_TYPE", "WHILE", "SAMPLER2D", "SAMPLERCUBE", "SAMPLER_EXTERNAL_OES",
"SAMPLER2DRECT", "SAMPLER3D", "SAMPLER3DRECT", "SAMPLER2DSHADOW",
"IDENTIFIER", "TYPE_NAME", "FLOATCONSTANT", "INTCONSTANT",
- "BOOLCONSTANT", "FIELD_SELECTION", "LEFT_OP", "RIGHT_OP", "INC_OP",
- "DEC_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP",
- "XOR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "ADD_ASSIGN", "MOD_ASSIGN",
- "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN",
- "SUB_ASSIGN", "LEFT_PAREN", "RIGHT_PAREN", "LEFT_BRACKET",
+ "UINTCONSTANT", "BOOLCONSTANT", "FIELD_SELECTION", "LEFT_OP", "RIGHT_OP",
+ "INC_OP", "DEC_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP",
+ "OR_OP", "XOR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "ADD_ASSIGN",
+ "MOD_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN",
+ "OR_ASSIGN", "SUB_ASSIGN", "LEFT_PAREN", "RIGHT_PAREN", "LEFT_BRACKET",
"RIGHT_BRACKET", "LEFT_BRACE", "RIGHT_BRACE", "DOT", "COMMA", "COLON",
"EQUAL", "SEMICOLON", "BANG", "DASH", "TILDE", "PLUS", "STAR", "SLASH",
"PERCENT", "LEFT_ANGLE", "RIGHT_ANGLE", "VERTICAL_BAR", "CARET",
@@ -832,64 +835,64 @@
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
- 365, 366, 367, 368, 369
+ 365, 366, 367, 368, 369, 370
};
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 0, 115, 116, 117, 117, 117, 117, 117, 118, 118,
- 118, 118, 118, 118, 119, 120, 121, 121, 122, 122,
- 123, 123, 124, 124, 125, 126, 126, 126, 127, 127,
- 127, 127, 128, 128, 128, 129, 129, 129, 130, 130,
- 130, 131, 132, 132, 132, 132, 132, 133, 133, 133,
- 134, 135, 136, 137, 137, 138, 138, 139, 139, 140,
- 140, 141, 141, 142, 142, 142, 142, 142, 143, 143,
- 144, 145, 146, 146, 146, 146, 146, 146, 147, 148,
- 148, 149, 149, 150, 151, 151, 152, 152, 152, 152,
- 153, 153, 153, 153, 154, 155, 155, 155, 155, 155,
- 156, 156, 156, 156, 156, 156, 157, 157, 158, 158,
- 159, 160, 160, 160, 160, 160, 160, 161, 161, 161,
- 161, 161, 161, 162, 162, 163, 163, 163, 164, 164,
- 165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- 165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- 165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- 165, 165, 167, 166, 168, 166, 169, 169, 170, 170,
- 171, 171, 172, 172, 173, 174, 175, 175, 176, 176,
- 176, 176, 176, 177, 178, 179, 177, 180, 180, 182,
- 181, 183, 181, 184, 184, 185, 185, 186, 186, 187,
- 188, 188, 189, 189, 191, 190, 192, 190, 193, 190,
- 194, 194, 195, 195, 196, 196, 197, 197, 197, 197,
- 197, 198, 198, 199, 199, 201, 200
+ 0, 116, 117, 118, 118, 118, 118, 118, 118, 119,
+ 119, 119, 119, 119, 119, 120, 121, 122, 122, 123,
+ 123, 124, 124, 125, 125, 126, 127, 127, 127, 128,
+ 128, 128, 128, 129, 129, 129, 130, 130, 130, 131,
+ 131, 131, 132, 133, 133, 133, 133, 133, 134, 134,
+ 134, 135, 136, 137, 138, 138, 139, 139, 140, 140,
+ 141, 141, 142, 142, 143, 143, 143, 143, 143, 144,
+ 144, 145, 146, 147, 147, 147, 147, 147, 147, 148,
+ 149, 149, 150, 150, 151, 152, 152, 153, 153, 153,
+ 153, 154, 154, 154, 154, 155, 156, 156, 156, 156,
+ 156, 157, 157, 157, 157, 157, 157, 158, 158, 159,
+ 159, 160, 161, 161, 161, 161, 161, 161, 162, 162,
+ 162, 162, 162, 162, 163, 163, 164, 164, 164, 165,
+ 165, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 168, 167, 169, 167, 170, 170, 171,
+ 171, 172, 172, 173, 173, 174, 175, 176, 176, 177,
+ 177, 177, 177, 177, 178, 179, 180, 178, 181, 181,
+ 183, 182, 184, 182, 185, 185, 186, 186, 187, 187,
+ 188, 189, 189, 190, 190, 192, 191, 193, 191, 194,
+ 191, 195, 195, 196, 196, 197, 197, 198, 198, 198,
+ 198, 198, 199, 199, 200, 200, 202, 201
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
static const yytype_uint8 yyr2[] =
{
- 0, 2, 1, 1, 1, 1, 1, 3, 1, 4,
- 1, 3, 2, 2, 1, 1, 1, 3, 2, 2,
- 2, 1, 2, 3, 2, 1, 1, 1, 1, 2,
- 2, 2, 1, 1, 1, 1, 3, 3, 1, 3,
- 3, 1, 1, 3, 3, 3, 3, 1, 3, 3,
- 1, 1, 1, 1, 3, 1, 3, 1, 3, 1,
- 5, 1, 3, 1, 1, 1, 1, 1, 1, 3,
- 1, 2, 2, 2, 4, 5, 6, 9, 2, 1,
- 1, 2, 3, 3, 2, 5, 3, 2, 3, 2,
- 0, 1, 1, 1, 1, 1, 3, 5, 6, 5,
- 1, 2, 4, 5, 4, 2, 1, 2, 1, 1,
- 1, 1, 1, 2, 1, 2, 1, 1, 1, 1,
- 2, 2, 1, 1, 2, 1, 1, 1, 1, 4,
+ 0, 2, 1, 1, 1, 1, 1, 1, 3, 1,
+ 4, 1, 3, 2, 2, 1, 1, 1, 3, 2,
+ 2, 2, 1, 2, 3, 2, 1, 1, 1, 1,
+ 2, 2, 2, 1, 1, 1, 1, 3, 3, 1,
+ 3, 3, 1, 1, 3, 3, 3, 3, 1, 3,
+ 3, 1, 1, 1, 1, 3, 1, 3, 1, 3,
+ 1, 5, 1, 3, 1, 1, 1, 1, 1, 1,
+ 3, 1, 2, 2, 2, 4, 5, 6, 9, 2,
+ 1, 1, 2, 3, 3, 2, 5, 3, 2, 3,
+ 2, 0, 1, 1, 1, 1, 1, 3, 5, 6,
+ 5, 1, 2, 4, 5, 4, 2, 1, 2, 1,
+ 1, 1, 1, 1, 2, 1, 2, 1, 1, 1,
+ 1, 2, 2, 1, 1, 2, 1, 1, 1, 1,
+ 4, 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, 0, 6, 0, 5, 1, 2, 3, 4,
- 1, 3, 1, 4, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 2, 0, 0, 5, 1, 1, 0,
- 2, 0, 2, 2, 3, 1, 2, 1, 2, 5,
- 3, 1, 1, 4, 0, 6, 0, 8, 0, 7,
- 1, 1, 1, 0, 2, 3, 2, 2, 2, 3,
- 2, 1, 2, 1, 1, 0, 3
+ 1, 1, 1, 0, 6, 0, 5, 1, 2, 3,
+ 4, 1, 3, 1, 4, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 2, 0, 0, 5, 1, 1,
+ 0, 2, 0, 2, 2, 3, 1, 2, 1, 2,
+ 5, 3, 1, 1, 4, 0, 6, 0, 8, 0,
+ 7, 1, 1, 1, 0, 2, 3, 2, 2, 2,
+ 3, 2, 1, 2, 1, 1, 0, 3
};
/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
@@ -897,541 +900,543 @@
means the default is an error. */
static const yytype_uint8 yydefact[] =
{
- 0, 0, 125, 126, 127, 0, 111, 117, 134, 131,
- 132, 133, 138, 139, 140, 141, 142, 143, 135, 136,
- 137, 144, 145, 146, 147, 148, 149, 118, 119, 122,
- 112, 150, 151, 152, 153, 154, 155, 0, 109, 108,
- 0, 130, 156, 157, 158, 159, 161, 224, 225, 0,
- 80, 90, 0, 95, 100, 116, 0, 114, 106, 0,
- 123, 128, 160, 0, 221, 223, 113, 105, 0, 120,
- 121, 0, 164, 72, 0, 78, 90, 110, 91, 92,
- 93, 81, 0, 90, 0, 73, 101, 115, 0, 0,
- 107, 124, 0, 1, 222, 0, 162, 0, 0, 226,
- 82, 87, 89, 94, 0, 96, 83, 0, 0, 71,
- 0, 0, 0, 0, 166, 2, 5, 4, 6, 27,
- 0, 0, 0, 34, 33, 32, 3, 8, 28, 10,
- 15, 16, 0, 0, 21, 0, 35, 0, 38, 41,
- 42, 47, 50, 51, 52, 53, 55, 57, 59, 70,
- 0, 25, 74, 0, 0, 0, 0, 206, 0, 0,
- 0, 0, 0, 184, 193, 197, 35, 61, 68, 0,
- 175, 0, 128, 178, 195, 177, 176, 0, 179, 180,
- 181, 182, 84, 86, 88, 0, 0, 102, 0, 174,
- 104, 0, 172, 0, 170, 0, 167, 29, 30, 0,
- 12, 13, 0, 0, 19, 18, 0, 20, 22, 24,
- 31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 129, 0, 165, 217, 216,
- 191, 208, 0, 220, 218, 0, 204, 183, 0, 64,
- 65, 66, 67, 63, 0, 0, 198, 194, 196, 0,
- 97, 0, 99, 103, 0, 0, 0, 168, 0, 75,
- 7, 0, 14, 26, 11, 17, 23, 36, 37, 40,
- 39, 45, 46, 43, 44, 48, 49, 54, 56, 58,
- 0, 163, 0, 0, 0, 0, 0, 219, 0, 185,
- 62, 69, 0, 98, 169, 0, 171, 0, 76, 9,
- 0, 0, 190, 192, 211, 210, 213, 191, 202, 0,
- 0, 0, 0, 85, 173, 0, 60, 0, 212, 0,
- 0, 201, 199, 0, 0, 186, 0, 0, 214, 0,
- 191, 0, 188, 205, 187, 77, 0, 215, 209, 200,
- 203, 207
+ 0, 0, 126, 127, 128, 0, 112, 118, 135, 132,
+ 133, 134, 139, 140, 141, 142, 143, 144, 136, 137,
+ 138, 145, 146, 147, 148, 149, 150, 119, 120, 123,
+ 113, 151, 152, 153, 154, 155, 156, 0, 110, 109,
+ 0, 131, 157, 158, 159, 160, 162, 225, 226, 0,
+ 81, 91, 0, 96, 101, 117, 0, 115, 107, 0,
+ 124, 129, 161, 0, 222, 224, 114, 106, 0, 121,
+ 122, 0, 165, 73, 0, 79, 91, 111, 92, 93,
+ 94, 82, 0, 91, 0, 74, 102, 116, 0, 0,
+ 108, 125, 0, 1, 223, 0, 163, 0, 0, 227,
+ 83, 88, 90, 95, 0, 97, 84, 0, 0, 72,
+ 0, 0, 0, 0, 167, 2, 6, 4, 5, 7,
+ 28, 0, 0, 0, 35, 34, 33, 3, 9, 29,
+ 11, 16, 17, 0, 0, 22, 0, 36, 0, 39,
+ 42, 43, 48, 51, 52, 53, 54, 56, 58, 60,
+ 71, 0, 26, 75, 0, 0, 0, 0, 207, 0,
+ 0, 0, 0, 0, 185, 194, 198, 36, 62, 69,
+ 0, 176, 0, 129, 179, 196, 178, 177, 0, 180,
+ 181, 182, 183, 85, 87, 89, 0, 0, 103, 0,
+ 175, 105, 0, 173, 0, 171, 0, 168, 30, 31,
+ 0, 13, 14, 0, 0, 20, 19, 0, 21, 23,
+ 25, 32, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 130, 0, 166, 218,
+ 217, 192, 209, 0, 221, 219, 0, 205, 184, 0,
+ 65, 66, 67, 68, 64, 0, 0, 199, 195, 197,
+ 0, 98, 0, 100, 104, 0, 0, 0, 169, 0,
+ 76, 8, 0, 15, 27, 12, 18, 24, 37, 38,
+ 41, 40, 46, 47, 44, 45, 49, 50, 55, 57,
+ 59, 0, 164, 0, 0, 0, 0, 0, 220, 0,
+ 186, 63, 70, 0, 99, 170, 0, 172, 0, 77,
+ 10, 0, 0, 191, 193, 212, 211, 214, 192, 203,
+ 0, 0, 0, 0, 86, 174, 0, 61, 0, 213,
+ 0, 0, 202, 200, 0, 0, 187, 0, 0, 215,
+ 0, 192, 0, 189, 206, 188, 78, 0, 216, 210,
+ 201, 204, 208
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- -1, 126, 127, 128, 261, 129, 130, 131, 132, 133,
- 134, 135, 166, 137, 138, 139, 140, 141, 142, 143,
- 144, 145, 146, 147, 148, 167, 168, 244, 169, 150,
- 89, 170, 171, 49, 50, 51, 101, 81, 82, 102,
+ -1, 127, 128, 129, 262, 130, 131, 132, 133, 134,
+ 135, 136, 167, 138, 139, 140, 141, 142, 143, 144,
+ 145, 146, 147, 148, 149, 168, 169, 245, 170, 151,
+ 89, 171, 172, 49, 50, 51, 101, 81, 82, 102,
52, 53, 54, 55, 83, 56, 57, 58, 59, 60,
- 151, 62, 153, 97, 113, 114, 193, 194, 190, 173,
- 174, 175, 176, 238, 312, 333, 282, 283, 284, 334,
- 177, 178, 179, 322, 311, 180, 288, 230, 285, 306,
- 319, 320, 181, 63, 64, 65, 74
+ 152, 62, 154, 97, 113, 114, 194, 195, 191, 174,
+ 175, 176, 177, 239, 313, 334, 283, 284, 285, 335,
+ 178, 179, 180, 323, 312, 181, 289, 231, 286, 307,
+ 320, 321, 182, 63, 64, 65, 74
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -292
+#define YYPACT_NINF -298
static const yytype_int16 yypact[] =
{
- 1706, -24, -292, -292, -292, 154, -292, -292, -292, -292,
- -292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
- -292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
- -292, -292, -292, -292, -292, -292, -292, 55, -292, -292,
- -46, -292, -292, -292, -292, -292, -292, -292, -67, -28,
- -55, 13, 24, -292, -14, 33, 1821, -292, -292, 1989,
- -292, -3, -292, 1643, -292, -292, -292, -292, 1989, -292,
- -292, -17, -292, -292, -9, -292, 52, -292, -292, -292,
- -292, -292, 1878, 121, 45, -292, 21, -292, 36, 1764,
- -292, -292, 1261, -292, -292, 18, -292, 1764, 328, -292,
- -292, -292, -292, 72, 1878, -62, -292, 1009, 1261, -292,
- 112, 1878, 111, 1427, -292, 87, -292, -292, -292, -292,
- 1261, 1261, 1261, -292, -292, -292, -292, -292, 35, -292,
- -292, -292, 88, -73, 1343, 90, -292, 1261, -4, 30,
- -292, -29, 70, -292, -292, -292, 101, 102, -42, -292,
- 89, -292, -292, 1764, 1499, 83, 85, -292, 96, 97,
- 93, 1094, 98, 94, -292, -292, 34, -292, -292, 28,
- -292, -67, -58, -292, -292, -292, -292, 431, -292, -292,
- -292, -292, 103, -292, -292, 1176, 1261, -292, 104, -292,
- -292, 111, 107, 29, -292, -49, -292, -292, -292, -27,
- -292, -292, 1261, 1929, -292, -292, 1261, 100, -292, -292,
- -292, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261,
- 1261, 1261, 1261, 1261, 1261, -292, 1571, -292, -292, -292,
- 109, -292, 1261, -292, -292, 47, -292, -292, 534, -292,
- -292, -292, -292, -292, 1261, 1261, -292, -292, -292, 1261,
- -292, 108, -292, -292, 51, 1261, 111, -292, -69, -292,
- -292, 113, 99, -292, 114, -292, -292, -292, -292, -4,
- -4, -292, -292, -292, -292, -29, -29, -292, 101, 102,
- 66, -292, 139, -9, 740, 843, -15, -292, 927, 534,
- -292, -292, 115, -292, -292, 116, -292, 1261, -292, -292,
- 1261, 117, -292, -292, -292, -292, 927, 109, 99, 142,
- 1878, 119, 120, -292, -292, 118, -292, 1261, -292, 122,
- 123, 200, -292, 125, 637, -292, 126, -7, 1261, 637,
- 109, 1261, -292, -292, -292, -292, 127, 99, -292, -292,
- -292, -292
+ 1721, -25, -298, -298, -298, 167, -298, -298, -298, -298,
+ -298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
+ -298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
+ -298, -298, -298, -298, -298, -298, -298, -20, -298, -298,
+ -47, -298, -298, -298, -298, -298, -298, -298, -77, -31,
+ -34, 33, -54, -298, -33, 52, 1836, -298, -298, 2000,
+ -298, -13, -298, 1658, -298, -298, -298, -298, 2000, -298,
+ -298, -50, -298, -298, -26, -298, 68, -298, -298, -298,
+ -298, -298, 1893, 135, 56, -298, -68, -298, 11, 1779,
+ -298, -298, 1271, -298, -298, 23, -298, 1779, 328, -298,
+ -298, -298, -298, 77, 1893, -37, -298, 1016, 1271, -298,
+ 104, 1893, 115, 1439, -298, 60, -298, -298, -298, -298,
+ -298, 1271, 1271, 1271, -298, -298, -298, -298, -298, 42,
+ -298, -298, -298, 100, -14, 1354, 110, -298, 1271, 76,
+ 45, -298, 12, 108, -298, -298, -298, 121, 122, -62,
+ -298, 109, -298, -298, 1779, 1512, 103, 105, -298, 116,
+ 117, 111, 1102, 119, 118, -298, -298, 46, -298, -298,
+ -8, -298, -77, 88, -298, -298, -298, -298, 432, -298,
+ -298, -298, -298, 120, -298, -298, 1185, 1271, -298, 123,
+ -298, -298, 115, 125, 25, -298, -48, -298, -298, -298,
+ -3, -298, -298, 1271, 1944, -298, -298, 1271, 124, -298,
+ -298, -298, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271,
+ 1271, 1271, 1271, 1271, 1271, 1271, -298, 1585, -298, -298,
+ -298, 126, -298, 1271, -298, -298, 43, -298, -298, 536,
+ -298, -298, -298, -298, -298, 1271, 1271, -298, -298, -298,
+ 1271, -298, 128, -298, -298, 44, 1271, 115, -298, -67,
+ -298, -298, 131, 129, -298, 138, -298, -298, -298, -298,
+ 76, 76, -298, -298, -298, -298, 12, 12, -298, 121,
+ 122, 90, -298, 161, -26, 744, 848, 6, -298, 933,
+ 536, -298, -298, 136, -298, -298, 137, -298, 1271, -298,
+ -298, 1271, 141, -298, -298, -298, -298, 933, 126, 129,
+ 156, 1893, 142, 139, -298, -298, 143, -298, 1271, -298,
+ 132, 144, 204, -298, 140, 640, -298, 145, 19, 1271,
+ 640, 126, 1271, -298, -298, -298, -298, 146, 129, -298,
+ -298, -298, -298
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -292, -292, -292, -292, -292, -292, -292, 17, -292, -292,
- -292, -292, 48, -292, -47, -292, -74, -48, -292, -292,
- -292, 1, -1, 7, -292, -79, -107, -292, -114, -98,
- -292, 6, 12, -292, -292, -292, 128, 153, 148, 130,
- -292, -292, -265, -292, -292, -87, 180, -53, 231, -38,
- 0, -292, -292, -292, -83, -106, 46, -16, -181, -44,
- -166, -267, -292, -292, -292, -90, -291, -292, -292, -70,
- 4, -41, -292, -292, -63, -292, -292, -292, -292, -292,
- -292, -292, -292, -292, 182, -292, -292
+ -298, -298, -298, -298, -298, -298, -298, 36, -298, -298,
+ -298, -298, -55, -298, -23, -298, -84, -24, -298, -298,
+ -298, 20, 21, 22, -298, -69, -107, -298, -119, -100,
+ -298, 13, 15, -298, -298, -298, 147, 169, 166, 148,
+ -298, -298, -267, -298, -298, -83, 195, -53, 248, -27,
+ 0, -298, -298, -298, -85, -108, 62, -2, -179, -30,
+ -169, -275, -298, -298, -298, -73, -297, -298, -298, -72,
+ 24, -22, -298, -298, -46, -298, -298, -298, -298, -298,
+ -298, -298, -298, -298, 196, -298, -298
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule which
number is the opposite. If YYTABLE_NINF, syntax error. */
-#define YYTABLE_NINF -190
+#define YYTABLE_NINF -191
static const yytype_int16 yytable[] =
{
- 61, 189, 111, 90, 99, 252, 47, 196, 199, 188,
- 111, 248, 48, 149, 154, 258, 321, 303, 71, 205,
- 66, 91, 77, 309, 297, 206, 111, 208, 149, 103,
- 95, 185, 298, -25, 73, 92, 112, 223, 186, 339,
- 67, 309, 7, 76, 112, 215, 216, 235, 196, 72,
- 86, 103, 259, 78, 79, 80, 61, 332, 191, 61,
- 112, 77, 332, 61, 75, 260, 111, 111, 61, 47,
- 226, 245, 224, 27, 28, 48, 29, 307, 96, 189,
- 217, 218, 61, 245, 37, 336, 98, 251, 262, 61,
- 92, 245, 78, 79, 80, 69, 70, 61, 172, 266,
- 112, 112, 211, 212, 61, -79, 149, 200, 201, 105,
- 280, 61, 106, 61, 107, 239, 240, 241, 286, 152,
- 196, 108, 84, 248, 242, 85, 245, 256, 202, 246,
- 257, 109, 203, 213, 243, 214, 182, 290, 291, 111,
- 136, 271, 272, 273, 274, 245, 219, 220, 287, 256,
- 340, 292, 294, 61, 61, 136, 66, 295, 2, 3,
- 4, 78, 79, 80, 245, 300, 269, 270, 197, 198,
- 149, 275, 276, 112, 308, 192, 149, 172, -26, 221,
- 204, 209, 222, 225, 228, 210, 229, 231, 232, 236,
- 237, -130, 308, 316, 233, 301, 249, 245, 253, 315,
- 255, 310, 293, 327, -189, -27, 323, 299, 317, 313,
- 314, 324, 326, 302, 337, 329, 325, 330, 149, 310,
- 265, 278, 277, 328, 189, 331, 61, 335, 341, 100,
- 279, 104, 183, 136, 184, 87, 68, 254, 172, 338,
- 296, 304, 289, 318, 305, 94, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 90, 0, 267,
- 268, 136, 136, 136, 136, 136, 136, 136, 136, 136,
- 136, 136, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 172, 172, 0, 0, 172, 172,
- 0, 0, 0, 0, 0, 0, 0, 136, 0, 0,
- 0, 0, 0, 136, 0, 0, 172, 0, 0, 0,
- 61, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 172, 0, 0, 0, 0, 172,
- 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
- 10, 11, 155, 156, 157, 136, 158, 159, 160, 161,
+ 61, 190, 99, 90, 200, 197, 111, 189, 253, 249,
+ 304, 322, 155, 47, 111, 48, 259, 71, 224, 66,
+ 69, 70, 310, 150, 106, 73, 107, 298, 209, 103,
+ 111, 86, 91, 108, 340, 299, 112, 137, 150, 67,
+ 310, 95, 77, 236, 112, 84, 96, 197, 85, 72,
+ 333, 103, 137, 225, 260, 333, 61, 186, 192, 61,
+ 112, 7, 75, 61, 187, 76, 198, 199, 61, 227,
+ 98, 111, 111, 78, 79, 80, 47, 77, 48, 206,
+ 190, 92, 61, 211, 263, 207, 252, 216, 217, 61,
+ 261, 246, 27, 28, 247, 29, 246, 61, 173, 308,
+ 267, 112, 112, 37, 61, 246, 281, 109, 78, 79,
+ 80, 61, 337, 61, 287, 201, 202, 150, 246, 197,
+ 105, 249, 218, 219, 257, 153, -80, 258, 240, 241,
+ 242, 137, 272, 273, 274, 275, 203, 243, 291, 292,
+ 204, 183, 246, 257, 111, 288, 295, 244, 66, 214,
+ 293, 215, -27, 341, 61, 61, 296, 268, 269, 137,
+ 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
+ 309, 2, 3, 4, 112, 78, 79, 80, 173, 193,
+ -26, 150, 92, 212, 213, 220, 221, 150, 309, 246,
+ 301, 270, 271, 205, 317, 137, 276, 277, 316, 328,
+ 222, 137, 210, 223, 226, 229, 311, 230, 232, 233,
+ 338, 237, 303, 234, 250, 238, -131, 302, 254, 256,
+ 324, 331, -190, 294, 311, 190, 300, 61, 246, 150,
+ -28, 314, 315, 318, 329, 325, 326, 330, 327, 173,
+ 266, 332, 278, 137, 279, 100, 280, 336, 342, 104,
+ 87, 184, 185, 68, 255, 297, 305, 339, 90, 94,
+ 0, 319, 0, 290, 306, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 173, 173, 0, 0, 173,
+ 173, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 173, 0, 0,
+ 0, 61, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 173, 0, 0, 0, 0,
+ 173, 1, 2, 3, 4, 5, 6, 7, 8, 9,
+ 10, 11, 156, 157, 158, 0, 159, 160, 161, 162,
0, 0, 0, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
0, 29, 30, 31, 32, 33, 34, 35, 36, 37,
- 38, 39, 40, 41, 162, 42, 43, 44, 45, 0,
- 0, 0, 115, 46, 116, 117, 118, 119, 0, 0,
- 120, 121, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 122,
- 0, 0, 0, 163, 164, 0, 0, 0, 0, 165,
- 123, 124, 0, 125, 1, 2, 3, 4, 5, 6,
- 7, 8, 9, 10, 11, 155, 156, 157, 0, 158,
- 159, 160, 161, 0, 0, 0, 12, 13, 14, 15,
- 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 0, 29, 30, 31, 32, 33, 34,
- 35, 36, 37, 38, 39, 40, 41, 162, 42, 43,
- 44, 45, 0, 0, 0, 115, 46, 116, 117, 118,
- 119, 0, 0, 120, 121, 0, 0, 0, 0, 0,
+ 38, 39, 40, 41, 163, 42, 43, 44, 45, 0,
+ 0, 0, 115, 46, 116, 117, 118, 119, 120, 0,
+ 0, 121, 122, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 122, 0, 0, 0, 163, 247, 0, 0,
- 0, 0, 165, 123, 124, 0, 125, 1, 2, 3,
- 4, 5, 6, 7, 8, 9, 10, 11, 155, 156,
- 157, 0, 158, 159, 160, 161, 0, 0, 0, 12,
+ 123, 0, 0, 0, 164, 165, 0, 0, 0, 0,
+ 166, 124, 125, 0, 126, 1, 2, 3, 4, 5,
+ 6, 7, 8, 9, 10, 11, 156, 157, 158, 0,
+ 159, 160, 161, 162, 0, 0, 0, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, 26, 27, 28, 0, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, 40, 41, 163, 42,
+ 43, 44, 45, 0, 0, 0, 115, 46, 116, 117,
+ 118, 119, 120, 0, 0, 121, 122, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 123, 0, 0, 0, 164, 248,
+ 0, 0, 0, 0, 166, 124, 125, 0, 126, 1,
+ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
+ 156, 157, 158, 0, 159, 160, 161, 162, 0, 0,
+ 0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
+ 21, 22, 23, 24, 25, 26, 27, 28, 0, 29,
+ 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
+ 40, 41, 163, 42, 43, 44, 45, 0, 0, 0,
+ 115, 46, 116, 117, 118, 119, 120, 0, 0, 121,
+ 122, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 123, 0,
+ 0, 0, 164, 0, 0, 0, 0, 0, 166, 124,
+ 125, 0, 126, 1, 2, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 156, 157, 158, 0, 159, 160,
+ 161, 162, 0, 0, 0, 12, 13, 14, 15, 16,
+ 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+ 27, 28, 0, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 41, 163, 42, 43, 44,
+ 45, 0, 0, 0, 115, 46, 116, 117, 118, 119,
+ 120, 0, 0, 121, 122, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 123, 0, 0, 0, 98, 0, 0, 0,
+ 0, 0, 166, 124, 125, 0, 126, 1, 2, 3,
+ 4, 5, 6, 7, 8, 9, 10, 11, 156, 157,
+ 158, 0, 159, 160, 161, 162, 0, 0, 0, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, 26, 27, 28, 0, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
- 162, 42, 43, 44, 45, 0, 0, 0, 115, 46,
- 116, 117, 118, 119, 0, 0, 120, 121, 0, 0,
+ 163, 42, 43, 44, 45, 0, 0, 0, 115, 46,
+ 116, 117, 118, 119, 120, 0, 0, 121, 122, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 122, 0, 0, 0, 163,
- 0, 0, 0, 0, 0, 165, 123, 124, 0, 125,
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
- 11, 155, 156, 157, 0, 158, 159, 160, 161, 0,
- 0, 0, 12, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, 162, 42, 43, 44, 45, 0, 0,
- 0, 115, 46, 116, 117, 118, 119, 0, 0, 120,
- 121, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 122, 0,
- 0, 0, 98, 0, 0, 0, 0, 0, 165, 123,
- 124, 0, 125, 1, 2, 3, 4, 5, 6, 7,
- 8, 9, 10, 11, 155, 156, 157, 0, 158, 159,
- 160, 161, 0, 0, 0, 12, 13, 14, 15, 16,
- 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
- 27, 28, 0, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 41, 162, 42, 43, 44,
- 45, 0, 0, 0, 115, 46, 116, 117, 118, 119,
- 0, 0, 120, 121, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 122, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 165, 123, 124, 0, 125, 1, 2, 3, 4,
- 5, 6, 7, 8, 9, 10, 11, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 12, 13,
+ 0, 0, 0, 0, 0, 0, 123, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 166, 124, 125, 0,
+ 126, 1, 2, 3, 4, 5, 6, 7, 8, 9,
+ 10, 11, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 12, 13, 14, 15, 16, 17, 18,
+ 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
+ 0, 29, 30, 31, 32, 33, 34, 35, 36, 37,
+ 38, 39, 40, 41, 0, 42, 43, 44, 45, 0,
+ 0, 0, 115, 46, 116, 117, 118, 119, 120, 0,
+ 0, 121, 122, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 110, 2, 3, 4,
+ 123, 6, 7, 8, 9, 10, 11, 0, 0, 0,
+ 166, 124, 125, 0, 126, 0, 0, 0, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 41, 0,
42, 43, 44, 45, 0, 0, 0, 115, 46, 116,
- 117, 118, 119, 0, 0, 120, 121, 0, 0, 0,
+ 117, 118, 119, 120, 0, 0, 121, 122, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 110, 2, 3, 4, 122, 6, 7, 8, 9, 10,
- 11, 0, 0, 0, 165, 123, 124, 0, 125, 0,
- 0, 0, 12, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, 0, 42, 43, 44, 45, 0, 0,
- 0, 115, 46, 116, 117, 118, 119, 0, 0, 120,
- 121, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 122, 8,
- 9, 10, 11, 0, 0, 0, 0, 0, 0, 123,
- 124, 0, 125, 0, 12, 13, 14, 15, 16, 17,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 0,
- 0, 0, 0, 0, 31, 32, 33, 34, 35, 36,
- 0, 0, 0, 40, 41, 0, 42, 43, 44, 45,
- 0, 0, 0, 115, 46, 116, 117, 118, 119, 0,
- 0, 120, 121, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 122, 0, 0, 187, 8, 9, 10, 11, 0, 0,
- 0, 123, 124, 0, 125, 0, 0, 0, 0, 12,
- 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
- 23, 24, 25, 26, 0, 0, 0, 0, 0, 31,
- 32, 33, 34, 35, 36, 0, 0, 0, 40, 41,
- 0, 42, 43, 44, 45, 0, 0, 0, 115, 46,
- 116, 117, 118, 119, 0, 0, 120, 121, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 122, 8, 9, 10, 11,
- 0, 0, 0, 0, 0, 234, 123, 124, 0, 125,
+ 0, 0, 0, 0, 0, 123, 8, 9, 10, 11,
+ 0, 0, 0, 0, 0, 0, 124, 125, 0, 126,
0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 0, 0, 0, 0,
0, 31, 32, 33, 34, 35, 36, 0, 0, 0,
40, 41, 0, 42, 43, 44, 45, 0, 0, 0,
- 115, 46, 116, 117, 118, 119, 0, 0, 120, 121,
+ 115, 46, 116, 117, 118, 119, 120, 0, 0, 121,
+ 122, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 123, 0,
+ 0, 188, 8, 9, 10, 11, 0, 0, 0, 124,
+ 125, 0, 126, 0, 0, 0, 0, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, 26, 0, 0, 0, 0, 0, 31, 32, 33,
+ 34, 35, 36, 0, 0, 0, 40, 41, 0, 42,
+ 43, 44, 45, 0, 0, 0, 115, 46, 116, 117,
+ 118, 119, 120, 0, 0, 121, 122, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 122, 0, 0,
- 250, 8, 9, 10, 11, 0, 0, 0, 123, 124,
- 0, 125, 0, 0, 0, 0, 12, 13, 14, 15,
+ 0, 0, 0, 0, 123, 8, 9, 10, 11, 0,
+ 0, 0, 0, 0, 235, 124, 125, 0, 126, 0,
+ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
+ 22, 23, 24, 25, 26, 0, 0, 0, 0, 0,
+ 31, 32, 33, 34, 35, 36, 0, 0, 0, 40,
+ 41, 0, 42, 43, 44, 45, 0, 0, 0, 115,
+ 46, 116, 117, 118, 119, 120, 0, 0, 121, 122,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 123, 0, 0,
+ 251, 8, 9, 10, 11, 0, 0, 0, 124, 125,
+ 0, 126, 0, 0, 0, 0, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 0, 0, 0, 0, 0, 31, 32, 33, 34,
35, 36, 0, 0, 0, 40, 41, 0, 42, 43,
44, 45, 0, 0, 0, 115, 46, 116, 117, 118,
- 119, 0, 0, 120, 121, 0, 0, 0, 0, 0,
+ 119, 120, 0, 0, 121, 122, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 122, 8, 9, 10, 11, 0, 0, 0,
- 0, 0, 0, 123, 124, 0, 125, 0, 12, 13,
- 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
- 24, 25, 26, 0, 0, 0, 0, 0, 31, 32,
- 33, 34, 35, 36, 0, 0, 0, 40, 207, 0,
- 42, 43, 44, 45, 0, 0, 0, 115, 46, 116,
- 117, 118, 119, 0, 0, 120, 121, 0, 0, 0,
+ 0, 0, 0, 123, 8, 9, 10, 11, 0, 0,
+ 0, 0, 0, 0, 124, 125, 0, 126, 0, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, 26, 0, 0, 0, 0, 0, 31,
+ 32, 33, 34, 35, 36, 0, 0, 0, 40, 208,
+ 0, 42, 43, 44, 45, 0, 0, 0, 115, 46,
+ 116, 117, 118, 119, 120, 0, 0, 121, 122, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 110, 2, 3, 4, 122, 6, 7, 8, 9, 10,
- 11, 0, 0, 0, 0, 123, 124, 0, 125, 0,
- 0, 0, 12, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, 0, 42, 43, 44, 45, 0, 0,
- 0, 0, 46, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 110, 2, 3, 4, 0, 6, 7, 8,
- 9, 10, 11, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 195, 12, 13, 14, 15, 16, 17,
+ 0, 0, 110, 2, 3, 4, 123, 6, 7, 8,
+ 9, 10, 11, 0, 0, 0, 0, 124, 125, 0,
+ 126, 0, 0, 0, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, 0, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 41, 0, 42, 43, 44, 45,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 110, 2, 3, 4, 0, 6,
+ 0, 0, 0, 0, 0, 110, 2, 3, 4, 0,
+ 6, 7, 8, 9, 10, 11, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 196, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, 26, 27, 28, 0, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, 40, 41, 0, 42,
+ 43, 44, 45, 0, 0, 0, 0, 46, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 110, 2,
+ 3, 4, 0, 6, 7, 8, 9, 10, 11, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 228,
+ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
+ 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
+ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+ 41, 0, 42, 43, 44, 45, 0, 0, 0, 0,
+ 46, 0, 0, 0, 0, 0, 0, 0, 93, 0,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
+ 10, 11, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 282, 12, 13, 14, 15, 16, 17, 18,
+ 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
+ 0, 29, 30, 31, 32, 33, 34, 35, 36, 37,
+ 38, 39, 40, 41, 0, 42, 43, 44, 45, 0,
+ 0, 0, 0, 46, 1, 2, 3, 4, 5, 6,
7, 8, 9, 10, 11, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 227, 12, 13, 14, 15,
+ 0, 0, 0, 0, 0, 0, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 0, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 0, 42, 43,
- 44, 45, 0, 0, 0, 0, 46, 0, 0, 0,
- 0, 0, 0, 93, 0, 0, 1, 2, 3, 4,
- 5, 6, 7, 8, 9, 10, 11, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 281, 12, 13,
- 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
- 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 38, 39, 40, 41, 0,
- 42, 43, 44, 45, 0, 0, 0, 0, 46, 1,
- 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
- 21, 22, 23, 24, 25, 26, 27, 28, 0, 29,
- 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
- 40, 41, 0, 42, 43, 44, 45, 110, 2, 3,
- 4, 46, 6, 7, 8, 9, 10, 11, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,
- 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
- 23, 24, 25, 26, 27, 28, 0, 29, 30, 31,
- 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
- 0, 42, 43, 44, 45, 2, 3, 4, 0, 46,
- 0, 8, 9, 10, 11, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 12, 13, 14, 15,
- 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 0, 0, 0, 0, 0, 31, 32, 33, 34,
- 35, 36, 0, 0, 0, 40, 41, 0, 42, 43,
- 44, 45, 2, 3, 4, 88, 46, 0, 8, 9,
- 10, 11, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 12, 13, 14, 15, 16, 17, 18,
- 19, 20, 21, 22, 23, 24, 25, 26, 0, 0,
- 0, 0, 0, 31, 32, 33, 34, 35, 36, 0,
- 0, 0, 40, 41, 0, 42, 43, 44, 45, 8,
- 9, 10, 11, 46, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 12, 13, 14, 15, 16, 17,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 0,
- 0, 0, 0, 0, 31, 32, 33, 34, 35, 36,
- 0, 0, 0, 40, 41, 0, 42, 43, 44, 45,
- 0, 0, 0, 263, 46, 0, 0, 0, 264, 8,
+ 44, 45, 110, 2, 3, 4, 46, 6, 7, 8,
9, 10, 11, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 12, 13, 14, 15, 16, 17,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 0,
- 0, 0, 0, 0, 31, 32, 33, 34, 35, 36,
- 0, 0, 0, 40, 41, 0, 42, 43, 44, 45,
- 0, 0, 0, 0, 46
+ 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
+ 28, 0, 29, 30, 31, 32, 33, 34, 35, 36,
+ 37, 38, 39, 40, 41, 0, 42, 43, 44, 45,
+ 2, 3, 4, 0, 46, 0, 8, 9, 10, 11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
+ 21, 22, 23, 24, 25, 26, 0, 0, 0, 0,
+ 0, 31, 32, 33, 34, 35, 36, 0, 0, 0,
+ 40, 41, 0, 42, 43, 44, 45, 2, 3, 4,
+ 88, 46, 0, 8, 9, 10, 11, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 12, 13,
+ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
+ 24, 25, 26, 0, 0, 0, 0, 0, 31, 32,
+ 33, 34, 35, 36, 0, 0, 0, 40, 41, 0,
+ 42, 43, 44, 45, 8, 9, 10, 11, 46, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, 26, 0, 0, 0, 0, 0, 31,
+ 32, 33, 34, 35, 36, 0, 0, 0, 40, 41,
+ 0, 42, 43, 44, 45, 0, 0, 0, 264, 46,
+ 8, 9, 10, 11, 265, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 12, 13, 14, 15, 16,
+ 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+ 0, 0, 0, 0, 0, 31, 32, 33, 34, 35,
+ 36, 0, 0, 0, 40, 41, 0, 42, 43, 44,
+ 45, 0, 0, 0, 0, 46
};
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-292)))
+ (!!((Yystate) == (-298)))
#define yytable_value_is_error(Yytable_value) \
YYID (0)
static const yytype_int16 yycheck[] =
{
- 0, 108, 89, 56, 74, 186, 0, 113, 122, 107,
- 97, 177, 0, 92, 97, 64, 307, 284, 64, 92,
- 44, 59, 9, 288, 93, 98, 113, 134, 107, 82,
- 68, 93, 101, 91, 101, 93, 89, 79, 100, 330,
- 64, 306, 9, 98, 97, 74, 75, 161, 154, 95,
- 64, 104, 101, 40, 41, 42, 56, 324, 111, 59,
- 113, 9, 329, 63, 92, 92, 153, 154, 68, 63,
- 153, 98, 114, 40, 41, 63, 43, 92, 95, 186,
- 109, 110, 82, 98, 51, 92, 95, 185, 202, 89,
- 93, 98, 40, 41, 42, 40, 41, 97, 98, 206,
- 153, 154, 106, 107, 104, 92, 185, 72, 73, 64,
- 224, 111, 91, 113, 93, 81, 82, 83, 232, 101,
- 226, 100, 98, 289, 90, 101, 98, 98, 93, 101,
- 101, 95, 97, 103, 100, 105, 64, 244, 245, 226,
- 92, 215, 216, 217, 218, 98, 76, 77, 101, 98,
- 331, 249, 101, 153, 154, 107, 44, 255, 4, 5,
- 6, 40, 41, 42, 98, 99, 213, 214, 120, 121,
- 249, 219, 220, 226, 288, 64, 255, 177, 91, 78,
- 92, 91, 80, 94, 101, 137, 101, 91, 91, 91,
- 96, 91, 306, 300, 101, 56, 93, 98, 94, 297,
- 93, 288, 94, 317, 95, 91, 64, 94, 91, 94,
- 94, 92, 94, 283, 328, 92, 96, 17, 297, 306,
- 203, 222, 221, 101, 331, 100, 226, 101, 101, 76,
- 223, 83, 104, 185, 104, 55, 5, 191, 238, 329,
- 256, 285, 238, 306, 285, 63, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 310, -1, 211,
- 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
- 222, 223, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 284, 285, -1, -1, 288, 289,
- -1, -1, -1, -1, -1, -1, -1, 249, -1, -1,
- -1, -1, -1, 255, -1, -1, 306, -1, -1, -1,
- 310, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 324, -1, -1, -1, -1, 329,
- -1, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, 297, 18, 19, 20, 21,
+ 0, 108, 74, 56, 123, 113, 89, 107, 187, 178,
+ 285, 308, 97, 0, 97, 0, 64, 64, 80, 44,
+ 40, 41, 289, 92, 92, 102, 94, 94, 135, 82,
+ 113, 64, 59, 101, 331, 102, 89, 92, 107, 64,
+ 307, 68, 9, 162, 97, 99, 96, 155, 102, 96,
+ 325, 104, 107, 115, 102, 330, 56, 94, 111, 59,
+ 113, 9, 93, 63, 101, 99, 121, 122, 68, 154,
+ 96, 154, 155, 40, 41, 42, 63, 9, 63, 93,
+ 187, 94, 82, 138, 203, 99, 186, 75, 76, 89,
+ 93, 99, 40, 41, 102, 43, 99, 97, 98, 93,
+ 207, 154, 155, 51, 104, 99, 225, 96, 40, 41,
+ 42, 111, 93, 113, 233, 73, 74, 186, 99, 227,
+ 64, 290, 110, 111, 99, 102, 93, 102, 82, 83,
+ 84, 186, 216, 217, 218, 219, 94, 91, 245, 246,
+ 98, 64, 99, 99, 227, 102, 102, 101, 44, 104,
+ 250, 106, 92, 332, 154, 155, 256, 212, 213, 214,
+ 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 289, 4, 5, 6, 227, 40, 41, 42, 178, 64,
+ 92, 250, 94, 107, 108, 77, 78, 256, 307, 99,
+ 100, 214, 215, 93, 301, 250, 220, 221, 298, 318,
+ 79, 256, 92, 81, 95, 102, 289, 102, 92, 92,
+ 329, 92, 284, 102, 94, 97, 92, 56, 95, 94,
+ 64, 17, 96, 95, 307, 332, 95, 227, 99, 298,
+ 92, 95, 95, 92, 102, 93, 97, 93, 95, 239,
+ 204, 101, 222, 298, 223, 76, 224, 102, 102, 83,
+ 55, 104, 104, 5, 192, 257, 286, 330, 311, 63,
+ -1, 307, -1, 239, 286, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 285, 286, -1, -1, 289,
+ 290, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 307, -1, -1,
+ -1, 311, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 325, -1, -1, -1, -1,
+ 330, 3, 4, 5, 6, 7, 8, 9, 10, 11,
+ 12, 13, 14, 15, 16, -1, 18, 19, 20, 21,
-1, -1, -1, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
-1, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 53, 54, 55, 56, 57, 58, 59, 60, -1,
- -1, -1, 64, 65, 66, 67, 68, 69, -1, -1,
- 72, 73, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 91,
- -1, -1, -1, 95, 96, -1, -1, -1, -1, 101,
- 102, 103, -1, 105, 3, 4, 5, 6, 7, 8,
- 9, 10, 11, 12, 13, 14, 15, 16, -1, 18,
- 19, 20, 21, -1, -1, -1, 25, 26, 27, 28,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, -1, 43, 44, 45, 46, 47, 48,
- 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, -1, -1, -1, 64, 65, 66, 67, 68,
- 69, -1, -1, 72, 73, -1, -1, -1, -1, -1,
+ -1, -1, 64, 65, 66, 67, 68, 69, 70, -1,
+ -1, 73, 74, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 91, -1, -1, -1, 95, 96, -1, -1,
- -1, -1, 101, 102, 103, -1, 105, 3, 4, 5,
- 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
- 16, -1, 18, 19, 20, 21, -1, -1, -1, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 41, -1, 43, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
- 56, 57, 58, 59, 60, -1, -1, -1, 64, 65,
- 66, 67, 68, 69, -1, -1, 72, 73, -1, -1,
+ 92, -1, -1, -1, 96, 97, -1, -1, -1, -1,
+ 102, 103, 104, -1, 106, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 13, 14, 15, 16, -1,
+ 18, 19, 20, 21, -1, -1, -1, 25, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
+ 38, 39, 40, 41, -1, 43, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
+ 58, 59, 60, -1, -1, -1, 64, 65, 66, 67,
+ 68, 69, 70, -1, -1, 73, 74, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 91, -1, -1, -1, 95,
- -1, -1, -1, -1, -1, 101, 102, 103, -1, 105,
- 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
- 13, 14, 15, 16, -1, 18, 19, 20, 21, -1,
- -1, -1, 25, 26, 27, 28, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 38, 39, 40, 41, -1,
- 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
- 53, 54, 55, 56, 57, 58, 59, 60, -1, -1,
- -1, 64, 65, 66, 67, 68, 69, -1, -1, 72,
- 73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 91, -1,
- -1, -1, 95, -1, -1, -1, -1, -1, 101, 102,
- 103, -1, 105, 3, 4, 5, 6, 7, 8, 9,
+ -1, -1, -1, -1, 92, -1, -1, -1, 96, 97,
+ -1, -1, -1, -1, 102, 103, 104, -1, 106, 3,
+ 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
+ 14, 15, 16, -1, 18, 19, 20, 21, -1, -1,
+ -1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, 40, 41, -1, 43,
+ 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, -1, -1, -1,
+ 64, 65, 66, 67, 68, 69, 70, -1, -1, 73,
+ 74, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 92, -1,
+ -1, -1, 96, -1, -1, -1, -1, -1, 102, 103,
+ 104, -1, 106, 3, 4, 5, 6, 7, 8, 9,
10, 11, 12, 13, 14, 15, 16, -1, 18, 19,
20, 21, -1, -1, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, -1, 43, 44, 45, 46, 47, 48, 49,
50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
60, -1, -1, -1, 64, 65, 66, 67, 68, 69,
- -1, -1, 72, 73, -1, -1, -1, -1, -1, -1,
+ 70, -1, -1, 73, 74, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 91, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 101, 102, 103, -1, 105, 3, 4, 5, 6,
- 7, 8, 9, 10, 11, 12, 13, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 25, 26,
+ -1, -1, 92, -1, -1, -1, 96, -1, -1, -1,
+ -1, -1, 102, 103, 104, -1, 106, 3, 4, 5,
+ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, -1, 18, 19, 20, 21, -1, -1, -1, 25,
+ 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 41, -1, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 60, -1, -1, -1, 64, 65,
+ 66, 67, 68, 69, 70, -1, -1, 73, 74, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 92, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 102, 103, 104, -1,
+ 106, 3, 4, 5, 6, 7, 8, 9, 10, 11,
+ 12, 13, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 25, 26, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
+ -1, 43, 44, 45, 46, 47, 48, 49, 50, 51,
+ 52, 53, 54, 55, -1, 57, 58, 59, 60, -1,
+ -1, -1, 64, 65, 66, 67, 68, 69, 70, -1,
+ -1, 73, 74, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 3, 4, 5, 6,
+ 92, 8, 9, 10, 11, 12, 13, -1, -1, -1,
+ 102, 103, 104, -1, 106, -1, -1, -1, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 41, -1, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
57, 58, 59, 60, -1, -1, -1, 64, 65, 66,
- 67, 68, 69, -1, -1, 72, 73, -1, -1, -1,
+ 67, 68, 69, 70, -1, -1, 73, 74, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 3, 4, 5, 6, 91, 8, 9, 10, 11, 12,
- 13, -1, -1, -1, 101, 102, 103, -1, 105, -1,
- -1, -1, 25, 26, 27, 28, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 38, 39, 40, 41, -1,
- 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
- 53, 54, 55, -1, 57, 58, 59, 60, -1, -1,
- -1, 64, 65, 66, 67, 68, 69, -1, -1, 72,
- 73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 91, 10,
- 11, 12, 13, -1, -1, -1, -1, -1, -1, 102,
- 103, -1, 105, -1, 25, 26, 27, 28, 29, 30,
- 31, 32, 33, 34, 35, 36, 37, 38, 39, -1,
- -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
- -1, -1, -1, 54, 55, -1, 57, 58, 59, 60,
- -1, -1, -1, 64, 65, 66, 67, 68, 69, -1,
- -1, 72, 73, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 91, -1, -1, 94, 10, 11, 12, 13, -1, -1,
- -1, 102, 103, -1, 105, -1, -1, -1, -1, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, -1, -1, -1, -1, -1, 45,
- 46, 47, 48, 49, 50, -1, -1, -1, 54, 55,
- -1, 57, 58, 59, 60, -1, -1, -1, 64, 65,
- 66, 67, 68, 69, -1, -1, 72, 73, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 91, 10, 11, 12, 13,
- -1, -1, -1, -1, -1, 101, 102, 103, -1, 105,
+ -1, -1, -1, -1, -1, 92, 10, 11, 12, 13,
+ -1, -1, -1, -1, -1, -1, 103, 104, -1, 106,
-1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, -1, -1, -1, -1,
-1, 45, 46, 47, 48, 49, 50, -1, -1, -1,
54, 55, -1, 57, 58, 59, 60, -1, -1, -1,
- 64, 65, 66, 67, 68, 69, -1, -1, 72, 73,
+ 64, 65, 66, 67, 68, 69, 70, -1, -1, 73,
+ 74, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 92, -1,
+ -1, 95, 10, 11, 12, 13, -1, -1, -1, 103,
+ 104, -1, 106, -1, -1, -1, -1, 25, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
+ 38, 39, -1, -1, -1, -1, -1, 45, 46, 47,
+ 48, 49, 50, -1, -1, -1, 54, 55, -1, 57,
+ 58, 59, 60, -1, -1, -1, 64, 65, 66, 67,
+ 68, 69, 70, -1, -1, 73, 74, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 91, -1, -1,
- 94, 10, 11, 12, 13, -1, -1, -1, 102, 103,
- -1, 105, -1, -1, -1, -1, 25, 26, 27, 28,
+ -1, -1, -1, -1, 92, 10, 11, 12, 13, -1,
+ -1, -1, -1, -1, 102, 103, 104, -1, 106, -1,
+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
+ 35, 36, 37, 38, 39, -1, -1, -1, -1, -1,
+ 45, 46, 47, 48, 49, 50, -1, -1, -1, 54,
+ 55, -1, 57, 58, 59, 60, -1, -1, -1, 64,
+ 65, 66, 67, 68, 69, 70, -1, -1, 73, 74,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 92, -1, -1,
+ 95, 10, 11, 12, 13, -1, -1, -1, 103, 104,
+ -1, 106, -1, -1, -1, -1, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, -1, -1, -1, -1, -1, 45, 46, 47, 48,
49, 50, -1, -1, -1, 54, 55, -1, 57, 58,
59, 60, -1, -1, -1, 64, 65, 66, 67, 68,
- 69, -1, -1, 72, 73, -1, -1, -1, -1, -1,
+ 69, 70, -1, -1, 73, 74, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 91, 10, 11, 12, 13, -1, -1, -1,
- -1, -1, -1, 102, 103, -1, 105, -1, 25, 26,
- 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
- 37, 38, 39, -1, -1, -1, -1, -1, 45, 46,
- 47, 48, 49, 50, -1, -1, -1, 54, 55, -1,
- 57, 58, 59, 60, -1, -1, -1, 64, 65, 66,
- 67, 68, 69, -1, -1, 72, 73, -1, -1, -1,
+ -1, -1, -1, 92, 10, 11, 12, 13, -1, -1,
+ -1, -1, -1, -1, 103, 104, -1, 106, -1, 25,
+ 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, -1, -1, -1, -1, -1, 45,
+ 46, 47, 48, 49, 50, -1, -1, -1, 54, 55,
+ -1, 57, 58, 59, 60, -1, -1, -1, 64, 65,
+ 66, 67, 68, 69, 70, -1, -1, 73, 74, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 3, 4, 5, 6, 91, 8, 9, 10, 11, 12,
- 13, -1, -1, -1, -1, 102, 103, -1, 105, -1,
- -1, -1, 25, 26, 27, 28, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 38, 39, 40, 41, -1,
- 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
- 53, 54, 55, -1, 57, 58, 59, 60, -1, -1,
- -1, -1, 65, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 3, 4, 5, 6, -1, 8, 9, 10,
- 11, 12, 13, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 96, 25, 26, 27, 28, 29, 30,
+ -1, -1, 3, 4, 5, 6, 92, 8, 9, 10,
+ 11, 12, 13, -1, -1, -1, -1, 103, 104, -1,
+ 106, -1, -1, -1, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, -1, 43, 44, 45, 46, 47, 48, 49, 50,
51, 52, 53, 54, 55, -1, 57, 58, 59, 60,
-1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 3, 4, 5, 6, -1, 8,
+ -1, -1, -1, -1, -1, 3, 4, 5, 6, -1,
+ 8, 9, 10, 11, 12, 13, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 97, 25, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
+ 38, 39, 40, 41, -1, 43, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, -1, 57,
+ 58, 59, 60, -1, -1, -1, -1, 65, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
+ 5, 6, -1, 8, 9, 10, 11, 12, 13, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 97,
+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
+ 35, 36, 37, 38, 39, 40, 41, -1, 43, 44,
+ 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
+ 55, -1, 57, 58, 59, 60, -1, -1, -1, -1,
+ 65, -1, -1, -1, -1, -1, -1, -1, 0, -1,
+ -1, 3, 4, 5, 6, 7, 8, 9, 10, 11,
+ 12, 13, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 97, 25, 26, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
+ -1, 43, 44, 45, 46, 47, 48, 49, 50, 51,
+ 52, 53, 54, 55, -1, 57, 58, 59, 60, -1,
+ -1, -1, -1, 65, 3, 4, 5, 6, 7, 8,
9, 10, 11, 12, 13, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 96, 25, 26, 27, 28,
+ -1, -1, -1, -1, -1, -1, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 41, -1, 43, 44, 45, 46, 47, 48,
49, 50, 51, 52, 53, 54, 55, -1, 57, 58,
- 59, 60, -1, -1, -1, -1, 65, -1, -1, -1,
- -1, -1, -1, 0, -1, -1, 3, 4, 5, 6,
- 7, 8, 9, 10, 11, 12, 13, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 96, 25, 26,
- 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
- 37, 38, 39, 40, 41, -1, 43, 44, 45, 46,
- 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
- 57, 58, 59, 60, -1, -1, -1, -1, 65, 3,
- 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
- 34, 35, 36, 37, 38, 39, 40, 41, -1, 43,
- 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
- 54, 55, -1, 57, 58, 59, 60, 3, 4, 5,
- 6, 65, 8, 9, 10, 11, 12, 13, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 41, -1, 43, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
- -1, 57, 58, 59, 60, 4, 5, 6, -1, 65,
- -1, 10, 11, 12, 13, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 25, 26, 27, 28,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, -1, -1, -1, -1, -1, 45, 46, 47, 48,
- 49, 50, -1, -1, -1, 54, 55, -1, 57, 58,
- 59, 60, 4, 5, 6, 64, 65, -1, 10, 11,
- 12, 13, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 25, 26, 27, 28, 29, 30, 31,
- 32, 33, 34, 35, 36, 37, 38, 39, -1, -1,
- -1, -1, -1, 45, 46, 47, 48, 49, 50, -1,
- -1, -1, 54, 55, -1, 57, 58, 59, 60, 10,
- 11, 12, 13, 65, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 25, 26, 27, 28, 29, 30,
- 31, 32, 33, 34, 35, 36, 37, 38, 39, -1,
- -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
- -1, -1, -1, 54, 55, -1, 57, 58, 59, 60,
- -1, -1, -1, 64, 65, -1, -1, -1, 69, 10,
+ 59, 60, 3, 4, 5, 6, 65, 8, 9, 10,
11, 12, 13, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 25, 26, 27, 28, 29, 30,
- 31, 32, 33, 34, 35, 36, 37, 38, 39, -1,
- -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
- -1, -1, -1, 54, 55, -1, 57, 58, 59, 60,
- -1, -1, -1, -1, 65
+ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+ 41, -1, 43, 44, 45, 46, 47, 48, 49, 50,
+ 51, 52, 53, 54, 55, -1, 57, 58, 59, 60,
+ 4, 5, 6, -1, 65, -1, 10, 11, 12, 13,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, -1, -1, -1, -1,
+ -1, 45, 46, 47, 48, 49, 50, -1, -1, -1,
+ 54, 55, -1, 57, 58, 59, 60, 4, 5, 6,
+ 64, 65, -1, 10, 11, 12, 13, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 25, 26,
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
+ 37, 38, 39, -1, -1, -1, -1, -1, 45, 46,
+ 47, 48, 49, 50, -1, -1, -1, 54, 55, -1,
+ 57, 58, 59, 60, 10, 11, 12, 13, 65, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 25,
+ 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, -1, -1, -1, -1, -1, 45,
+ 46, 47, 48, 49, 50, -1, -1, -1, 54, 55,
+ -1, 57, 58, 59, 60, -1, -1, -1, 64, 65,
+ 10, 11, 12, 13, 70, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 25, 26, 27, 28, 29,
+ 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
+ -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
+ 50, -1, -1, -1, 54, 55, -1, 57, 58, 59,
+ 60, -1, -1, -1, -1, 65
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -1442,37 +1447,37 @@
12, 13, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 41, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
- 54, 55, 57, 58, 59, 60, 65, 146, 147, 148,
- 149, 150, 155, 156, 157, 158, 160, 161, 162, 163,
- 164, 165, 166, 198, 199, 200, 44, 64, 163, 40,
- 41, 64, 95, 101, 201, 92, 98, 9, 40, 41,
- 42, 152, 153, 159, 98, 101, 64, 161, 64, 145,
- 162, 164, 93, 0, 199, 164, 95, 168, 95, 184,
- 152, 151, 154, 162, 153, 64, 91, 93, 100, 95,
- 3, 160, 162, 169, 170, 64, 66, 67, 68, 69,
- 72, 73, 91, 102, 103, 105, 116, 117, 118, 120,
+ 54, 55, 57, 58, 59, 60, 65, 147, 148, 149,
+ 150, 151, 156, 157, 158, 159, 161, 162, 163, 164,
+ 165, 166, 167, 199, 200, 201, 44, 64, 164, 40,
+ 41, 64, 96, 102, 202, 93, 99, 9, 40, 41,
+ 42, 153, 154, 160, 99, 102, 64, 162, 64, 146,
+ 163, 165, 94, 0, 200, 165, 96, 169, 96, 185,
+ 153, 152, 155, 163, 154, 64, 92, 94, 101, 96,
+ 3, 161, 163, 170, 171, 64, 66, 67, 68, 69,
+ 70, 73, 74, 92, 103, 104, 106, 117, 118, 119,
121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
- 144, 165, 101, 167, 169, 14, 15, 16, 18, 19,
- 20, 21, 56, 95, 96, 101, 127, 140, 141, 143,
- 146, 147, 165, 174, 175, 176, 177, 185, 186, 187,
- 190, 197, 64, 151, 154, 93, 100, 94, 144, 141,
- 173, 162, 64, 171, 172, 96, 170, 127, 127, 143,
- 72, 73, 93, 97, 92, 92, 98, 55, 141, 91,
- 127, 106, 107, 103, 105, 74, 75, 109, 110, 76,
- 77, 78, 80, 79, 114, 94, 169, 96, 101, 101,
- 192, 91, 91, 101, 101, 143, 91, 96, 178, 81,
- 82, 83, 90, 100, 142, 98, 101, 96, 175, 93,
- 94, 144, 173, 94, 171, 93, 98, 101, 64, 101,
- 92, 119, 143, 64, 69, 122, 141, 127, 127, 129,
- 129, 131, 131, 131, 131, 132, 132, 136, 137, 138,
- 143, 96, 181, 182, 183, 193, 143, 101, 191, 185,
- 141, 141, 144, 94, 101, 144, 172, 93, 101, 94,
- 99, 56, 184, 176, 174, 186, 194, 92, 143, 157,
- 160, 189, 179, 94, 94, 144, 141, 91, 189, 195,
- 196, 181, 188, 64, 92, 96, 94, 143, 101, 92,
- 17, 100, 176, 180, 184, 101, 92, 143, 180, 181,
- 173, 101
+ 141, 145, 166, 102, 168, 170, 14, 15, 16, 18,
+ 19, 20, 21, 56, 96, 97, 102, 128, 141, 142,
+ 144, 147, 148, 166, 175, 176, 177, 178, 186, 187,
+ 188, 191, 198, 64, 152, 155, 94, 101, 95, 145,
+ 142, 174, 163, 64, 172, 173, 97, 171, 128, 128,
+ 144, 73, 74, 94, 98, 93, 93, 99, 55, 142,
+ 92, 128, 107, 108, 104, 106, 75, 76, 110, 111,
+ 77, 78, 79, 81, 80, 115, 95, 170, 97, 102,
+ 102, 193, 92, 92, 102, 102, 144, 92, 97, 179,
+ 82, 83, 84, 91, 101, 143, 99, 102, 97, 176,
+ 94, 95, 145, 174, 95, 172, 94, 99, 102, 64,
+ 102, 93, 120, 144, 64, 70, 123, 142, 128, 128,
+ 130, 130, 132, 132, 132, 132, 133, 133, 137, 138,
+ 139, 144, 97, 182, 183, 184, 194, 144, 102, 192,
+ 186, 142, 142, 145, 95, 102, 145, 173, 94, 102,
+ 95, 100, 56, 185, 177, 175, 187, 195, 93, 144,
+ 158, 161, 190, 180, 95, 95, 145, 142, 92, 190,
+ 196, 197, 182, 189, 64, 93, 97, 95, 144, 102,
+ 93, 17, 101, 177, 181, 185, 102, 93, 144, 181,
+ 182, 174, 102
};
#define yyerrok (yyerrstatus = 0)
@@ -2347,12 +2352,21 @@
{
ConstantUnion *unionArray = new ConstantUnion[1];
+ unionArray->setUConst((yyvsp[(1) - (1)].lex).u);
+ (yyval.interm.intermTypedNode) = context->intermediate.addConstantUnion(unionArray, TType(EbtUInt, EbpUndefined, EvqConst), (yyvsp[(1) - (1)].lex).line);
+ }
+ break;
+
+ case 6:
+
+ {
+ ConstantUnion *unionArray = new ConstantUnion[1];
unionArray->setFConst((yyvsp[(1) - (1)].lex).f);
(yyval.interm.intermTypedNode) = context->intermediate.addConstantUnion(unionArray, TType(EbtFloat, EbpUndefined, EvqConst), (yyvsp[(1) - (1)].lex).line);
}
break;
- case 6:
+ case 7:
{
ConstantUnion *unionArray = new ConstantUnion[1];
@@ -2361,44 +2375,44 @@
}
break;
- case 7:
+ case 8:
{
(yyval.interm.intermTypedNode) = (yyvsp[(2) - (3)].interm.intermTypedNode);
}
break;
- case 8:
-
- {
- (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
- }
- break;
-
case 9:
{
- (yyval.interm.intermTypedNode) = context->addIndexExpression((yyvsp[(1) - (4)].interm.intermTypedNode), (yyvsp[(2) - (4)].lex).line, (yyvsp[(3) - (4)].interm.intermTypedNode));
+ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
}
break;
case 10:
{
- (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
+ (yyval.interm.intermTypedNode) = context->addIndexExpression((yyvsp[(1) - (4)].interm.intermTypedNode), (yyvsp[(2) - (4)].lex).line, (yyvsp[(3) - (4)].interm.intermTypedNode));
}
break;
case 11:
{
- (yyval.interm.intermTypedNode) = context->addFieldSelectionExpression((yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, *(yyvsp[(3) - (3)].lex).string, (yyvsp[(3) - (3)].lex).line);
+ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
}
break;
case 12:
{
+ (yyval.interm.intermTypedNode) = context->addFieldSelectionExpression((yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, *(yyvsp[(3) - (3)].lex).string, (yyvsp[(3) - (3)].lex).line);
+ }
+ break;
+
+ case 13:
+
+ {
if (context->lValueErrorCheck((yyvsp[(2) - (2)].lex).line, "++", (yyvsp[(1) - (2)].interm.intermTypedNode)))
context->recover();
(yyval.interm.intermTypedNode) = context->intermediate.addUnaryMath(EOpPostIncrement, (yyvsp[(1) - (2)].interm.intermTypedNode), (yyvsp[(2) - (2)].lex).line, context->symbolTable);
@@ -2410,7 +2424,7 @@
}
break;
- case 13:
+ case 14:
{
if (context->lValueErrorCheck((yyvsp[(2) - (2)].lex).line, "--", (yyvsp[(1) - (2)].interm.intermTypedNode)))
@@ -2424,7 +2438,7 @@
}
break;
- case 14:
+ case 15:
{
if (context->integerErrorCheck((yyvsp[(1) - (1)].interm.intermTypedNode), "[]"))
@@ -2433,7 +2447,7 @@
}
break;
- case 15:
+ case 16:
{
TFunction* fnCall = (yyvsp[(1) - (1)].interm).function;
@@ -2534,14 +2548,14 @@
}
break;
- case 16:
+ case 17:
{
(yyval.interm) = (yyvsp[(1) - (1)].interm);
}
break;
- case 17:
+ case 18:
{
context->error((yyvsp[(3) - (3)].interm).line, "methods are not supported", "");
@@ -2550,14 +2564,6 @@
}
break;
- case 18:
-
- {
- (yyval.interm) = (yyvsp[(1) - (2)].interm);
- (yyval.interm).line = (yyvsp[(2) - (2)].lex).line;
- }
- break;
-
case 19:
{
@@ -2569,12 +2575,20 @@
case 20:
{
+ (yyval.interm) = (yyvsp[(1) - (2)].interm);
+ (yyval.interm).line = (yyvsp[(2) - (2)].lex).line;
+ }
+ break;
+
+ case 21:
+
+ {
(yyval.interm).function = (yyvsp[(1) - (2)].interm.function);
(yyval.interm).intermNode = 0;
}
break;
- case 21:
+ case 22:
{
(yyval.interm).function = (yyvsp[(1) - (1)].interm.function);
@@ -2582,7 +2596,7 @@
}
break;
- case 22:
+ case 23:
{
TParameter param = { 0, new TType((yyvsp[(2) - (2)].interm.intermTypedNode)->getType()) };
@@ -2592,7 +2606,7 @@
}
break;
- case 23:
+ case 24:
{
TParameter param = { 0, new TType((yyvsp[(3) - (3)].interm.intermTypedNode)->getType()) };
@@ -2602,28 +2616,17 @@
}
break;
- case 24:
+ case 25:
{
(yyval.interm.function) = (yyvsp[(1) - (2)].interm.function);
}
break;
- case 25:
-
- {
- (yyval.interm.function) = context->addConstructorFunc((yyvsp[(1) - (1)].interm.type));
- }
- break;
-
case 26:
{
- if (context->reservedErrorCheck((yyvsp[(1) - (1)].lex).line, *(yyvsp[(1) - (1)].lex).string))
- context->recover();
- TType type(EbtVoid, EbpUndefined);
- TFunction *function = new TFunction((yyvsp[(1) - (1)].lex).string, type);
- (yyval.interm.function) = function;
+ (yyval.interm.function) = context->addConstructorFunc((yyvsp[(1) - (1)].interm.type));
}
break;
@@ -2641,13 +2644,24 @@
case 28:
{
- (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
+ if (context->reservedErrorCheck((yyvsp[(1) - (1)].lex).line, *(yyvsp[(1) - (1)].lex).string))
+ context->recover();
+ TType type(EbtVoid, EbpUndefined);
+ TFunction *function = new TFunction((yyvsp[(1) - (1)].lex).string, type);
+ (yyval.interm.function) = function;
}
break;
case 29:
{
+ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
+ }
+ break;
+
+ case 30:
+
+ {
if (context->lValueErrorCheck((yyvsp[(1) - (2)].lex).line, "++", (yyvsp[(2) - (2)].interm.intermTypedNode)))
context->recover();
(yyval.interm.intermTypedNode) = context->intermediate.addUnaryMath(EOpPreIncrement, (yyvsp[(2) - (2)].interm.intermTypedNode), (yyvsp[(1) - (2)].lex).line, context->symbolTable);
@@ -2659,7 +2673,7 @@
}
break;
- case 30:
+ case 31:
{
if (context->lValueErrorCheck((yyvsp[(1) - (2)].lex).line, "--", (yyvsp[(2) - (2)].interm.intermTypedNode)))
@@ -2673,7 +2687,7 @@
}
break;
- case 31:
+ case 32:
{
if ((yyvsp[(1) - (2)].interm).op != EOpNull) {
@@ -2694,27 +2708,27 @@
}
break;
- case 32:
+ case 33:
{ (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpNull; }
break;
- case 33:
+ case 34:
{ (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpNegative; }
break;
- case 34:
+ case 35:
{ (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpLogicalNot; }
break;
- case 35:
+ case 36:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 36:
+ case 37:
{
FRAG_VERT_ONLY("*", (yyvsp[(2) - (3)].lex).line);
@@ -2727,7 +2741,7 @@
}
break;
- case 37:
+ case 38:
{
FRAG_VERT_ONLY("/", (yyvsp[(2) - (3)].lex).line);
@@ -2740,12 +2754,12 @@
}
break;
- case 38:
+ case 39:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 39:
+ case 40:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpAdd, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2757,7 +2771,7 @@
}
break;
- case 40:
+ case 41:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpSub, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2769,11 +2783,6 @@
}
break;
- case 41:
-
- { (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
- break;
-
case 42:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
@@ -2781,6 +2790,11 @@
case 43:
+ { (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
+ break;
+
+ case 44:
+
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpLessThan, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
if ((yyval.interm.intermTypedNode) == 0) {
@@ -2793,7 +2807,7 @@
}
break;
- case 44:
+ case 45:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpGreaterThan, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2807,7 +2821,7 @@
}
break;
- case 45:
+ case 46:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpLessThanEqual, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2821,7 +2835,7 @@
}
break;
- case 46:
+ case 47:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpGreaterThanEqual, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2835,12 +2849,12 @@
}
break;
- case 47:
+ case 48:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 48:
+ case 49:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpEqual, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2854,7 +2868,7 @@
}
break;
- case 49:
+ case 50:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpNotEqual, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2868,11 +2882,6 @@
}
break;
- case 50:
-
- { (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
- break;
-
case 51:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
@@ -2890,6 +2899,11 @@
case 54:
+ { (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
+ break;
+
+ case 55:
+
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpLogicalAnd, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
if ((yyval.interm.intermTypedNode) == 0) {
@@ -2902,12 +2916,12 @@
}
break;
- case 55:
+ case 56:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 56:
+ case 57:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpLogicalXor, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2921,12 +2935,12 @@
}
break;
- case 57:
+ case 58:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 58:
+ case 59:
{
(yyval.interm.intermTypedNode) = context->intermediate.addBinaryMath(EOpLogicalOr, (yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line, context->symbolTable);
@@ -2940,12 +2954,12 @@
}
break;
- case 59:
+ case 60:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 60:
+ case 61:
{
if (context->boolErrorCheck((yyvsp[(2) - (5)].lex).line, (yyvsp[(1) - (5)].interm.intermTypedNode)))
@@ -2963,12 +2977,12 @@
}
break;
- case 61:
+ case 62:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 62:
+ case 63:
{
if (context->lValueErrorCheck((yyvsp[(2) - (3)].interm).line, "assign", (yyvsp[(1) - (3)].interm.intermTypedNode)))
@@ -2982,39 +2996,39 @@
}
break;
- case 63:
+ case 64:
{ (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpAssign; }
break;
- case 64:
+ case 65:
{ FRAG_VERT_ONLY("*=", (yyvsp[(1) - (1)].lex).line); (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpMulAssign; }
break;
- case 65:
+ case 66:
{ FRAG_VERT_ONLY("/=", (yyvsp[(1) - (1)].lex).line); (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpDivAssign; }
break;
- case 66:
+ case 67:
{ (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpAddAssign; }
break;
- case 67:
+ case 68:
{ (yyval.interm).line = (yyvsp[(1) - (1)].lex).line; (yyval.interm).op = EOpSubAssign; }
break;
- case 68:
+ case 69:
{
(yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
}
break;
- case 69:
+ case 70:
{
(yyval.interm.intermTypedNode) = context->intermediate.addComma((yyvsp[(1) - (3)].interm.intermTypedNode), (yyvsp[(3) - (3)].interm.intermTypedNode), (yyvsp[(2) - (3)].lex).line);
@@ -3026,7 +3040,7 @@
}
break;
- case 70:
+ case 71:
{
if (context->constErrorCheck((yyvsp[(1) - (1)].interm.intermTypedNode)))
@@ -3035,7 +3049,7 @@
}
break;
- case 71:
+ case 72:
{
if (context->enterStructDeclaration((yyvsp[(1) - (2)].lex).line, *(yyvsp[(1) - (2)].lex).string))
@@ -3044,7 +3058,7 @@
}
break;
- case 72:
+ case 73:
{
TFunction &function = *((yyvsp[(1) - (2)].interm).function);
@@ -3075,7 +3089,7 @@
}
break;
- case 73:
+ case 74:
{
if ((yyvsp[(1) - (2)].interm).intermAggregate)
@@ -3084,7 +3098,7 @@
}
break;
- case 74:
+ case 75:
{
if (((yyvsp[(2) - (4)].interm.precision) == EbpHigh) && (context->shaderType == SH_FRAGMENT_SHADER) && !context->fragmentPrecisionHigh) {
@@ -3099,7 +3113,7 @@
}
break;
- case 75:
+ case 76:
{
ES3_ONLY(getQualifierString((yyvsp[(1) - (5)].interm.type).qualifier), (yyvsp[(1) - (5)].interm.type).line, "interface blocks");
@@ -3107,7 +3121,7 @@
}
break;
- case 76:
+ case 77:
{
ES3_ONLY(getQualifierString((yyvsp[(1) - (6)].interm.type).qualifier), (yyvsp[(1) - (6)].interm.type).line, "interface blocks");
@@ -3115,7 +3129,7 @@
}
break;
- case 77:
+ case 78:
{
ES3_ONLY(getQualifierString((yyvsp[(1) - (9)].interm.type).qualifier), (yyvsp[(1) - (9)].interm.type).line, "interface blocks");
@@ -3123,7 +3137,7 @@
}
break;
- case 78:
+ case 79:
{
//
@@ -3162,13 +3176,6 @@
}
break;
- case 79:
-
- {
- (yyval.interm.function) = (yyvsp[(1) - (1)].interm.function);
- }
- break;
-
case 80:
{
@@ -3179,6 +3186,13 @@
case 81:
{
+ (yyval.interm.function) = (yyvsp[(1) - (1)].interm.function);
+ }
+ break;
+
+ case 82:
+
+ {
// Add the parameter
(yyval.interm.function) = (yyvsp[(1) - (2)].interm.function);
if ((yyvsp[(2) - (2)].interm).param.type->getBasicType() != EbtVoid)
@@ -3188,7 +3202,7 @@
}
break;
- case 82:
+ case 83:
{
//
@@ -3210,7 +3224,7 @@
}
break;
- case 83:
+ case 84:
{
if ((yyvsp[(1) - (3)].interm.type).qualifier != EvqGlobal && (yyvsp[(1) - (3)].interm.type).qualifier != EvqTemporary) {
@@ -3231,7 +3245,7 @@
}
break;
- case 84:
+ case 85:
{
if ((yyvsp[(1) - (2)].interm.type).type == EbtVoid) {
@@ -3246,7 +3260,7 @@
}
break;
- case 85:
+ case 86:
{
// Check that we can make an array out of this type
@@ -3268,7 +3282,7 @@
}
break;
- case 86:
+ case 87:
{
(yyval.interm) = (yyvsp[(3) - (3)].interm);
@@ -3277,29 +3291,9 @@
}
break;
- case 87:
-
- {
- (yyval.interm) = (yyvsp[(2) - (2)].interm);
- if (context->parameterSamplerErrorCheck((yyvsp[(2) - (2)].interm).line, (yyvsp[(1) - (2)].interm.qualifier), *(yyvsp[(2) - (2)].interm).param.type))
- context->recover();
- if (context->paramErrorCheck((yyvsp[(2) - (2)].interm).line, EvqTemporary, (yyvsp[(1) - (2)].interm.qualifier), (yyval.interm).param.type))
- context->recover();
- }
- break;
-
case 88:
{
- (yyval.interm) = (yyvsp[(3) - (3)].interm);
- if (context->paramErrorCheck((yyvsp[(3) - (3)].interm).line, (yyvsp[(1) - (3)].interm.qualifier), (yyvsp[(2) - (3)].interm.qualifier), (yyval.interm).param.type))
- context->recover();
- }
- break;
-
- case 89:
-
- {
(yyval.interm) = (yyvsp[(2) - (2)].interm);
if (context->parameterSamplerErrorCheck((yyvsp[(2) - (2)].interm).line, (yyvsp[(1) - (2)].interm.qualifier), *(yyvsp[(2) - (2)].interm).param.type))
context->recover();
@@ -3308,10 +3302,23 @@
}
break;
+ case 89:
+
+ {
+ (yyval.interm) = (yyvsp[(3) - (3)].interm);
+ if (context->paramErrorCheck((yyvsp[(3) - (3)].interm).line, (yyvsp[(1) - (3)].interm.qualifier), (yyvsp[(2) - (3)].interm.qualifier), (yyval.interm).param.type))
+ context->recover();
+ }
+ break;
+
case 90:
{
- (yyval.interm.qualifier) = EvqIn;
+ (yyval.interm) = (yyvsp[(2) - (2)].interm);
+ if (context->parameterSamplerErrorCheck((yyvsp[(2) - (2)].interm).line, (yyvsp[(1) - (2)].interm.qualifier), *(yyvsp[(2) - (2)].interm).param.type))
+ context->recover();
+ if (context->paramErrorCheck((yyvsp[(2) - (2)].interm).line, EvqTemporary, (yyvsp[(1) - (2)].interm.qualifier), (yyval.interm).param.type))
+ context->recover();
}
break;
@@ -3325,33 +3332,40 @@
case 92:
{
- (yyval.interm.qualifier) = EvqOut;
+ (yyval.interm.qualifier) = EvqIn;
}
break;
case 93:
{
- (yyval.interm.qualifier) = EvqInOut;
+ (yyval.interm.qualifier) = EvqOut;
}
break;
case 94:
{
+ (yyval.interm.qualifier) = EvqInOut;
+ }
+ break;
+
+ case 95:
+
+ {
TParameter param = { 0, new TType((yyvsp[(1) - (1)].interm.type)) };
(yyval.interm).param = param;
}
break;
- case 95:
+ case 96:
{
(yyval.interm) = (yyvsp[(1) - (1)].interm);
}
break;
- case 96:
+ case 97:
{
if ((yyvsp[(1) - (3)].interm).type.type == EbtInvariant && !(yyvsp[(3) - (3)].lex).symbol)
@@ -3377,7 +3391,7 @@
}
break;
- case 97:
+ case 98:
{
if (context->structQualifierErrorCheck((yyvsp[(3) - (5)].lex).line, (yyvsp[(1) - (5)].interm).type))
@@ -3399,7 +3413,7 @@
}
break;
- case 98:
+ case 99:
{
if (context->structQualifierErrorCheck((yyvsp[(3) - (6)].lex).line, (yyvsp[(1) - (6)].interm).type))
@@ -3427,7 +3441,7 @@
}
break;
- case 99:
+ case 100:
{
if (context->structQualifierErrorCheck((yyvsp[(3) - (5)].lex).line, (yyvsp[(1) - (5)].interm).type))
@@ -3451,7 +3465,7 @@
}
break;
- case 100:
+ case 101:
{
(yyval.interm).type = (yyvsp[(1) - (1)].interm.type);
@@ -3459,7 +3473,7 @@
}
break;
- case 101:
+ case 102:
{
TIntermSymbol* symbol = context->intermediate.addSymbol(0, *(yyvsp[(2) - (2)].lex).string, TType((yyvsp[(1) - (2)].interm.type)), (yyvsp[(2) - (2)].lex).line);
@@ -3481,7 +3495,7 @@
}
break;
- case 102:
+ case 103:
{
context->error((yyvsp[(2) - (4)].lex).line, "unsized array declarations not supported", (yyvsp[(2) - (4)].lex).string->c_str());
@@ -3493,7 +3507,7 @@
}
break;
- case 103:
+ case 104:
{
TType type = TType((yyvsp[(1) - (5)].interm.type));
@@ -3529,7 +3543,7 @@
}
break;
- case 104:
+ case 105:
{
if (context->structQualifierErrorCheck((yyvsp[(2) - (4)].lex).line, (yyvsp[(1) - (4)].interm.type)))
@@ -3553,7 +3567,7 @@
}
break;
- case 105:
+ case 106:
{
VERTEX_ONLY("invariant declaration", (yyvsp[(1) - (2)].lex).line);
@@ -3575,7 +3589,7 @@
}
break;
- case 106:
+ case 107:
{
(yyval.interm.type) = (yyvsp[(1) - (1)].interm.type);
@@ -3588,14 +3602,14 @@
}
break;
- case 107:
+ case 108:
{
(yyval.interm.type) = context->addFullySpecifiedType((yyvsp[(1) - (2)].interm.type).qualifier, (yyvsp[(2) - (2)].interm.type));
}
break;
- case 108:
+ case 109:
{
(yyval.interm.type).qualifier = EvqSmooth;
@@ -3603,7 +3617,7 @@
}
break;
- case 109:
+ case 110:
{
(yyval.interm.type).qualifier = EvqFlat;
@@ -3611,14 +3625,14 @@
}
break;
- case 110:
+ case 111:
{
(yyval.interm.qualifier) = EvqConst;
}
break;
- case 111:
+ case 112:
{
VERTEX_ONLY("attribute", (yyvsp[(1) - (1)].lex).line);
@@ -3629,7 +3643,7 @@
}
break;
- case 112:
+ case 113:
{
ES2_ONLY("varying", (yyvsp[(1) - (1)].lex).line);
@@ -3642,7 +3656,7 @@
}
break;
- case 113:
+ case 114:
{
ES2_ONLY("varying", (yyvsp[(1) - (2)].lex).line);
@@ -3655,14 +3669,14 @@
}
break;
- case 114:
+ case 115:
{
(yyval.interm.type).setBasic(EbtVoid, (yyvsp[(1) - (1)].interm.type).qualifier, (yyvsp[(1) - (1)].interm.type).line);
}
break;
- case 115:
+ case 116:
{
if ((yyvsp[(2) - (2)].interm.type).qualifier == EvqSmoothIn) {
@@ -3702,7 +3716,7 @@
}
break;
- case 116:
+ case 117:
{
context->error((yyvsp[(1) - (1)].interm.type).line, "interpolation qualifier requires a fragment 'in' or vertex 'out' storage qualifier", getInterpolationString((yyvsp[(1) - (1)].interm.type).qualifier));
@@ -3713,7 +3727,7 @@
}
break;
- case 117:
+ case 118:
{
(yyval.interm.type).qualifier = EvqConst;
@@ -3721,7 +3735,7 @@
}
break;
- case 118:
+ case 119:
{
ES3_ONLY("in", (yyvsp[(1) - (1)].lex).line, "storage qualifier");
@@ -3730,7 +3744,7 @@
}
break;
- case 119:
+ case 120:
{
ES3_ONLY("out", (yyvsp[(1) - (1)].lex).line, "storage qualifier");
@@ -3739,7 +3753,7 @@
}
break;
- case 120:
+ case 121:
{
ES3_ONLY("centroid in", (yyvsp[(1) - (2)].lex).line, "storage qualifier");
@@ -3748,7 +3762,7 @@
}
break;
- case 121:
+ case 122:
{
ES3_ONLY("centroid out", (yyvsp[(1) - (2)].lex).line, "storage qualifier");
@@ -3757,7 +3771,7 @@
}
break;
- case 122:
+ case 123:
{
if (context->globalErrorCheck((yyvsp[(1) - (1)].lex).line, context->symbolTable.atGlobalLevel(), "uniform"))
@@ -3767,7 +3781,7 @@
}
break;
- case 123:
+ case 124:
{
(yyval.interm.type) = (yyvsp[(1) - (1)].interm.type);
@@ -3781,7 +3795,7 @@
}
break;
- case 124:
+ case 125:
{
(yyval.interm.type) = (yyvsp[(2) - (2)].interm.type);
@@ -3789,35 +3803,35 @@
}
break;
- case 125:
+ case 126:
{
(yyval.interm.precision) = EbpHigh;
}
break;
- case 126:
+ case 127:
{
(yyval.interm.precision) = EbpMedium;
}
break;
- case 127:
+ case 128:
{
(yyval.interm.precision) = EbpLow;
}
break;
- case 128:
+ case 129:
{
(yyval.interm.type) = (yyvsp[(1) - (1)].interm.type);
}
break;
- case 129:
+ case 130:
{
(yyval.interm.type) = (yyvsp[(1) - (4)].interm.type);
@@ -3833,7 +3847,7 @@
}
break;
- case 130:
+ case 131:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
@@ -3841,19 +3855,11 @@
}
break;
- case 131:
-
- {
- TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtFloat, qual, (yyvsp[(1) - (1)].lex).line);
- }
- break;
-
case 132:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtInt, qual, (yyvsp[(1) - (1)].lex).line);
+ (yyval.interm.type).setBasic(EbtFloat, qual, (yyvsp[(1) - (1)].lex).line);
}
break;
@@ -3861,7 +3867,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
+ (yyval.interm.type).setBasic(EbtInt, qual, (yyvsp[(1) - (1)].lex).line);
}
break;
@@ -3869,7 +3875,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtBool, qual, (yyvsp[(1) - (1)].lex).line);
+ (yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
}
break;
@@ -3877,8 +3883,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtFloat, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(2);
+ (yyval.interm.type).setBasic(EbtBool, qual, (yyvsp[(1) - (1)].lex).line);
}
break;
@@ -3887,7 +3892,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtFloat, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(3);
+ (yyval.interm.type).setAggregate(2);
}
break;
@@ -3896,7 +3901,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtFloat, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(4);
+ (yyval.interm.type).setAggregate(3);
}
break;
@@ -3904,8 +3909,8 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtBool, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(2);
+ (yyval.interm.type).setBasic(EbtFloat, qual, (yyvsp[(1) - (1)].lex).line);
+ (yyval.interm.type).setAggregate(4);
}
break;
@@ -3914,7 +3919,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtBool, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(3);
+ (yyval.interm.type).setAggregate(2);
}
break;
@@ -3923,7 +3928,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtBool, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(4);
+ (yyval.interm.type).setAggregate(3);
}
break;
@@ -3931,8 +3936,8 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtInt, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(2);
+ (yyval.interm.type).setBasic(EbtBool, qual, (yyvsp[(1) - (1)].lex).line);
+ (yyval.interm.type).setAggregate(4);
}
break;
@@ -3941,7 +3946,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtInt, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(3);
+ (yyval.interm.type).setAggregate(2);
}
break;
@@ -3950,7 +3955,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtInt, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(4);
+ (yyval.interm.type).setAggregate(3);
}
break;
@@ -3958,8 +3963,8 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
- (yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(2);
+ (yyval.interm.type).setBasic(EbtInt, qual, (yyvsp[(1) - (1)].lex).line);
+ (yyval.interm.type).setAggregate(4);
}
break;
@@ -3968,7 +3973,7 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(3);
+ (yyval.interm.type).setAggregate(2);
}
break;
@@ -3977,13 +3982,22 @@
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
- (yyval.interm.type).setAggregate(4);
+ (yyval.interm.type).setAggregate(3);
}
break;
case 147:
{
+ TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
+ (yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
+ (yyval.interm.type).setAggregate(4);
+ }
+ break;
+
+ case 148:
+
+ {
FRAG_VERT_ONLY("mat2", (yyvsp[(1) - (1)].lex).line);
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtFloat, qual, (yyvsp[(1) - (1)].lex).line);
@@ -3991,7 +4005,7 @@
}
break;
- case 148:
+ case 149:
{
FRAG_VERT_ONLY("mat3", (yyvsp[(1) - (1)].lex).line);
@@ -4001,7 +4015,7 @@
}
break;
- case 149:
+ case 150:
{
FRAG_VERT_ONLY("mat4", (yyvsp[(1) - (1)].lex).line);
@@ -4011,7 +4025,7 @@
}
break;
- case 150:
+ case 151:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
@@ -4020,7 +4034,7 @@
}
break;
- case 151:
+ case 152:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
@@ -4029,7 +4043,7 @@
}
break;
- case 152:
+ case 153:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
@@ -4038,7 +4052,7 @@
}
break;
- case 153:
+ case 154:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
@@ -4047,7 +4061,7 @@
}
break;
- case 154:
+ case 155:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
@@ -4056,7 +4070,7 @@
}
break;
- case 155:
+ case 156:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
@@ -4065,7 +4079,7 @@
}
break;
- case 156:
+ case 157:
{
FRAG_VERT_ONLY("sampler2D", (yyvsp[(1) - (1)].lex).line);
@@ -4074,7 +4088,7 @@
}
break;
- case 157:
+ case 158:
{
FRAG_VERT_ONLY("samplerCube", (yyvsp[(1) - (1)].lex).line);
@@ -4083,7 +4097,7 @@
}
break;
- case 158:
+ case 159:
{
if (!context->supportsExtension("GL_OES_EGL_image_external")) {
@@ -4096,7 +4110,7 @@
}
break;
- case 159:
+ case 160:
{
if (!context->supportsExtension("GL_ARB_texture_rectangle")) {
@@ -4109,7 +4123,7 @@
}
break;
- case 160:
+ case 161:
{
FRAG_VERT_ONLY("struct", (yyvsp[(1) - (1)].interm.type).line);
@@ -4118,7 +4132,7 @@
}
break;
- case 161:
+ case 162:
{
//
@@ -4132,38 +4146,38 @@
}
break;
- case 162:
+ case 163:
{ if (context->enterStructDeclaration((yyvsp[(2) - (3)].lex).line, *(yyvsp[(2) - (3)].lex).string)) context->recover(); }
break;
- case 163:
+ case 164:
{
(yyval.interm.type) = context->addStructure((yyvsp[(1) - (6)].lex).line, (yyvsp[(2) - (6)].lex).line, *(yyvsp[(2) - (6)].lex).string, (yyvsp[(5) - (6)].interm.typeList));
}
break;
- case 164:
+ case 165:
{ if (context->enterStructDeclaration((yyvsp[(2) - (2)].lex).line, *(yyvsp[(2) - (2)].lex).string)) context->recover(); }
break;
- case 165:
+ case 166:
{
(yyval.interm.type) = context->addStructure((yyvsp[(1) - (5)].lex).line, 0, "", (yyvsp[(4) - (5)].interm.typeList));
}
break;
- case 166:
+ case 167:
{
(yyval.interm.typeList) = (yyvsp[(1) - (1)].interm.typeList);
}
break;
- case 167:
+ case 168:
{
(yyval.interm.typeList) = (yyvsp[(1) - (2)].interm.typeList);
@@ -4179,14 +4193,14 @@
}
break;
- case 168:
+ case 169:
{
(yyval.interm.typeList) = context->addStructDeclaratorList((yyvsp[(1) - (3)].interm.type), (yyvsp[(2) - (3)].interm.typeList));
}
break;
- case 169:
+ case 170:
{
// ES3 Only, but errors should be handled elsewhere
@@ -4195,7 +4209,7 @@
}
break;
- case 170:
+ case 171:
{
(yyval.interm.typeList) = NewPoolTTypeList();
@@ -4203,14 +4217,14 @@
}
break;
- case 171:
+ case 172:
{
(yyval.interm.typeList)->push_back((yyvsp[(3) - (3)].interm.typeLine));
}
break;
- case 172:
+ case 173:
{
if (context->reservedErrorCheck((yyvsp[(1) - (1)].lex).line, *(yyvsp[(1) - (1)].lex).string))
@@ -4222,7 +4236,7 @@
}
break;
- case 173:
+ case 174:
{
if (context->reservedErrorCheck((yyvsp[(1) - (4)].lex).line, *(yyvsp[(1) - (4)].lex).string))
@@ -4239,24 +4253,19 @@
}
break;
- case 174:
+ case 175:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
- case 175:
-
- { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
- break;
-
case 176:
- { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermAggregate); }
+ { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 177:
- { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
+ { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermAggregate); }
break;
case 178:
@@ -4286,21 +4295,26 @@
case 183:
- { (yyval.interm.intermAggregate) = 0; }
+ { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 184:
- { context->symbolTable.push(); }
+ { (yyval.interm.intermAggregate) = 0; }
break;
case 185:
- { context->symbolTable.pop(); }
+ { context->symbolTable.push(); }
break;
case 186:
+ { context->symbolTable.pop(); }
+ break;
+
+ case 187:
+
{
if ((yyvsp[(3) - (5)].interm.intermAggregate) != 0) {
(yyvsp[(3) - (5)].interm.intermAggregate)->setOp(EOpSequence);
@@ -4310,11 +4324,6 @@
}
break;
- case 187:
-
- { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
- break;
-
case 188:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
@@ -4322,32 +4331,37 @@
case 189:
- { context->symbolTable.push(); }
+ { (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 190:
- { context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
+ { context->symbolTable.push(); }
break;
case 191:
- { context->symbolTable.push(); }
+ { context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
break;
case 192:
- { context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
+ { context->symbolTable.push(); }
break;
case 193:
+ { context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
+ break;
+
+ case 194:
+
{
(yyval.interm.intermNode) = 0;
}
break;
- case 194:
+ case 195:
{
if ((yyvsp[(2) - (3)].interm.intermAggregate)) {
@@ -4358,31 +4372,31 @@
}
break;
- case 195:
+ case 196:
{
(yyval.interm.intermAggregate) = context->intermediate.makeAggregate((yyvsp[(1) - (1)].interm.intermNode), 0);
}
break;
- case 196:
+ case 197:
{
(yyval.interm.intermAggregate) = context->intermediate.growAggregate((yyvsp[(1) - (2)].interm.intermAggregate), (yyvsp[(2) - (2)].interm.intermNode), 0);
}
break;
- case 197:
+ case 198:
{ (yyval.interm.intermNode) = 0; }
break;
- case 198:
+ case 199:
{ (yyval.interm.intermNode) = static_cast<TIntermNode*>((yyvsp[(1) - (2)].interm.intermTypedNode)); }
break;
- case 199:
+ case 200:
{
if (context->boolErrorCheck((yyvsp[(1) - (5)].lex).line, (yyvsp[(3) - (5)].interm.intermTypedNode)))
@@ -4391,7 +4405,7 @@
}
break;
- case 200:
+ case 201:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (3)].interm.intermNode);
@@ -4399,7 +4413,7 @@
}
break;
- case 201:
+ case 202:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (1)].interm.intermNode);
@@ -4407,7 +4421,7 @@
}
break;
- case 202:
+ case 203:
{
(yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
@@ -4416,7 +4430,7 @@
}
break;
- case 203:
+ case 204:
{
TIntermNode* intermNode;
@@ -4434,12 +4448,12 @@
}
break;
- case 204:
+ case 205:
{ context->symbolTable.push(); ++context->loopNestingLevel; }
break;
- case 205:
+ case 206:
{
context->symbolTable.pop();
@@ -4448,12 +4462,12 @@
}
break;
- case 206:
+ case 207:
{ ++context->loopNestingLevel; }
break;
- case 207:
+ case 208:
{
if (context->boolErrorCheck((yyvsp[(8) - (8)].lex).line, (yyvsp[(6) - (8)].interm.intermTypedNode)))
@@ -4464,24 +4478,17 @@
}
break;
- case 208:
-
- { context->symbolTable.push(); ++context->loopNestingLevel; }
- break;
-
case 209:
- {
- context->symbolTable.pop();
- (yyval.interm.intermNode) = context->intermediate.addLoop(ELoopFor, (yyvsp[(4) - (7)].interm.intermNode), reinterpret_cast<TIntermTyped*>((yyvsp[(5) - (7)].interm.nodePair).node1), reinterpret_cast<TIntermTyped*>((yyvsp[(5) - (7)].interm.nodePair).node2), (yyvsp[(7) - (7)].interm.intermNode), (yyvsp[(1) - (7)].lex).line);
- --context->loopNestingLevel;
- }
+ { context->symbolTable.push(); ++context->loopNestingLevel; }
break;
case 210:
{
- (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
+ context->symbolTable.pop();
+ (yyval.interm.intermNode) = context->intermediate.addLoop(ELoopFor, (yyvsp[(4) - (7)].interm.intermNode), reinterpret_cast<TIntermTyped*>((yyvsp[(5) - (7)].interm.nodePair).node1), reinterpret_cast<TIntermTyped*>((yyvsp[(5) - (7)].interm.nodePair).node2), (yyvsp[(7) - (7)].interm.intermNode), (yyvsp[(1) - (7)].lex).line);
+ --context->loopNestingLevel;
}
break;
@@ -4495,26 +4502,33 @@
case 212:
{
- (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
+ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 213:
{
- (yyval.interm.intermTypedNode) = 0;
+ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
}
break;
case 214:
{
+ (yyval.interm.intermTypedNode) = 0;
+ }
+ break;
+
+ case 215:
+
+ {
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (2)].interm.intermTypedNode);
(yyval.interm.nodePair).node2 = 0;
}
break;
- case 215:
+ case 216:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (3)].interm.intermTypedNode);
@@ -4522,7 +4536,7 @@
}
break;
- case 216:
+ case 217:
{
if (context->loopNestingLevel <= 0) {
@@ -4533,7 +4547,7 @@
}
break;
- case 217:
+ case 218:
{
if (context->loopNestingLevel <= 0) {
@@ -4544,7 +4558,7 @@
}
break;
- case 218:
+ case 219:
{
(yyval.interm.intermNode) = context->intermediate.addBranch(EOpReturn, (yyvsp[(1) - (2)].lex).line);
@@ -4555,7 +4569,7 @@
}
break;
- case 219:
+ case 220:
{
(yyval.interm.intermNode) = context->intermediate.addBranch(EOpReturn, (yyvsp[(2) - (3)].interm.intermTypedNode), (yyvsp[(1) - (3)].lex).line);
@@ -4570,7 +4584,7 @@
}
break;
- case 220:
+ case 221:
{
FRAG_ONLY("discard", (yyvsp[(1) - (2)].lex).line);
@@ -4578,18 +4592,10 @@
}
break;
- case 221:
-
- {
- (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
- context->treeRoot = (yyval.interm.intermNode);
- }
- break;
-
case 222:
{
- (yyval.interm.intermNode) = context->intermediate.growAggregate((yyvsp[(1) - (2)].interm.intermNode), (yyvsp[(2) - (2)].interm.intermNode), 0);
+ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
context->treeRoot = (yyval.interm.intermNode);
}
break;
@@ -4597,7 +4603,8 @@
case 223:
{
- (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
+ (yyval.interm.intermNode) = context->intermediate.growAggregate((yyvsp[(1) - (2)].interm.intermNode), (yyvsp[(2) - (2)].interm.intermNode), 0);
+ context->treeRoot = (yyval.interm.intermNode);
}
break;
@@ -4611,6 +4618,13 @@
case 225:
{
+ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
+ }
+ break;
+
+ case 226:
+
+ {
TFunction* function = (yyvsp[(1) - (1)].interm).function;
const TSymbol *builtIn = context->symbolTable.findBuiltIn(function->getMangledName(), context->shaderVersion);
@@ -4697,7 +4711,7 @@
}
break;
- case 226:
+ case 227:
{
//?? Check that all paths return a value if return type != void ?
diff --git a/src/compiler/glslang_tab.h b/src/compiler/glslang_tab.h
index a794825..be471f1 100644
--- a/src/compiler/glslang_tab.h
+++ b/src/compiler/glslang_tab.h
@@ -111,53 +111,54 @@
TYPE_NAME = 320,
FLOATCONSTANT = 321,
INTCONSTANT = 322,
- BOOLCONSTANT = 323,
- FIELD_SELECTION = 324,
- LEFT_OP = 325,
- RIGHT_OP = 326,
- INC_OP = 327,
- DEC_OP = 328,
- LE_OP = 329,
- GE_OP = 330,
- EQ_OP = 331,
- NE_OP = 332,
- AND_OP = 333,
- OR_OP = 334,
- XOR_OP = 335,
- MUL_ASSIGN = 336,
- DIV_ASSIGN = 337,
- ADD_ASSIGN = 338,
- MOD_ASSIGN = 339,
- LEFT_ASSIGN = 340,
- RIGHT_ASSIGN = 341,
- AND_ASSIGN = 342,
- XOR_ASSIGN = 343,
- OR_ASSIGN = 344,
- SUB_ASSIGN = 345,
- LEFT_PAREN = 346,
- RIGHT_PAREN = 347,
- LEFT_BRACKET = 348,
- RIGHT_BRACKET = 349,
- LEFT_BRACE = 350,
- RIGHT_BRACE = 351,
- DOT = 352,
- COMMA = 353,
- COLON = 354,
- EQUAL = 355,
- SEMICOLON = 356,
- BANG = 357,
- DASH = 358,
- TILDE = 359,
- PLUS = 360,
- STAR = 361,
- SLASH = 362,
- PERCENT = 363,
- LEFT_ANGLE = 364,
- RIGHT_ANGLE = 365,
- VERTICAL_BAR = 366,
- CARET = 367,
- AMPERSAND = 368,
- QUESTION = 369
+ UINTCONSTANT = 323,
+ BOOLCONSTANT = 324,
+ FIELD_SELECTION = 325,
+ LEFT_OP = 326,
+ RIGHT_OP = 327,
+ INC_OP = 328,
+ DEC_OP = 329,
+ LE_OP = 330,
+ GE_OP = 331,
+ EQ_OP = 332,
+ NE_OP = 333,
+ AND_OP = 334,
+ OR_OP = 335,
+ XOR_OP = 336,
+ MUL_ASSIGN = 337,
+ DIV_ASSIGN = 338,
+ ADD_ASSIGN = 339,
+ MOD_ASSIGN = 340,
+ LEFT_ASSIGN = 341,
+ RIGHT_ASSIGN = 342,
+ AND_ASSIGN = 343,
+ XOR_ASSIGN = 344,
+ OR_ASSIGN = 345,
+ SUB_ASSIGN = 346,
+ LEFT_PAREN = 347,
+ RIGHT_PAREN = 348,
+ LEFT_BRACKET = 349,
+ RIGHT_BRACKET = 350,
+ LEFT_BRACE = 351,
+ RIGHT_BRACE = 352,
+ DOT = 353,
+ COMMA = 354,
+ COLON = 355,
+ EQUAL = 356,
+ SEMICOLON = 357,
+ BANG = 358,
+ DASH = 359,
+ TILDE = 360,
+ PLUS = 361,
+ STAR = 362,
+ SLASH = 363,
+ PERCENT = 364,
+ LEFT_ANGLE = 365,
+ RIGHT_ANGLE = 366,
+ VERTICAL_BAR = 367,
+ CARET = 368,
+ AMPERSAND = 369,
+ QUESTION = 370
};
#endif
@@ -173,6 +174,7 @@
TString *string;
float f;
int i;
+ unsigned int u;
bool b;
};
TSymbol* symbol;
diff --git a/src/compiler/preprocessor/Tokenizer.cpp b/src/compiler/preprocessor/Tokenizer.cpp
index feea74e..2b72033 100644
--- a/src/compiler/preprocessor/Tokenizer.cpp
+++ b/src/compiler/preprocessor/Tokenizer.cpp
@@ -367,17 +367,17 @@
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int16_t yy_accept[87] =
+static yyconst flex_int16_t yy_accept[90] =
{ 0,
0, 0, 0, 0, 39, 37, 34, 35, 35, 33,
7, 33, 33, 33, 33, 33, 33, 33, 33, 9,
9, 33, 33, 33, 8, 37, 33, 33, 3, 5,
5, 4, 34, 35, 19, 27, 20, 30, 25, 12,
23, 13, 24, 10, 2, 1, 26, 10, 9, 11,
- 11, 11, 11, 9, 14, 16, 18, 17, 15, 8,
- 36, 36, 31, 21, 32, 22, 3, 5, 6, 11,
- 10, 11, 1, 10, 11, 0, 10, 9, 28, 29,
- 0, 10, 10, 10, 10, 0
+ 11, 11, 9, 11, 9, 9, 14, 16, 18, 17,
+ 15, 8, 36, 36, 31, 21, 32, 22, 3, 5,
+ 6, 11, 10, 11, 1, 10, 11, 0, 10, 9,
+ 28, 29, 0, 10, 10, 10, 9, 10, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
@@ -390,12 +390,12 @@
16, 16, 16, 16, 16, 17, 17, 9, 9, 18,
19, 20, 9, 1, 21, 21, 21, 21, 22, 21,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
- 23, 23, 23, 23, 23, 23, 23, 24, 23, 23,
- 9, 25, 9, 26, 23, 1, 21, 21, 21, 21,
+ 23, 23, 23, 23, 24, 23, 23, 25, 23, 23,
+ 9, 26, 9, 27, 23, 1, 21, 21, 21, 21,
22, 21, 23, 23, 23, 23, 23, 23, 23, 23,
- 23, 23, 23, 23, 23, 23, 23, 23, 23, 24,
- 23, 23, 9, 27, 9, 9, 1, 1, 1, 1,
+ 23, 23, 23, 23, 23, 23, 24, 23, 23, 25,
+ 23, 23, 9, 28, 9, 9, 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,
@@ -412,89 +412,95 @@
1, 1, 1, 1, 1
} ;
-static yyconst flex_int32_t yy_meta[28] =
+static yyconst flex_int32_t yy_meta[29] =
{ 0,
1, 1, 2, 2, 1, 1, 1, 1, 1, 3,
- 1, 1, 4, 1, 5, 5, 5, 1, 1, 1,
- 5, 5, 5, 5, 1, 1, 1
+ 1, 1, 1, 1, 4, 4, 4, 1, 1, 1,
+ 4, 4, 4, 4, 4, 1, 1, 1
} ;
-static yyconst flex_int16_t yy_base[92] =
+static yyconst flex_int16_t yy_base[94] =
{ 0,
- 0, 0, 25, 27, 162, 163, 159, 163, 152, 132,
- 163, 131, 24, 163, 116, 22, 26, 31, 30, 37,
- 40, 44, 115, 46, 0, 64, 50, 15, 0, 163,
- 124, 91, 88, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 64, 163, 0, 163, 76, 54, 58,
- 79, 91, 91, 0, 56, 163, 163, 163, 32, 0,
- 163, 36, 163, 163, 163, 163, 0, 163, 163, 94,
- 0, 106, 0, 0, 113, 55, 72, 113, 163, 163,
- 116, 101, 108, 123, 126, 163, 143, 31, 148, 153,
- 155
+ 0, 0, 26, 28, 167, 173, 164, 173, 129, 107,
+ 173, 102, 25, 173, 97, 23, 27, 32, 31, 38,
+ 51, 38, 88, 50, 0, 74, 16, 52, 0, 173,
+ 98, 81, 80, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 68, 173, 0, 173, 81, 54, 84,
+ 95, 107, 0, 112, 0, 0, 46, 173, 173, 173,
+ 39, 0, 173, 49, 173, 173, 173, 173, 0, 173,
+ 173, 98, 0, 127, 0, 0, 134, 71, 119, 16,
+ 173, 173, 137, 129, 136, 140, 0, 143, 173, 160,
+ 33, 164, 168
} ;
-static yyconst flex_int16_t yy_def[92] =
+static yyconst flex_int16_t yy_def[94] =
{ 0,
- 86, 1, 87, 87, 86, 86, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
- 20, 86, 86, 86, 88, 86, 86, 86, 89, 86,
- 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 90, 86, 86, 20, 20,
- 48, 51, 91, 21, 86, 86, 86, 86, 86, 88,
- 86, 86, 86, 86, 86, 86, 89, 86, 86, 44,
- 44, 70, 90, 48, 51, 86, 52, 91, 86, 86,
- 86, 72, 75, 86, 86, 0, 86, 86, 86, 86,
- 86
+ 89, 1, 90, 90, 89, 89, 89, 89, 89, 89,
+ 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
+ 89, 89, 89, 89, 91, 89, 89, 89, 92, 89,
+ 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
+ 89, 89, 89, 89, 89, 93, 89, 89, 20, 20,
+ 48, 51, 51, 89, 21, 51, 89, 89, 89, 89,
+ 89, 91, 89, 89, 89, 89, 89, 89, 92, 89,
+ 89, 44, 44, 72, 93, 48, 51, 89, 52, 54,
+ 89, 89, 89, 74, 77, 89, 51, 89, 0, 89,
+ 89, 89, 89
} ;
-static yyconst flex_int16_t yy_nxt[191] =
+static yyconst flex_int16_t yy_nxt[202] =
{ 0,
6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 21, 22, 23, 24,
- 25, 25, 25, 25, 26, 27, 28, 30, 31, 30,
- 31, 37, 40, 65, 32, 60, 32, 42, 61, 45,
- 41, 66, 38, 46, 43, 44, 44, 44, 47, 48,
- 80, 49, 49, 50, 54, 54, 54, 51, 52, 51,
- 53, 55, 56, 51, 58, 59, 61, 62, 63, 84,
- 84, 84, 50, 50, 79, 64, 70, 51, 71, 71,
- 71, 51, 86, 86, 70, 72, 70, 70, 51, 33,
- 74, 74, 74, 51, 51, 51, 51, 75, 51, 51,
+ 25, 25, 25, 25, 25, 26, 27, 28, 30, 31,
+ 30, 31, 37, 40, 65, 32, 62, 32, 42, 87,
+ 45, 41, 66, 38, 46, 43, 44, 44, 44, 47,
+ 48, 63, 49, 49, 50, 57, 58, 82, 51, 52,
+ 51, 53, 54, 48, 81, 55, 55, 55, 60, 61,
+ 67, 51, 52, 51, 56, 51, 63, 64, 51, 68,
+ 72, 33, 73, 73, 73, 86, 86, 86, 72, 74,
+ 72, 72, 72, 51, 71, 76, 76, 76, 50, 50,
- 51, 76, 76, 51, 69, 77, 77, 77, 70, 70,
- 70, 86, 86, 51, 51, 70, 81, 81, 86, 86,
- 82, 82, 82, 81, 81, 51, 68, 83, 83, 83,
- 85, 85, 85, 57, 39, 51, 51, 84, 84, 84,
- 85, 85, 85, 29, 29, 29, 29, 29, 67, 36,
- 35, 67, 67, 73, 34, 73, 73, 73, 78, 78,
- 33, 86, 5, 86, 86, 86, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 86, 86, 86, 86, 86
+ 70, 51, 77, 51, 51, 51, 59, 51, 51, 51,
+ 51, 51, 72, 72, 72, 39, 51, 78, 78, 72,
+ 36, 79, 79, 79, 51, 35, 80, 80, 80, 89,
+ 89, 34, 80, 80, 51, 51, 51, 83, 83, 89,
+ 89, 84, 84, 84, 83, 83, 89, 89, 85, 85,
+ 85, 88, 88, 88, 86, 86, 86, 88, 88, 88,
+ 29, 29, 29, 29, 69, 33, 89, 69, 75, 89,
+ 75, 75, 5, 89, 89, 89, 89, 89, 89, 89,
+ 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
+ 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
+
+ 89
} ;
-static yyconst flex_int16_t yy_chk[191] =
+static yyconst flex_int16_t yy_chk[202] =
{ 0,
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, 3, 3, 4,
- 4, 13, 16, 28, 3, 88, 4, 17, 62, 19,
- 16, 28, 13, 19, 17, 18, 18, 18, 19, 20,
- 59, 20, 20, 20, 21, 21, 21, 20, 20, 20,
- 20, 22, 22, 21, 24, 24, 26, 26, 27, 76,
- 76, 76, 50, 50, 55, 27, 44, 49, 44, 44,
- 44, 50, 77, 77, 44, 44, 44, 44, 48, 33,
- 48, 48, 48, 51, 51, 51, 48, 48, 48, 48,
+ 1, 1, 1, 1, 1, 1, 1, 1, 3, 3,
+ 4, 4, 13, 16, 27, 3, 91, 4, 17, 80,
+ 19, 16, 27, 13, 19, 17, 18, 18, 18, 19,
+ 20, 64, 20, 20, 20, 22, 22, 61, 20, 20,
+ 20, 20, 20, 21, 57, 21, 21, 21, 24, 24,
+ 28, 21, 21, 21, 21, 21, 26, 26, 49, 28,
+ 44, 33, 44, 44, 44, 78, 78, 78, 44, 44,
+ 44, 44, 44, 48, 32, 48, 48, 48, 50, 50,
- 51, 52, 52, 53, 32, 52, 52, 52, 70, 70,
- 70, 82, 82, 53, 53, 70, 72, 72, 83, 83,
- 72, 72, 72, 75, 75, 78, 31, 75, 75, 75,
- 81, 81, 81, 23, 15, 78, 78, 84, 84, 84,
- 85, 85, 85, 87, 87, 87, 87, 87, 89, 12,
- 10, 89, 89, 90, 9, 90, 90, 90, 91, 91,
- 7, 5, 86, 86, 86, 86, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 86, 86, 86, 86, 86
+ 31, 48, 48, 48, 48, 48, 23, 50, 50, 51,
+ 51, 51, 72, 72, 72, 15, 51, 52, 52, 72,
+ 12, 52, 52, 52, 54, 10, 54, 54, 54, 79,
+ 79, 9, 54, 54, 54, 54, 54, 74, 74, 84,
+ 84, 74, 74, 74, 77, 77, 85, 85, 77, 77,
+ 77, 83, 83, 83, 86, 86, 86, 88, 88, 88,
+ 90, 90, 90, 90, 92, 7, 5, 92, 93, 0,
+ 93, 93, 89, 89, 89, 89, 89, 89, 89, 89,
+ 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
+ 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
+
+ 89
} ;
/* The intent behind this definition is that it'll catch
@@ -847,13 +853,13 @@
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 >= 87 )
+ if ( yy_current_state >= 90 )
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 != 86 );
+ while ( yy_current_state != 89 );
yy_cp = yyg->yy_last_accepting_cpos;
yy_current_state = yyg->yy_last_accepting_state;
@@ -1446,7 +1452,7 @@
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 >= 87 )
+ if ( yy_current_state >= 90 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -1475,11 +1481,11 @@
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 >= 87 )
+ if ( yy_current_state >= 90 )
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 == 86);
+ yy_is_jam = (yy_current_state == 89);
return yy_is_jam ? 0 : yy_current_state;
}
diff --git a/src/compiler/preprocessor/Tokenizer.l b/src/compiler/preprocessor/Tokenizer.l
index ea87523..89da400 100644
--- a/src/compiler/preprocessor/Tokenizer.l
+++ b/src/compiler/preprocessor/Tokenizer.l
@@ -79,9 +79,9 @@
IDENTIFIER [_a-zA-Z][_a-zA-Z0-9]*
PUNCTUATOR [][<>(){}.+-/*%^|&~=!:;,?]
-DECIMAL_CONSTANT [1-9][0-9]*
-OCTAL_CONSTANT 0[0-7]*
-HEXADECIMAL_CONSTANT 0[xX][0-9a-fA-F]+
+DECIMAL_CONSTANT [1-9][0-9]*[uU]?
+OCTAL_CONSTANT 0[0-7]*[uU]?
+HEXADECIMAL_CONSTANT 0[xX][0-9a-fA-F]+[uU]?
DIGIT [0-9]
EXPONENT_PART [eE][+-]?{DIGIT}+
diff --git a/src/compiler/preprocessor/preprocessor.vcxproj b/src/compiler/preprocessor/preprocessor.vcxproj
index ca8530b..b23cf64 100644
--- a/src/compiler/preprocessor/preprocessor.vcxproj
+++ b/src/compiler/preprocessor/preprocessor.vcxproj
@@ -164,6 +164,7 @@
<ClInclude Include="Tokenizer.h" />
</ItemGroup>
<ItemGroup>
+ <None Include="ExpressionParser.y" />
<None Include="Tokenizer.l" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
diff --git a/src/compiler/preprocessor/preprocessor.vcxproj.filters b/src/compiler/preprocessor/preprocessor.vcxproj.filters
index 4ac202f..030f5af 100644
--- a/src/compiler/preprocessor/preprocessor.vcxproj.filters
+++ b/src/compiler/preprocessor/preprocessor.vcxproj.filters
@@ -96,5 +96,8 @@
<None Include="Tokenizer.l">
<Filter>Source Files</Filter>
</None>
+ <None Include="ExpressionParser.y">
+ <Filter>Source Files</Filter>
+ </None>
</ItemGroup>
</Project>
\ No newline at end of file