Commit 2a1d8a38 by Nicolas Capens Committed by Shannon Woods

Add shadow samplers to the compiler front-end.

TRAC #23394 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
parent aaaec130
......@@ -125,7 +125,10 @@ typedef enum {
SH_UNSIGNED_INT_SAMPLER_2D = 0x8DD2,
SH_UNSIGNED_INT_SAMPLER_3D = 0x8DD3,
SH_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4,
SH_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7
SH_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7,
SH_SAMPLER_2D_SHADOW = 0x8B62,
SH_SAMPLER_CUBE_SHADOW = 0x8DC5,
SH_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4
} ShDataType;
typedef enum {
......
......@@ -57,6 +57,9 @@ enum TBasicType
EbtUSampler3D,
EbtUSamplerCube,
EbtUSampler2DArray,
EbtSampler2DShadow,
EbtSamplerCubeShadow,
EbtSampler2DArrayShadow,
EbtGuardSamplerEnd, // non type: see implementation of IsSampler()
EbtStruct,
EbtInterfaceBlock,
......@@ -68,28 +71,31 @@ inline const char* getBasicString(TBasicType t)
{
switch (t)
{
case EbtVoid: return "void"; break;
case EbtFloat: return "float"; break;
case EbtInt: return "int"; break;
case EbtUInt: return "uint"; break;
case EbtBool: return "bool"; break;
case EbtSampler2D: return "sampler2D"; break;
case EbtSampler3D: return "sampler3D"; break;
case EbtSamplerCube: return "samplerCube"; break;
case EbtSamplerExternalOES: return "samplerExternalOES"; break;
case EbtSampler2DRect: return "sampler2DRect"; break;
case EbtSampler2DArray: return "sampler2DArray"; break;
case EbtISampler2D: return "isampler2D"; break;
case EbtISampler3D: return "isampler3D"; break;
case EbtISamplerCube: return "isamplerCube"; break;
case EbtISampler2DArray: return "isampler2DArray"; break;
case EbtUSampler2D: return "usampler2D"; break;
case EbtUSampler3D: return "usampler3D"; break;
case EbtUSamplerCube: return "usamplerCube"; break;
case EbtUSampler2DArray: return "usampler2DArray"; break;
case EbtStruct: return "structure"; break;
case EbtInterfaceBlock: return "interface block"; break;
default: return "unknown type";
case EbtVoid: return "void"; break;
case EbtFloat: return "float"; break;
case EbtInt: return "int"; break;
case EbtUInt: return "uint"; break;
case EbtBool: return "bool"; break;
case EbtSampler2D: return "sampler2D"; break;
case EbtSampler3D: return "sampler3D"; break;
case EbtSamplerCube: return "samplerCube"; break;
case EbtSamplerExternalOES: return "samplerExternalOES"; break;
case EbtSampler2DRect: return "sampler2DRect"; break;
case EbtSampler2DArray: return "sampler2DArray"; break;
case EbtISampler2D: return "isampler2D"; break;
case EbtISampler3D: return "isampler3D"; break;
case EbtISamplerCube: return "isamplerCube"; break;
case EbtISampler2DArray: return "isampler2DArray"; break;
case EbtUSampler2D: return "usampler2D"; break;
case EbtUSampler3D: return "usampler3D"; break;
case EbtUSamplerCube: return "usamplerCube"; break;
case EbtUSampler2DArray: return "usampler2DArray"; break;
case EbtSampler2DShadow: return "sampler2DShadow"; break;
case EbtSamplerCubeShadow: return "samplerCubeShadow"; break;
case EbtSampler2DArrayShadow: return "sampler2DArrayShadow"; break;
case EbtStruct: return "structure"; break;
case EbtInterfaceBlock: return "interface block"; break;
default: return "unknown type";
}
}
......@@ -117,6 +123,9 @@ inline bool IsIntegerSampler(TBasicType type)
case EbtSamplerExternalOES:
case EbtSampler2DRect:
case EbtSampler2DArray:
case EbtSampler2DShadow:
case EbtSamplerCubeShadow:
case EbtSampler2DArrayShadow:
return false;
default:
assert(!IsSampler(type));
......@@ -137,6 +146,8 @@ inline bool IsSampler2D(TBasicType type)
case EbtUSampler2DArray:
case EbtSampler2DRect:
case EbtSamplerExternalOES:
case EbtSampler2DShadow:
case EbtSampler2DArrayShadow:
return true;
case EbtSampler3D:
case EbtISampler3D:
......@@ -144,6 +155,7 @@ inline bool IsSampler2D(TBasicType type)
case EbtISamplerCube:
case EbtUSamplerCube:
case EbtSamplerCube:
case EbtSamplerCubeShadow:
return false;
default:
assert(!IsSampler(type));
......@@ -159,6 +171,7 @@ inline bool IsSamplerCube(TBasicType type)
case EbtSamplerCube:
case EbtISamplerCube:
case EbtUSamplerCube:
case EbtSamplerCubeShadow:
return true;
case EbtSampler2D:
case EbtSampler3D:
......@@ -171,6 +184,8 @@ inline bool IsSamplerCube(TBasicType type)
case EbtUSampler2D:
case EbtUSampler3D:
case EbtUSampler2DArray:
case EbtSampler2DShadow:
case EbtSampler2DArrayShadow:
return false;
default:
assert(!IsSampler(type));
......@@ -198,6 +213,9 @@ inline bool IsSampler3D(TBasicType type)
case EbtUSampler2D:
case EbtUSamplerCube:
case EbtUSampler2DArray:
case EbtSampler2DShadow:
case EbtSamplerCubeShadow:
case EbtSampler2DArrayShadow:
return false;
default:
assert(!IsSampler(type));
......@@ -213,6 +231,7 @@ inline bool IsSamplerArray(TBasicType type)
case EbtSampler2DArray:
case EbtISampler2DArray:
case EbtUSampler2DArray:
case EbtSampler2DArrayShadow:
return true;
case EbtSampler2D:
case EbtISampler2D:
......@@ -225,6 +244,8 @@ inline bool IsSamplerArray(TBasicType type)
case EbtISamplerCube:
case EbtUSamplerCube:
case EbtSamplerCube:
case EbtSampler2DShadow:
case EbtSamplerCubeShadow:
return false;
default:
assert(!IsSampler(type));
......
......@@ -41,25 +41,29 @@ TString TType::buildMangledName() const
else if (isVector())
mangledName += 'v';
switch (type) {
case EbtFloat: mangledName += 'f'; break;
case EbtInt: mangledName += 'i'; break;
case EbtBool: mangledName += 'b'; break;
case EbtSampler2D: mangledName += "s2"; break;
case EbtSampler3D: mangledName += "s3"; break;
case EbtSamplerCube: mangledName += "sC"; break;
case EbtSampler2DArray: mangledName += "s2a"; break;
case EbtISampler2D: mangledName += "is2"; break;
case EbtISampler3D: mangledName += "is3"; break;
case EbtISamplerCube: mangledName += "isC"; break;
case EbtISampler2DArray: mangledName += "is2a"; break;
case EbtUSampler2D: mangledName += "us2"; break;
case EbtUSampler3D: mangledName += "us3"; break;
case EbtUSamplerCube: mangledName += "usC"; break;
case EbtUSampler2DArray: mangledName += "us2a"; break;
case EbtStruct: mangledName += structure->mangledName(); break;
case EbtInterfaceBlock: mangledName += interfaceBlock->mangledName(); break;
default: break;
switch (type)
{
case EbtFloat: mangledName += 'f'; break;
case EbtInt: mangledName += 'i'; break;
case EbtBool: mangledName += 'b'; break;
case EbtSampler2D: mangledName += "s2"; break;
case EbtSampler3D: mangledName += "s3"; break;
case EbtSamplerCube: mangledName += "sC"; break;
case EbtSampler2DArray: mangledName += "s2a"; break;
case EbtISampler2D: mangledName += "is2"; break;
case EbtISampler3D: mangledName += "is3"; break;
case EbtISamplerCube: mangledName += "isC"; break;
case EbtISampler2DArray: mangledName += "is2a"; break;
case EbtUSampler2D: mangledName += "us2"; break;
case EbtUSampler3D: mangledName += "us3"; break;
case EbtUSamplerCube: mangledName += "usC"; break;
case EbtUSampler2DArray: mangledName += "us2a"; break;
case EbtSampler2DShadow: mangledName += "s2s"; break;
case EbtSamplerCubeShadow: mangledName += "sCs"; break;
case EbtSampler2DArrayShadow: mangledName += "s2as"; break;
case EbtStruct: mangledName += structure->mangledName(); break;
case EbtInterfaceBlock: mangledName += interfaceBlock->mangledName(); break;
default: UNREACHABLE();
}
if (isMatrix())
......
......@@ -109,6 +109,9 @@ static ShDataType getVariableDataType(const TType& type)
case EbtUSampler3D: return SH_UNSIGNED_INT_SAMPLER_3D;
case EbtUSamplerCube: return SH_UNSIGNED_INT_SAMPLER_CUBE;
case EbtUSampler2DArray: return SH_UNSIGNED_INT_SAMPLER_2D_ARRAY;
case EbtSampler2DShadow: return SH_SAMPLER_2D_SHADOW;
case EbtSamplerCubeShadow: return SH_SAMPLER_CUBE_SHADOW;
case EbtSampler2DArrayShadow: return SH_SAMPLER_2D_ARRAY_SHADOW;
default: UNREACHABLE();
}
return SH_NONE;
......
......@@ -150,22 +150,24 @@ O [0-7]
"uvec3" { return ES2_ident_ES3_keyword(context, UVEC3); }
"uvec4" { return ES2_ident_ES3_keyword(context, UVEC4); }
"sampler2D" { return SAMPLER2D; }
"samplerCube" { return SAMPLERCUBE; }
"samplerExternalOES" { return SAMPLER_EXTERNAL_OES; }
"sampler3D" { return ES2_reserved_ES3_keyword(context, SAMPLER3D); }
"sampler3DRect" { return ES2_reserved_ES3_keyword(context, SAMPLER3DRECT); }
"sampler2DShadow" { return ES2_reserved_ES3_keyword(context, SAMPLER2DSHADOW); }
"sampler2DRect" { return SAMPLER2DRECT; }
"sampler2DArray" { return ES2_ident_ES3_keyword(context, SAMPLER2DARRAY); }
"isampler2D" { return ES2_ident_ES3_keyword(context, ISAMPLER2D); }
"isampler3D" { return ES2_ident_ES3_keyword(context, ISAMPLER3D); }
"isamplerCube" { return ES2_ident_ES3_keyword(context, ISAMPLERCUBE); }
"isampler2DArray" { return ES2_ident_ES3_keyword(context, ISAMPLER2DARRAY); }
"usampler2D" { return ES2_ident_ES3_keyword(context, USAMPLER2D); }
"usampler3D" { return ES2_ident_ES3_keyword(context, USAMPLER3D); }
"usamplerCube" { return ES2_ident_ES3_keyword(context, USAMPLERCUBE); }
"usampler2DArray" { return ES2_ident_ES3_keyword(context, USAMPLER2DARRAY); }
"sampler2D" { return SAMPLER2D; }
"samplerCube" { return SAMPLERCUBE; }
"samplerExternalOES" { return SAMPLER_EXTERNAL_OES; }
"sampler3D" { return ES2_reserved_ES3_keyword(context, SAMPLER3D); }
"sampler3DRect" { return ES2_reserved_ES3_keyword(context, SAMPLER3DRECT); }
"sampler2DRect" { return SAMPLER2DRECT; }
"sampler2DArray" { return ES2_ident_ES3_keyword(context, SAMPLER2DARRAY); }
"isampler2D" { return ES2_ident_ES3_keyword(context, ISAMPLER2D); }
"isampler3D" { return ES2_ident_ES3_keyword(context, ISAMPLER3D); }
"isamplerCube" { return ES2_ident_ES3_keyword(context, ISAMPLERCUBE); }
"isampler2DArray" { return ES2_ident_ES3_keyword(context, ISAMPLER2DARRAY); }
"usampler2D" { return ES2_ident_ES3_keyword(context, USAMPLER2D); }
"usampler3D" { return ES2_ident_ES3_keyword(context, USAMPLER3D); }
"usamplerCube" { return ES2_ident_ES3_keyword(context, USAMPLERCUBE); }
"usampler2DArray" { return ES2_ident_ES3_keyword(context, USAMPLER2DARRAY); }
"sampler2DShadow" { return ES2_ident_ES3_keyword(context, SAMPLER2DSHADOW); }
"samplerCubeShadow" { return ES2_ident_ES3_keyword(context, SAMPLERCUBESHADOW); }
"sampler2DArrayShadow" { return ES2_ident_ES3_keyword(context, SAMPLER2DARRAYSHADOW); }
"struct" { return STRUCT; }
......
......@@ -145,7 +145,7 @@ extern void yyerror(YYLTYPE* yylloc, TParseContext* context, const char* reason)
%token <lex> SAMPLER2D SAMPLERCUBE SAMPLER_EXTERNAL_OES SAMPLER2DRECT SAMPLER2DARRAY
%token <lex> ISAMPLER2D ISAMPLER3D ISAMPLERCUBE ISAMPLER2DARRAY
%token <lex> USAMPLER2D USAMPLER3D USAMPLERCUBE USAMPLER2DARRAY
%token <lex> SAMPLER3D SAMPLER3DRECT SAMPLER2DSHADOW
%token <lex> SAMPLER3D SAMPLER3DRECT SAMPLER2DSHADOW SAMPLERCUBESHADOW SAMPLER2DARRAYSHADOW
%token <lex> LAYOUT
%token <lex> IDENTIFIER TYPE_NAME FLOATCONSTANT INTCONSTANT UINTCONSTANT BOOLCONSTANT
......@@ -1503,6 +1503,18 @@ type_specifier_nonarray
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
$$.setBasic(EbtUSampler2DArray, qual, @1);
}
| SAMPLER2DSHADOW {
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
$$.setBasic(EbtSampler2DShadow, qual, @1);
}
| SAMPLERCUBESHADOW {
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
$$.setBasic(EbtSamplerCubeShadow, qual, @1);
}
| SAMPLER2DARRAYSHADOW {
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
$$.setBasic(EbtSampler2DArrayShadow, qual, @1);
}
| SAMPLER_EXTERNAL_OES {
if (!context->supportsExtension("GL_OES_EGL_image_external")) {
context->error(@1, "unsupported type", "samplerExternalOES");
......
......@@ -384,8 +384,8 @@ static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
*yy_cp = '\0'; \
yyg->yy_c_buf_p = yy_cp;
#define YY_NUM_RULES 235
#define YY_END_OF_BUFFER 236
#define YY_NUM_RULES 237
#define YY_END_OF_BUFFER 238
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
......@@ -393,96 +393,98 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
static yyconst flex_int16_t yy_accept[801] =
static yyconst flex_int16_t yy_accept[813] =
{ 0,
0, 0, 236, 234, 233, 233, 220, 226, 231, 215,
216, 224, 223, 212, 221, 219, 225, 178, 178, 213,
209, 227, 214, 228, 232, 175, 217, 218, 230, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 210,
229, 211, 222, 206, 192, 211, 200, 195, 190, 198,
188, 199, 189, 184, 191, 183, 177, 178, 0, 181,
0, 218, 210, 217, 207, 203, 205, 204, 208, 175,
196, 202, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 12, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 15, 175,
175, 23, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 197, 201, 0, 187, 183,
0, 186, 180, 0, 182, 176, 193, 194, 175, 134,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 13, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 27, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 24, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 0, 184, 0, 183, 185, 179, 175, 175, 175,
30, 175, 175, 18, 172, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 16, 137, 175, 175, 175,
175, 21, 175, 175, 141, 153, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 150, 4,
35, 36, 37, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 140, 31, 175,
175, 28, 175, 175, 175, 175, 175, 175, 175, 47,
48, 49, 29, 175, 175, 175, 175, 175, 175, 10,
53, 54, 55, 175, 135, 175, 175, 7, 175, 175,
175, 175, 162, 163, 164, 175, 32, 175, 154, 26,
165, 166, 167, 2, 159, 160, 161, 175, 175, 175,
25, 157, 175, 175, 175, 50, 51, 52, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 84,
175, 175, 175, 175, 175, 175, 175, 151, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 136,
175, 175, 174, 56, 57, 58, 175, 175, 14, 175,
89, 175, 175, 175, 175, 87, 175, 175, 175, 152,
147, 90, 175, 175, 175, 175, 175, 175, 142, 175,
175, 175, 76, 38, 41, 43, 42, 39, 45, 44,
46, 40, 175, 175, 175, 175, 158, 133, 175, 175,
145, 175, 175, 175, 34, 85, 171, 22, 146, 75,
175, 156, 17, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 19, 33, 175,
175, 175, 175, 175, 175, 91, 92, 93, 175, 175,
175, 175, 175, 3, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 138, 175, 175, 175, 175,
175, 8, 175, 175, 9, 175, 175, 175, 175, 20,
77, 11, 148, 95, 96, 97, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 143, 175,
175, 175, 79, 81, 78, 175, 175, 175, 175, 175,
175, 175, 139, 99, 100, 101, 175, 175, 155, 175,
144, 175, 175, 6, 175, 175, 175, 175, 175, 175,
175, 175, 175, 94, 149, 1, 175, 175, 175, 175,
175, 173, 175, 88, 5, 168, 59, 62, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 80, 175, 175, 175, 175, 98, 175, 175, 175,
175, 175, 118, 67, 68, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 86, 175,
175, 175, 102, 120, 71, 72, 175, 175, 82, 175,
175, 175, 175, 175, 175, 175, 113, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 127, 175, 175,
175, 175, 60, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 114, 103, 175, 104, 175,
175, 175, 128, 175, 175, 69, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 115, 175,
175, 129, 175, 175, 73, 105, 106, 175, 109, 175,
110, 175, 175, 175, 175, 175, 83, 175, 175, 175,
175, 65, 175, 63, 124, 175, 107, 108, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 122, 125,
116, 175, 66, 175, 175, 175, 175, 175, 175, 175,
123, 126, 175, 175, 119, 70, 175, 175, 169, 175,
175, 64, 175, 121, 74, 175, 175, 175, 175, 175,
130, 175, 175, 175, 175, 175, 131, 175, 175, 175,
132, 111, 112, 175, 175, 61, 175, 170, 117, 0
0, 0, 238, 236, 235, 235, 222, 228, 233, 217,
218, 226, 225, 214, 223, 221, 227, 180, 180, 215,
211, 229, 216, 230, 234, 177, 219, 220, 232, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 212,
231, 213, 224, 208, 194, 213, 202, 197, 192, 200,
190, 201, 191, 186, 193, 185, 179, 180, 0, 183,
0, 220, 212, 219, 209, 205, 207, 206, 210, 177,
198, 204, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 12, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 15, 177,
177, 23, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 199, 203, 0, 189, 185,
0, 188, 182, 0, 184, 178, 195, 196, 177, 136,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 13, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 27, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 24, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 0, 186, 0, 185, 187, 181, 177, 177, 177,
30, 177, 177, 18, 174, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 16, 139, 177, 177, 177,
177, 21, 177, 177, 143, 155, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 152, 4,
35, 36, 37, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 142, 31, 177,
177, 28, 177, 177, 177, 177, 177, 177, 177, 47,
48, 49, 29, 177, 177, 177, 177, 177, 177, 10,
53, 54, 55, 177, 137, 177, 177, 7, 177, 177,
177, 177, 164, 165, 166, 177, 32, 177, 156, 26,
167, 168, 169, 2, 161, 162, 163, 177, 177, 177,
25, 159, 177, 177, 177, 50, 51, 52, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 86,
177, 177, 177, 177, 177, 177, 177, 153, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 138,
177, 177, 176, 56, 57, 58, 177, 177, 14, 177,
91, 177, 177, 177, 177, 89, 177, 177, 177, 154,
149, 92, 177, 177, 177, 177, 177, 177, 144, 177,
177, 177, 78, 38, 41, 43, 42, 39, 45, 44,
46, 40, 177, 177, 177, 177, 160, 135, 177, 177,
147, 177, 177, 177, 34, 87, 173, 22, 148, 77,
177, 158, 17, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 19, 33, 177,
177, 177, 177, 177, 177, 93, 94, 95, 177, 177,
177, 177, 177, 3, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 140, 177, 177, 177, 177,
177, 8, 177, 177, 9, 177, 177, 177, 177, 20,
79, 11, 150, 97, 98, 99, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 145, 177,
177, 177, 81, 83, 80, 177, 177, 177, 177, 177,
177, 177, 141, 101, 102, 103, 177, 177, 157, 177,
146, 177, 177, 6, 177, 177, 177, 177, 177, 177,
177, 177, 177, 96, 151, 1, 177, 177, 177, 177,
177, 175, 177, 90, 5, 170, 59, 62, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
177, 82, 177, 177, 177, 177, 100, 177, 177, 177,
177, 177, 120, 66, 67, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 88, 177,
177, 177, 104, 122, 70, 71, 177, 177, 84, 177,
177, 177, 177, 177, 177, 177, 115, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 129, 177, 177,
177, 177, 60, 177, 177, 177, 177, 177, 177, 177,
177, 177, 177, 177, 177, 116, 105, 177, 106, 177,
177, 177, 130, 177, 177, 68, 177, 177, 177, 177,
177, 177, 177, 177, 177, 177, 177, 177, 177, 117,
177, 177, 131, 177, 177, 72, 107, 108, 177, 111,
177, 112, 177, 177, 177, 177, 177, 85, 177, 177,
177, 177, 64, 177, 63, 126, 177, 177, 109, 110,
177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
124, 127, 118, 177, 65, 177, 177, 177, 177, 177,
177, 177, 177, 125, 128, 177, 177, 121, 69, 177,
177, 171, 177, 177, 177, 74, 177, 177, 123, 73,
177, 177, 177, 177, 177, 177, 132, 177, 177, 177,
177, 177, 177, 133, 177, 177, 177, 75, 177, 134,
113, 114, 177, 177, 177, 61, 177, 177, 172, 119,
76, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
......@@ -529,193 +531,195 @@ static yyconst flex_int32_t yy_meta[73] =
1, 1
} ;
static yyconst flex_int16_t yy_base[805] =
static yyconst flex_int16_t yy_base[817] =
{ 0,
0, 0, 929, 930, 930, 930, 903, 48, 69, 930,
930, 902, 66, 930, 65, 63, 901, 82, 136, 899,
930, 82, 899, 60, 930, 0, 930, 930, 67, 58,
51, 68, 75, 61, 105, 865, 114, 79, 67, 44,
89, 859, 101, 872, 121, 127, 136, 143, 36, 930,
112, 930, 930, 930, 930, 930, 930, 930, 930, 930,
930, 930, 930, 158, 930, 163, 163, 0, 199, 930,
0, 930, 930, 930, 895, 930, 930, 930, 894, 0,
930, 930, 856, 861, 80, 858, 866, 865, 852, 855,
866, 171, 860, 848, 845, 858, 845, 842, 842, 848,
75, 176, 842, 852, 838, 844, 847, 848, 0, 840,
850, 177, 849, 844, 825, 105, 829, 842, 833, 112,
826, 178, 838, 840, 185, 829, 826, 815, 824, 177,
185, 828, 824, 826, 815, 818, 124, 145, 197, 827,
815, 827, 190, 820, 819, 930, 930, 239, 930, 220,
256, 930, 930, 263, 270, 185, 930, 930, 818, 0,
814, 809, 813, 822, 819, 243, 803, 803, 814, 806,
143, 816, 813, 813, 811, 808, 800, 806, 793, 791,
803, 789, 805, 0, 802, 790, 797, 794, 798, 799,
792, 789, 778, 777, 790, 793, 781, 789, 777, 783,
774, 244, 779, 782, 773, 780, 769, 773, 764, 778,
777, 768, 774, 235, 758, 761, 759, 769, 759, 754,
752, 754, 764, 750, 752, 749, 760, 759, 762, 744,
244, 752, 748, 746, 755, 734, 281, 752, 754, 743,
735, 291, 298, 306, 317, 930, 930, 732, 742, 741,
0, 739, 311, 0, 0, 732, 730, 730, 731, 726,
734, 723, 740, 729, 322, 0, 0, 723, 733, 732,
732, 0, 717, 325, 0, 0, 719, 328, 726, 727,
718, 712, 711, 712, 711, 711, 334, 706, 0, 0,
702, 701, 700, 702, 703, 708, 702, 698, 711, 706,
706, 704, 703, 697, 691, 693, 692, 696, 688, 691,
686, 694, 699, 687, 684, 696, 687, 0, 0, 693,
689, 0, 681, 681, 686, 677, 684, 337, 681, 0,
0, 0, 0, 671, 683, 682, 681, 682, 682, 0,
0, 0, 0, 669, 0, 677, 668, 0, 667, 668,
662, 672, 0, 0, 0, 663, 0, 659, 0, 0,
0, 0, 0, 0, 0, 0, 0, 669, 341, 668,
0, 0, 666, 662, 659, 0, 0, 0, 651, 343,
346, 355, 656, 652, 657, 648, 646, 659, 644, 0,
644, 657, 646, 642, 648, 643, 650, 0, 648, 645,
649, 633, 631, 634, 640, 646, 641, 640, 628, 0,
630, 631, 0, 0, 0, 0, 628, 631, 0, 625,
0, 638, 618, 627, 622, 0, 615, 615, 628, 0,
630, 0, 359, 643, 642, 641, 608, 607, 0, 624,
623, 618, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 607, 620, 607, 604, 0, 0, 609, 608,
0, 605, 612, 611, 0, 597, 0, 0, 0, 0,
594, 0, 0, 593, 604, 362, 597, 603, 602, 599,
594, 591, 584, 584, 597, 582, 594, 0, 0, 587,
610, 609, 608, 575, 574, 355, 356, 0, 586, 589,
587, 576, 572, 0, 584, 581, 580, 570, 569, 559,
576, 562, 369, 570, 573, 0, 590, 589, 588, 555,
554, 0, 568, 555, 0, 565, 558, 559, 562, 0,
0, 0, 0, 582, 581, 0, 558, 561, 546, 553,
544, 551, 552, 552, 551, 537, 379, 549, 0, 550,
539, 538, 0, 0, 0, 563, 562, 561, 528, 527,
523, 531, 0, 559, 558, 0, 535, 538, 0, 386,
0, 516, 525, 0, 521, 520, 529, 529, 517, 531,
515, 529, 524, 0, 0, 0, 541, 540, 539, 506,
505, 0, 505, 0, 0, 362, 382, 529, 515, 518,
501, 513, 501, 500, 509, 509, 526, 525, 524, 491,
490, 0, 490, 491, 490, 500, 0, 503, 499, 501,
497, 484, 515, 377, 0, 492, 495, 487, 479, 486,
477, 498, 486, 482, 484, 482, 482, 481, 0, 469,
468, 478, 0, 498, 390, 0, 475, 478, 0, 478,
477, 461, 453, 461, 451, 459, 0, 456, 455, 476,
464, 462, 462, 446, 449, 463, 447, 478, 458, 459,
456, 453, 0, 441, 455, 454, 438, 437, 436, 457,
445, 443, 443, 424, 423, 0, 451, 423, 449, 421,
425, 424, 455, 435, 432, 0, 431, 434, 430, 432,
416, 413, 426, 411, 412, 414, 403, 402, 0, 408,
407, 438, 418, 415, 0, 0, 0, 411, 0, 410,
0, 416, 415, 399, 396, 397, 0, 389, 397, 387,
393, 414, 393, 0, 0, 405, 0, 0, 404, 403,
387, 384, 385, 399, 398, 375, 374, 380, 0, 0,
401, 373, 0, 392, 384, 370, 379, 366, 359, 364,
0, 0, 60, 96, 0, 0, 127, 158, 0, 166,
219, 0, 229, 0, 0, 222, 237, 238, 234, 259,
0, 301, 334, 301, 304, 316, 0, 334, 348, 369,
0, 0, 0, 353, 348, 0, 356, 0, 0, 930,
426, 420, 421, 429
0, 0, 941, 942, 942, 942, 915, 48, 69, 942,
942, 914, 66, 942, 65, 63, 913, 82, 136, 911,
942, 82, 911, 60, 942, 0, 942, 942, 67, 58,
51, 68, 75, 61, 105, 877, 114, 79, 67, 44,
89, 871, 101, 884, 121, 127, 136, 143, 36, 942,
112, 942, 942, 942, 942, 942, 942, 942, 942, 942,
942, 942, 942, 158, 942, 163, 163, 0, 199, 942,
0, 942, 942, 942, 907, 942, 942, 942, 906, 0,
942, 942, 868, 873, 80, 870, 878, 877, 864, 867,
878, 171, 872, 860, 857, 870, 857, 854, 854, 860,
75, 176, 854, 864, 850, 856, 859, 860, 0, 852,
862, 177, 861, 856, 837, 105, 841, 854, 845, 112,
838, 178, 850, 852, 185, 841, 838, 827, 836, 177,
185, 840, 836, 838, 827, 830, 124, 145, 197, 839,
827, 839, 190, 832, 831, 942, 942, 239, 942, 220,
256, 942, 942, 263, 270, 185, 942, 942, 830, 0,
826, 821, 825, 834, 831, 243, 815, 815, 826, 818,
143, 828, 825, 825, 823, 820, 812, 818, 805, 803,
815, 801, 817, 0, 814, 802, 809, 806, 810, 811,
804, 801, 790, 789, 802, 805, 793, 801, 789, 795,
786, 244, 791, 794, 785, 792, 781, 785, 776, 790,
789, 780, 786, 235, 770, 773, 771, 781, 771, 766,
764, 766, 776, 762, 764, 761, 772, 771, 774, 756,
244, 764, 760, 758, 767, 746, 281, 764, 766, 755,
747, 291, 298, 306, 317, 942, 942, 744, 754, 753,
0, 751, 311, 0, 0, 744, 742, 742, 743, 738,
746, 735, 752, 741, 322, 0, 0, 735, 745, 744,
744, 0, 729, 325, 0, 0, 731, 328, 738, 739,
730, 724, 723, 724, 723, 723, 334, 718, 0, 0,
714, 713, 712, 714, 715, 720, 714, 710, 723, 718,
718, 716, 715, 709, 703, 705, 704, 708, 700, 703,
698, 706, 711, 699, 696, 708, 699, 0, 0, 705,
701, 0, 693, 693, 698, 689, 696, 337, 693, 0,
0, 0, 0, 683, 695, 694, 693, 694, 694, 0,
0, 0, 0, 681, 0, 689, 680, 0, 679, 680,
674, 684, 0, 0, 0, 675, 0, 671, 0, 0,
0, 0, 0, 0, 0, 0, 0, 681, 341, 680,
0, 0, 678, 674, 671, 0, 0, 0, 663, 343,
346, 355, 668, 664, 669, 660, 658, 671, 656, 0,
656, 669, 658, 654, 660, 655, 662, 0, 660, 657,
661, 645, 643, 646, 652, 658, 653, 652, 640, 0,
642, 643, 0, 0, 0, 0, 640, 643, 0, 637,
0, 650, 630, 639, 634, 0, 627, 627, 640, 0,
642, 0, 359, 655, 654, 653, 620, 619, 0, 636,
635, 630, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 619, 632, 619, 616, 0, 0, 621, 620,
0, 617, 624, 623, 0, 609, 0, 0, 0, 0,
606, 0, 0, 605, 616, 362, 609, 615, 614, 611,
606, 603, 596, 596, 609, 594, 606, 0, 0, 599,
622, 621, 620, 587, 586, 355, 356, 0, 598, 601,
599, 588, 584, 0, 596, 593, 592, 582, 581, 571,
588, 574, 369, 582, 585, 0, 602, 601, 600, 567,
566, 0, 580, 567, 0, 577, 570, 571, 574, 0,
0, 0, 0, 594, 593, 0, 570, 573, 558, 565,
556, 563, 564, 564, 563, 549, 379, 561, 0, 562,
551, 550, 0, 0, 0, 575, 574, 573, 540, 539,
535, 543, 0, 571, 570, 0, 547, 550, 0, 386,
0, 528, 537, 0, 533, 532, 541, 541, 529, 543,
527, 541, 536, 0, 0, 0, 553, 552, 551, 518,
517, 0, 517, 0, 0, 362, 382, 541, 527, 530,
513, 525, 513, 512, 521, 521, 538, 537, 536, 503,
502, 0, 502, 503, 502, 512, 0, 515, 511, 513,
509, 496, 527, 377, 0, 504, 507, 499, 491, 498,
489, 510, 498, 494, 496, 494, 494, 493, 0, 481,
480, 490, 0, 510, 390, 0, 487, 490, 0, 490,
489, 473, 465, 473, 463, 471, 0, 468, 467, 488,
476, 474, 474, 458, 461, 475, 459, 490, 470, 471,
468, 465, 475, 452, 466, 465, 449, 448, 447, 468,
456, 454, 454, 435, 434, 0, 462, 434, 460, 432,
436, 435, 466, 446, 443, 0, 442, 445, 441, 443,
427, 424, 437, 422, 423, 430, 424, 413, 412, 0,
418, 417, 448, 428, 425, 0, 0, 0, 421, 0,
420, 0, 426, 425, 409, 406, 407, 0, 399, 407,
397, 403, 424, 403, 0, 0, 415, 414, 0, 0,
413, 412, 396, 393, 394, 408, 407, 384, 383, 389,
0, 0, 410, 382, 408, 400, 392, 378, 60, 89,
105, 143, 173, 0, 0, 216, 217, 0, 0, 222,
243, 0, 244, 234, 259, 0, 291, 330, 0, 0,
323, 311, 323, 315, 361, 362, 0, 363, 348, 389,
355, 358, 359, 0, 378, 380, 371, 0, 392, 0,
0, 0, 373, 374, 368, 0, 369, 370, 0, 0,
0, 942, 434, 437, 438, 439
} ;
static yyconst flex_int16_t yy_def[805] =
static yyconst flex_int16_t yy_def[817] =
{ 0,
800, 1, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 801, 800, 800, 800, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 802, 800, 803, 18, 19, 800, 800,
804, 800, 800, 800, 800, 800, 800, 800, 800, 801,
800, 800, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 800, 800, 800, 800, 803,
800, 800, 800, 800, 800, 804, 800, 800, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 800, 800, 800, 800, 800, 800, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
801, 801, 801, 801, 801, 801, 801, 801, 801, 0,
800, 800, 800, 800
812, 1, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 813, 812, 812, 812, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 814, 812, 815, 18, 19, 812, 812,
816, 812, 812, 812, 812, 812, 812, 812, 812, 813,
812, 812, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 812, 812, 812, 812, 815,
812, 812, 812, 812, 812, 816, 812, 812, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 812, 812, 812, 812, 812, 812, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 813, 813, 813, 813, 813, 813, 813, 813, 813,
813, 0, 812, 812, 812, 812
} ;
static yyconst flex_int16_t yy_nxt[1003] =
static yyconst flex_int16_t yy_nxt[1015] =
{ 0,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15, 16, 17, 18, 19, 19, 19, 19, 19,
......@@ -739,9 +743,9 @@ static yyconst flex_int16_t yy_nxt[1003] =
230, 147, 130, 131, 69, 132, 135, 141, 137, 148,
149, 142, 138, 136, 151, 152, 139, 231, 70, 140,
143, 153, 800, 260, 261, 232, 148, 149, 154, 780,
143, 153, 812, 260, 261, 232, 148, 149, 154, 780,
154, 151, 152, 155, 155, 155, 155, 155, 155, 155,
182, 220, 169, 247, 208, 153, 170, 171, 800, 213,
182, 220, 169, 247, 208, 153, 170, 171, 812, 213,
222, 192, 781, 183, 193, 194, 221, 209, 195, 210,
196, 233, 238, 223, 239, 214, 215, 247, 242, 234,
242, 151, 152, 243, 243, 243, 243, 243, 243, 243,
......@@ -763,74 +767,75 @@ static yyconst flex_int16_t yy_nxt[1003] =
561, 607, 608, 609, 659, 795, 796, 590, 591, 631,
797, 660, 798, 661, 610, 611, 632, 679, 633, 634,
799, 64, 150, 776, 680, 775, 681, 80, 80, 80,
156, 156, 774, 773, 772, 771, 770, 769, 768, 767,
766, 765, 764, 763, 762, 761, 760, 759, 758, 757,
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, 683, 682, 678, 677, 676, 675, 674,
673, 672, 671, 670, 669, 668, 667, 666, 665, 664,
663, 662, 658, 657, 656, 655, 654, 653, 652, 651,
650, 649, 648, 647, 646, 645, 644, 643, 642, 641,
640, 639, 638, 637, 636, 635, 628, 627, 626, 625,
624, 623, 622, 621, 620, 619, 618, 617, 616, 615,
614, 613, 612, 606, 605, 604, 603, 602, 601, 600,
599, 598, 597, 596, 595, 594, 593, 592, 586, 585,
584, 583, 582, 581, 580, 579, 578, 577, 576, 575,
574, 573, 572, 571, 570, 569, 568, 567, 566, 565,
564, 563, 562, 555, 554, 553, 552, 551, 550, 549,
548, 547, 546, 545, 544, 543, 538, 537, 536, 535,
534, 533, 532, 531, 530, 529, 528, 527, 526, 525,
524, 523, 522, 516, 515, 514, 513, 512, 511, 510,
509, 508, 507, 506, 505, 504, 503, 502, 501, 500,
499, 498, 497, 496, 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, 457, 456, 455,
454, 453, 443, 442, 441, 440, 439, 433, 432, 431,
430, 429, 428, 427, 426, 425, 424, 423, 422, 421,
420, 419, 418, 417, 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, 385, 384, 383, 382, 381, 380, 379, 375,
374, 373, 372, 371, 370, 369, 368, 364, 360, 359,
358, 357, 356, 352, 351, 350, 349, 348, 347, 346,
345, 344, 340, 339, 338, 337, 336, 335, 334, 333,
329, 328, 327, 326, 325, 322, 321, 320, 319, 318,
317, 316, 315, 314, 313, 312, 311, 310, 309, 308,
307, 304, 303, 302, 301, 300, 299, 298, 297, 296,
295, 294, 290, 289, 288, 287, 286, 285, 284, 283,
282, 281, 280, 279, 278, 277, 276, 275, 274, 273,
272, 271, 270, 269, 268, 267, 266, 265, 264, 263,
262, 259, 258, 257, 256, 253, 252, 251, 250, 249,
248, 241, 240, 237, 236, 235, 228, 227, 226, 225,
224, 219, 218, 217, 216, 212, 211, 207, 204, 203,
202, 199, 198, 197, 191, 190, 189, 188, 187, 186,
185, 184, 179, 178, 177, 176, 175, 174, 173, 172,
168, 167, 166, 165, 164, 163, 160, 159, 158, 157,
125, 121, 105, 77, 72, 65, 59, 54, 800, 3,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800
799, 800, 801, 802, 680, 803, 681, 804, 805, 806,
807, 808, 809, 810, 811, 80, 80, 80, 64, 150,
156, 156, 776, 775, 774, 773, 772, 771, 770, 769,
768, 767, 766, 765, 764, 763, 762, 761, 760, 759,
758, 757, 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, 683, 682, 678, 677, 676,
675, 674, 673, 672, 671, 670, 669, 668, 667, 666,
665, 664, 663, 662, 658, 657, 656, 655, 654, 653,
652, 651, 650, 649, 648, 647, 646, 645, 644, 643,
642, 641, 640, 639, 638, 637, 636, 635, 628, 627,
626, 625, 624, 623, 622, 621, 620, 619, 618, 617,
616, 615, 614, 613, 612, 606, 605, 604, 603, 602,
601, 600, 599, 598, 597, 596, 595, 594, 593, 592,
586, 585, 584, 583, 582, 581, 580, 579, 578, 577,
576, 575, 574, 573, 572, 571, 570, 569, 568, 567,
566, 565, 564, 563, 562, 555, 554, 553, 552, 551,
550, 549, 548, 547, 546, 545, 544, 543, 538, 537,
536, 535, 534, 533, 532, 531, 530, 529, 528, 527,
526, 525, 524, 523, 522, 516, 515, 514, 513, 512,
511, 510, 509, 508, 507, 506, 505, 504, 503, 502,
501, 500, 499, 498, 497, 496, 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, 457,
456, 455, 454, 453, 443, 442, 441, 440, 439, 433,
432, 431, 430, 429, 428, 427, 426, 425, 424, 423,
422, 421, 420, 419, 418, 417, 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, 385, 384, 383, 382, 381, 380,
379, 375, 374, 373, 372, 371, 370, 369, 368, 364,
360, 359, 358, 357, 356, 352, 351, 350, 349, 348,
347, 346, 345, 344, 340, 339, 338, 337, 336, 335,
334, 333, 329, 328, 327, 326, 325, 322, 321, 320,
319, 318, 317, 316, 315, 314, 313, 312, 311, 310,
309, 308, 307, 304, 303, 302, 301, 300, 299, 298,
297, 296, 295, 294, 290, 289, 288, 287, 286, 285,
284, 283, 282, 281, 280, 279, 278, 277, 276, 275,
274, 273, 272, 271, 270, 269, 268, 267, 266, 265,
264, 263, 262, 259, 258, 257, 256, 253, 252, 251,
250, 249, 248, 241, 240, 237, 236, 235, 228, 227,
226, 225, 224, 219, 218, 217, 216, 212, 211, 207,
204, 203, 202, 199, 198, 197, 191, 190, 189, 188,
187, 186, 185, 184, 179, 178, 177, 176, 175, 174,
173, 172, 168, 167, 166, 165, 164, 163, 160, 159,
158, 157, 125, 121, 105, 77, 72, 65, 59, 54,
812, 3, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812
} ;
static yyconst flex_int16_t yy_chk[1003] =
static yyconst flex_int16_t yy_chk[1015] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
......@@ -843,110 +848,111 @@ static yyconst flex_int16_t yy_chk[1003] =
16, 16, 16, 16, 24, 24, 22, 49, 40, 15,
13, 29, 40, 9, 18, 49, 18, 18, 18, 18,
18, 18, 18, 22, 30, 22, 22, 763, 31, 29,
18, 18, 18, 22, 30, 22, 22, 759, 31, 29,
31, 39, 32, 18, 31, 34, 32, 34, 30, 30,
18, 18, 32, 33, 39, 32, 34, 33, 38, 101,
18, 38, 33, 41, 38, 38, 51, 85, 33, 38,
101, 85, 38, 764, 18, 43, 41, 18, 19, 35,
101, 85, 38, 760, 18, 43, 41, 18, 19, 35,
19, 19, 19, 19, 19, 19, 19, 35, 37, 35,
43, 116, 35, 43, 120, 45, 37, 19, 35, 116,
120, 767, 45, 45, 19, 46, 45, 37, 46, 137,
120, 761, 45, 45, 19, 46, 45, 37, 46, 137,
137, 51, 45, 45, 19, 45, 46, 48, 47, 64,
64, 48, 47, 46, 66, 66, 47, 138, 19, 47,
48, 67, 67, 171, 171, 138, 64, 64, 69, 768,
48, 67, 67, 171, 171, 138, 64, 64, 69, 762,
69, 66, 66, 69, 69, 69, 69, 69, 69, 69,
102, 130, 92, 156, 122, 67, 92, 92, 67, 125,
131, 112, 770, 102, 112, 112, 130, 122, 112, 122,
131, 112, 763, 102, 112, 112, 130, 122, 112, 122,
112, 139, 143, 131, 143, 125, 125, 156, 148, 139,
148, 150, 150, 148, 148, 148, 148, 148, 148, 148,
202, 202, 202, 771, 773, 151, 776, 151, 150, 150,
202, 202, 202, 766, 767, 151, 770, 151, 150, 150,
151, 151, 151, 151, 151, 151, 151, 154, 154, 154,
154, 154, 154, 154, 155, 155, 155, 155, 155, 155,
155, 166, 214, 231, 777, 778, 214, 237, 237, 237,
155, 166, 214, 231, 771, 773, 214, 237, 237, 237,
779, 231, 155, 780, 166, 242, 242, 242, 242, 242,
774, 231, 155, 775, 166, 242, 242, 242, 242, 242,
242, 242, 243, 243, 243, 243, 243, 243, 243, 155,
244, 244, 244, 244, 244, 244, 244, 253, 253, 253,
243, 245, 245, 245, 245, 245, 245, 245, 265, 265,
265, 274, 274, 274, 278, 278, 278, 243, 782, 245,
265, 274, 274, 274, 278, 278, 278, 243, 777, 245,
287, 287, 287, 328, 328, 328, 369, 369, 369, 380,
380, 380, 381, 381, 381, 783, 245, 784, 785, 369,
380, 380, 381, 381, 381, 778, 245, 781, 782, 369,
369, 382, 382, 382, 433, 433, 433, 476, 476, 476,
786, 788, 496, 497, 513, 513, 513, 433, 433, 596,
783, 784, 496, 497, 513, 513, 513, 433, 433, 596,
476, 476, 496, 497, 547, 547, 547, 513, 513, 596,
513, 570, 570, 570, 624, 789, 790, 547, 547, 597,
794, 624, 795, 624, 570, 570, 597, 645, 597, 597,
797, 802, 803, 760, 645, 759, 645, 801, 801, 801,
804, 804, 758, 757, 756, 755, 754, 752, 751, 748,
747, 746, 745, 744, 743, 742, 741, 740, 739, 736,
733, 732, 731, 730, 729, 728, 726, 725, 724, 723,
722, 720, 718, 714, 713, 712, 711, 710, 708, 707,
706, 705, 704, 703, 702, 701, 700, 699, 698, 697,
695, 694, 693, 692, 691, 690, 689, 688, 687, 685,
684, 683, 682, 681, 680, 679, 678, 677, 676, 675,
674, 672, 671, 670, 669, 668, 667, 666, 665, 664,
663, 662, 661, 660, 659, 658, 656, 655, 654, 653,
652, 651, 650, 648, 647, 644, 642, 641, 640, 638,
637, 636, 635, 634, 633, 632, 631, 630, 629, 628,
627, 626, 623, 622, 621, 620, 619, 618, 616, 615,
614, 613, 611, 610, 609, 608, 607, 606, 605, 604,
603, 602, 601, 600, 599, 598, 593, 591, 590, 589,
588, 587, 583, 582, 581, 580, 579, 578, 577, 576,
575, 573, 572, 568, 567, 565, 564, 562, 561, 560,
559, 558, 557, 556, 552, 551, 550, 548, 546, 545,
544, 543, 542, 541, 540, 539, 538, 537, 535, 534,
529, 528, 527, 526, 524, 523, 521, 520, 519, 518,
517, 515, 514, 512, 511, 510, 509, 508, 507, 506,
505, 503, 502, 501, 500, 499, 495, 494, 493, 492,
491, 490, 487, 486, 485, 484, 483, 482, 481, 480,
479, 478, 477, 475, 474, 471, 466, 464, 463, 462,
460, 459, 456, 455, 454, 453, 442, 441, 440, 438,
437, 436, 435, 434, 431, 429, 428, 427, 425, 424,
423, 422, 420, 418, 417, 412, 411, 409, 408, 407,
406, 405, 404, 403, 402, 401, 400, 399, 397, 396,
395, 394, 393, 392, 391, 389, 388, 387, 386, 385,
384, 383, 379, 375, 374, 373, 370, 368, 358, 356,
352, 351, 350, 349, 347, 346, 344, 339, 338, 337,
336, 335, 334, 329, 327, 326, 325, 324, 323, 321,
320, 317, 316, 315, 314, 313, 312, 311, 310, 309,
308, 307, 306, 305, 304, 303, 302, 301, 300, 299,
298, 297, 296, 295, 294, 293, 292, 291, 288, 286,
285, 284, 283, 282, 281, 280, 279, 277, 273, 271,
270, 269, 268, 264, 263, 262, 261, 260, 259, 258,
257, 256, 252, 250, 249, 248, 241, 240, 239, 238,
236, 235, 234, 233, 232, 230, 229, 228, 227, 226,
225, 224, 223, 222, 221, 220, 219, 218, 217, 216,
215, 213, 212, 211, 210, 209, 208, 207, 206, 205,
204, 203, 201, 200, 199, 198, 197, 196, 195, 194,
193, 192, 191, 190, 189, 188, 187, 186, 185, 183,
182, 181, 180, 179, 178, 177, 176, 175, 174, 173,
172, 170, 169, 168, 167, 165, 164, 163, 162, 161,
159, 145, 144, 142, 141, 140, 136, 135, 134, 133,
132, 129, 128, 127, 126, 124, 123, 121, 119, 118,
117, 115, 114, 113, 111, 110, 108, 107, 106, 105,
104, 103, 100, 99, 98, 97, 96, 95, 94, 93,
91, 90, 89, 88, 87, 86, 84, 83, 79, 75,
44, 42, 36, 23, 20, 17, 12, 7, 3, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
800, 800
513, 570, 570, 570, 624, 785, 786, 547, 547, 597,
788, 624, 789, 624, 570, 570, 597, 645, 597, 597,
790, 791, 792, 793, 645, 795, 645, 796, 797, 799,
803, 804, 805, 807, 808, 813, 813, 813, 814, 815,
816, 816, 758, 757, 756, 755, 754, 753, 750, 749,
748, 747, 746, 745, 744, 743, 742, 741, 738, 737,
734, 733, 732, 731, 730, 729, 727, 726, 725, 724,
723, 721, 719, 715, 714, 713, 712, 711, 709, 708,
707, 706, 705, 704, 703, 702, 701, 700, 699, 698,
697, 695, 694, 693, 692, 691, 690, 689, 688, 687,
685, 684, 683, 682, 681, 680, 679, 678, 677, 676,
675, 674, 673, 672, 671, 670, 669, 668, 667, 666,
665, 664, 663, 662, 661, 660, 659, 658, 656, 655,
654, 653, 652, 651, 650, 648, 647, 644, 642, 641,
640, 638, 637, 636, 635, 634, 633, 632, 631, 630,
629, 628, 627, 626, 623, 622, 621, 620, 619, 618,
616, 615, 614, 613, 611, 610, 609, 608, 607, 606,
605, 604, 603, 602, 601, 600, 599, 598, 593, 591,
590, 589, 588, 587, 583, 582, 581, 580, 579, 578,
577, 576, 575, 573, 572, 568, 567, 565, 564, 562,
561, 560, 559, 558, 557, 556, 552, 551, 550, 548,
546, 545, 544, 543, 542, 541, 540, 539, 538, 537,
535, 534, 529, 528, 527, 526, 524, 523, 521, 520,
519, 518, 517, 515, 514, 512, 511, 510, 509, 508,
507, 506, 505, 503, 502, 501, 500, 499, 495, 494,
493, 492, 491, 490, 487, 486, 485, 484, 483, 482,
481, 480, 479, 478, 477, 475, 474, 471, 466, 464,
463, 462, 460, 459, 456, 455, 454, 453, 442, 441,
440, 438, 437, 436, 435, 434, 431, 429, 428, 427,
425, 424, 423, 422, 420, 418, 417, 412, 411, 409,
408, 407, 406, 405, 404, 403, 402, 401, 400, 399,
397, 396, 395, 394, 393, 392, 391, 389, 388, 387,
386, 385, 384, 383, 379, 375, 374, 373, 370, 368,
358, 356, 352, 351, 350, 349, 347, 346, 344, 339,
338, 337, 336, 335, 334, 329, 327, 326, 325, 324,
323, 321, 320, 317, 316, 315, 314, 313, 312, 311,
310, 309, 308, 307, 306, 305, 304, 303, 302, 301,
300, 299, 298, 297, 296, 295, 294, 293, 292, 291,
288, 286, 285, 284, 283, 282, 281, 280, 279, 277,
273, 271, 270, 269, 268, 264, 263, 262, 261, 260,
259, 258, 257, 256, 252, 250, 249, 248, 241, 240,
239, 238, 236, 235, 234, 233, 232, 230, 229, 228,
227, 226, 225, 224, 223, 222, 221, 220, 219, 218,
217, 216, 215, 213, 212, 211, 210, 209, 208, 207,
206, 205, 204, 203, 201, 200, 199, 198, 197, 196,
195, 194, 193, 192, 191, 190, 189, 188, 187, 186,
185, 183, 182, 181, 180, 179, 178, 177, 176, 175,
174, 173, 172, 170, 169, 168, 167, 165, 164, 163,
162, 161, 159, 145, 144, 142, 141, 140, 136, 135,
134, 133, 132, 129, 128, 127, 126, 124, 123, 121,
119, 118, 117, 115, 114, 113, 111, 110, 108, 107,
106, 105, 104, 103, 100, 99, 98, 97, 96, 95,
94, 93, 91, 90, 89, 88, 87, 86, 84, 83,
79, 75, 44, 42, 36, 23, 20, 17, 12, 7,
3, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812, 812, 812, 812, 812, 812, 812,
812, 812, 812, 812
} ;
/* Table of booleans, true if rule could match eol. */
static yyconst flex_int32_t yy_rule_can_match_eol[236] =
static yyconst flex_int32_t yy_rule_can_match_eol[238] =
{ 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,
......@@ -959,7 +965,7 @@ static yyconst flex_int32_t yy_rule_can_match_eol[236] =
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, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, };
0, 0, 0, 0, 0, 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.
......@@ -1294,13 +1300,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 801 )
if ( yy_current_state >= 813 )
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 != 800 );
while ( yy_current_state != 812 );
yy_cp = yyg->yy_last_accepting_cpos;
yy_current_state = yyg->yy_last_accepting_state;
......@@ -1586,59 +1592,65 @@ YY_RULE_SETUP
YY_BREAK
case 64:
YY_RULE_SETUP
{ return ES2_reserved_ES3_keyword(context, SAMPLER2DSHADOW); }
{ return SAMPLER2DRECT; }
YY_BREAK
case 65:
YY_RULE_SETUP
{ return SAMPLER2DRECT; }
{ return ES2_ident_ES3_keyword(context, SAMPLER2DARRAY); }
YY_BREAK
case 66:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, SAMPLER2DARRAY); }
{ return ES2_ident_ES3_keyword(context, ISAMPLER2D); }
YY_BREAK
case 67:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, ISAMPLER2D); }
{ return ES2_ident_ES3_keyword(context, ISAMPLER3D); }
YY_BREAK
case 68:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, ISAMPLER3D); }
{ return ES2_ident_ES3_keyword(context, ISAMPLERCUBE); }
YY_BREAK
case 69:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, ISAMPLERCUBE); }
{ return ES2_ident_ES3_keyword(context, ISAMPLER2DARRAY); }
YY_BREAK
case 70:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, ISAMPLER2DARRAY); }
{ return ES2_ident_ES3_keyword(context, USAMPLER2D); }
YY_BREAK
case 71:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, USAMPLER2D); }
{ return ES2_ident_ES3_keyword(context, USAMPLER3D); }
YY_BREAK
case 72:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, USAMPLER3D); }
{ return ES2_ident_ES3_keyword(context, USAMPLERCUBE); }
YY_BREAK
case 73:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, USAMPLERCUBE); }
{ return ES2_ident_ES3_keyword(context, USAMPLER2DARRAY); }
YY_BREAK
case 74:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, USAMPLER2DARRAY); }
{ return ES2_ident_ES3_keyword(context, SAMPLER2DSHADOW); }
YY_BREAK
case 75:
YY_RULE_SETUP
{ return STRUCT; }
{ return ES2_ident_ES3_keyword(context, SAMPLERCUBESHADOW); }
YY_BREAK
case 76:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, LAYOUT); }
{ return ES2_ident_ES3_keyword(context, SAMPLER2DARRAYSHADOW); }
YY_BREAK
/* Reserved keywords for GLSL ES 3.00 that are not reserved for GLSL ES 1.00 */
case 77:
YY_RULE_SETUP
{ return STRUCT; }
YY_BREAK
case 78:
YY_RULE_SETUP
{ return ES2_ident_ES3_keyword(context, LAYOUT); }
YY_BREAK
/* Reserved keywords for GLSL ES 3.00 that are not reserved for GLSL ES 1.00 */
case 79:
case 80:
case 81:
......@@ -1693,6 +1705,8 @@ case 129:
case 130:
case 131:
case 132:
case 133:
case 134:
YY_RULE_SETUP
{
if (context->shaderVersion < 300) {
......@@ -1703,7 +1717,7 @@ YY_RULE_SETUP
}
YY_BREAK
/* Reserved keywords in GLSL ES 1.00 that are not reserved in GLSL ES 3.00 */
case 133:
case 135:
YY_RULE_SETUP
{
if (context->shaderVersion >= 300)
......@@ -1716,8 +1730,6 @@ YY_RULE_SETUP
}
YY_BREAK
/* Reserved keywords */
case 134:
case 135:
case 136:
case 137:
case 138:
......@@ -1757,257 +1769,259 @@ case 171:
case 172:
case 173:
case 174:
case 175:
case 176:
YY_RULE_SETUP
{ return reserved_word(yyscanner); }
YY_BREAK
case 175:
case 177:
YY_RULE_SETUP
{
yylval->lex.string = NewPoolTString(yytext);
return check_type(yyscanner);
}
YY_BREAK
case 176:
case 178:
YY_RULE_SETUP
{ yylval->lex.i = static_cast<int>(strtol(yytext, 0, 0)); return INTCONSTANT; }
YY_BREAK
case 177:
case 179:
YY_RULE_SETUP
{ yylval->lex.i = static_cast<int>(strtol(yytext, 0, 0)); return INTCONSTANT; }
YY_BREAK
case 178:
case 180:
YY_RULE_SETUP
{ yylval->lex.i = static_cast<int>(strtol(yytext, 0, 0)); return INTCONSTANT; }
YY_BREAK
case 179:
case 181:
YY_RULE_SETUP
{ return uint_constant(context); }
YY_BREAK
case 180:
case 182:
YY_RULE_SETUP
{ return uint_constant(context); }
YY_BREAK
case 181:
case 183:
YY_RULE_SETUP
{ return uint_constant(context); }
YY_BREAK
case 182:
case 184:
YY_RULE_SETUP
{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return FLOATCONSTANT; }
YY_BREAK
case 183:
case 185:
YY_RULE_SETUP
{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return FLOATCONSTANT; }
YY_BREAK
case 184:
case 186:
YY_RULE_SETUP
{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return FLOATCONSTANT; }
YY_BREAK
case 185:
case 187:
YY_RULE_SETUP
{ return floatsuffix_check(context); }
YY_BREAK
case 186:
case 188:
YY_RULE_SETUP
{ return floatsuffix_check(context); }
YY_BREAK
case 187:
case 189:
YY_RULE_SETUP
{ return floatsuffix_check(context); }
YY_BREAK
case 188:
case 190:
YY_RULE_SETUP
{ return ADD_ASSIGN; }
YY_BREAK
case 189:
case 191:
YY_RULE_SETUP
{ return SUB_ASSIGN; }
YY_BREAK
case 190:
case 192:
YY_RULE_SETUP
{ return MUL_ASSIGN; }
YY_BREAK
case 191:
case 193:
YY_RULE_SETUP
{ return DIV_ASSIGN; }
YY_BREAK
case 192:
case 194:
YY_RULE_SETUP
{ return MOD_ASSIGN; }
YY_BREAK
case 193:
case 195:
YY_RULE_SETUP
{ return LEFT_ASSIGN; }
YY_BREAK
case 194:
case 196:
YY_RULE_SETUP
{ return RIGHT_ASSIGN; }
YY_BREAK
case 195:
case 197:
YY_RULE_SETUP
{ return AND_ASSIGN; }
YY_BREAK
case 196:
case 198:
YY_RULE_SETUP
{ return XOR_ASSIGN; }
YY_BREAK
case 197:
case 199:
YY_RULE_SETUP
{ return OR_ASSIGN; }
YY_BREAK
case 198:
case 200:
YY_RULE_SETUP
{ return INC_OP; }
YY_BREAK
case 199:
case 201:
YY_RULE_SETUP
{ return DEC_OP; }
YY_BREAK
case 200:
case 202:
YY_RULE_SETUP
{ return AND_OP; }
YY_BREAK
case 201:
case 203:
YY_RULE_SETUP
{ return OR_OP; }
YY_BREAK
case 202:
case 204:
YY_RULE_SETUP
{ return XOR_OP; }
YY_BREAK
case 203:
case 205:
YY_RULE_SETUP
{ return LE_OP; }
YY_BREAK
case 204:
case 206:
YY_RULE_SETUP
{ return GE_OP; }
YY_BREAK
case 205:
case 207:
YY_RULE_SETUP
{ return EQ_OP; }
YY_BREAK
case 206:
case 208:
YY_RULE_SETUP
{ return NE_OP; }
YY_BREAK
case 207:
case 209:
YY_RULE_SETUP
{ return LEFT_OP; }
YY_BREAK
case 208:
case 210:
YY_RULE_SETUP
{ return RIGHT_OP; }
YY_BREAK
case 209:
case 211:
YY_RULE_SETUP
{ return SEMICOLON; }
YY_BREAK
case 210:
case 212:
YY_RULE_SETUP
{ return LEFT_BRACE; }
YY_BREAK
case 211:
case 213:
YY_RULE_SETUP
{ return RIGHT_BRACE; }
YY_BREAK
case 212:
case 214:
YY_RULE_SETUP
{ return COMMA; }
YY_BREAK
case 213:
case 215:
YY_RULE_SETUP
{ return COLON; }
YY_BREAK
case 214:
case 216:
YY_RULE_SETUP
{ return EQUAL; }
YY_BREAK
case 215:
case 217:
YY_RULE_SETUP
{ return LEFT_PAREN; }
YY_BREAK
case 216:
case 218:
YY_RULE_SETUP
{ return RIGHT_PAREN; }
YY_BREAK
case 217:
case 219:
YY_RULE_SETUP
{ return LEFT_BRACKET; }
YY_BREAK
case 218:
case 220:
YY_RULE_SETUP
{ return RIGHT_BRACKET; }
YY_BREAK
case 219:
case 221:
YY_RULE_SETUP
{ return DOT; }
YY_BREAK
case 220:
case 222:
YY_RULE_SETUP
{ return BANG; }
YY_BREAK
case 221:
case 223:
YY_RULE_SETUP
{ return DASH; }
YY_BREAK
case 222:
case 224:
YY_RULE_SETUP
{ return TILDE; }
YY_BREAK
case 223:
case 225:
YY_RULE_SETUP
{ return PLUS; }
YY_BREAK
case 224:
case 226:
YY_RULE_SETUP
{ return STAR; }
YY_BREAK
case 225:
case 227:
YY_RULE_SETUP
{ return SLASH; }
YY_BREAK
case 226:
case 228:
YY_RULE_SETUP
{ return PERCENT; }
YY_BREAK
case 227:
case 229:
YY_RULE_SETUP
{ return LEFT_ANGLE; }
YY_BREAK
case 228:
case 230:
YY_RULE_SETUP
{ return RIGHT_ANGLE; }
YY_BREAK
case 229:
case 231:
YY_RULE_SETUP
{ return VERTICAL_BAR; }
YY_BREAK
case 230:
case 232:
YY_RULE_SETUP
{ return CARET; }
YY_BREAK
case 231:
case 233:
YY_RULE_SETUP
{ return AMPERSAND; }
YY_BREAK
case 232:
case 234:
YY_RULE_SETUP
{ return QUESTION; }
YY_BREAK
case 233:
/* rule 233 can match eol */
case 235:
/* rule 235 can match eol */
YY_RULE_SETUP
{ }
YY_BREAK
case YY_STATE_EOF(INITIAL):
{ yyterminate(); }
YY_BREAK
case 234:
case 236:
YY_RULE_SETUP
{ assert(false); return 0; }
YY_BREAK
case 235:
case 237:
YY_RULE_SETUP
ECHO;
YY_BREAK
......@@ -2303,7 +2317,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
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 >= 801 )
if ( yy_current_state >= 813 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
......@@ -2332,11 +2346,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
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 >= 801 )
if ( yy_current_state >= 813 )
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 == 800);
yy_is_jam = (yy_current_state == 812);
return yy_is_jam ? 0 : yy_current_state;
}
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -124,59 +124,61 @@ extern int yydebug;
SAMPLER3D = 325,
SAMPLER3DRECT = 326,
SAMPLER2DSHADOW = 327,
LAYOUT = 328,
IDENTIFIER = 329,
TYPE_NAME = 330,
FLOATCONSTANT = 331,
INTCONSTANT = 332,
UINTCONSTANT = 333,
BOOLCONSTANT = 334,
FIELD_SELECTION = 335,
LEFT_OP = 336,
RIGHT_OP = 337,
INC_OP = 338,
DEC_OP = 339,
LE_OP = 340,
GE_OP = 341,
EQ_OP = 342,
NE_OP = 343,
AND_OP = 344,
OR_OP = 345,
XOR_OP = 346,
MUL_ASSIGN = 347,
DIV_ASSIGN = 348,
ADD_ASSIGN = 349,
MOD_ASSIGN = 350,
LEFT_ASSIGN = 351,
RIGHT_ASSIGN = 352,
AND_ASSIGN = 353,
XOR_ASSIGN = 354,
OR_ASSIGN = 355,
SUB_ASSIGN = 356,
LEFT_PAREN = 357,
RIGHT_PAREN = 358,
LEFT_BRACKET = 359,
RIGHT_BRACKET = 360,
LEFT_BRACE = 361,
RIGHT_BRACE = 362,
DOT = 363,
COMMA = 364,
COLON = 365,
EQUAL = 366,
SEMICOLON = 367,
BANG = 368,
DASH = 369,
TILDE = 370,
PLUS = 371,
STAR = 372,
SLASH = 373,
PERCENT = 374,
LEFT_ANGLE = 375,
RIGHT_ANGLE = 376,
VERTICAL_BAR = 377,
CARET = 378,
AMPERSAND = 379,
QUESTION = 380
SAMPLERCUBESHADOW = 328,
SAMPLER2DARRAYSHADOW = 329,
LAYOUT = 330,
IDENTIFIER = 331,
TYPE_NAME = 332,
FLOATCONSTANT = 333,
INTCONSTANT = 334,
UINTCONSTANT = 335,
BOOLCONSTANT = 336,
FIELD_SELECTION = 337,
LEFT_OP = 338,
RIGHT_OP = 339,
INC_OP = 340,
DEC_OP = 341,
LE_OP = 342,
GE_OP = 343,
EQ_OP = 344,
NE_OP = 345,
AND_OP = 346,
OR_OP = 347,
XOR_OP = 348,
MUL_ASSIGN = 349,
DIV_ASSIGN = 350,
ADD_ASSIGN = 351,
MOD_ASSIGN = 352,
LEFT_ASSIGN = 353,
RIGHT_ASSIGN = 354,
AND_ASSIGN = 355,
XOR_ASSIGN = 356,
OR_ASSIGN = 357,
SUB_ASSIGN = 358,
LEFT_PAREN = 359,
RIGHT_PAREN = 360,
LEFT_BRACKET = 361,
RIGHT_BRACKET = 362,
LEFT_BRACE = 363,
RIGHT_BRACE = 364,
DOT = 365,
COMMA = 366,
COLON = 367,
EQUAL = 368,
SEMICOLON = 369,
BANG = 370,
DASH = 371,
TILDE = 372,
PLUS = 373,
STAR = 374,
SLASH = 375,
PERCENT = 376,
LEFT_ANGLE = 377,
RIGHT_ANGLE = 378,
VERTICAL_BAR = 379,
CARET = 380,
AMPERSAND = 381,
QUESTION = 382
};
#endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment