Commit e4b1b1d8 by Nicolas Capens

Implement shader compiler support for uint vectors.

Bug 19331817 Change-Id: Ib85c82f7490a5e48830fb496cddbb5aa6837dfb2 Reviewed-on: https://swiftshader-review.googlesource.com/2313Reviewed-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarNicolas Capens <capn@google.com> Tested-by: 's avatarNicolas Capens <capn@google.com>
parent 3c20f806
......@@ -601,6 +601,9 @@ bool TIntermOperator::isConstructor() const
case EOpConstructIVec3:
case EOpConstructIVec4:
case EOpConstructInt:
case EOpConstructUVec2:
case EOpConstructUVec3:
case EOpConstructUVec4:
case EOpConstructUInt:
case EOpConstructBVec2:
case EOpConstructBVec3:
......
......@@ -138,6 +138,9 @@ O [0-7]
"ivec2" { context->lexAfterType = true; return (IVEC2); }
"ivec3" { context->lexAfterType = true; return (IVEC3); }
"ivec4" { context->lexAfterType = true; return (IVEC4); }
"uvec2" { return ES2_identifier_ES3_keyword(context, UVEC2); }
"uvec3" { return ES2_identifier_ES3_keyword(context, UVEC3); }
"uvec4" { return ES2_identifier_ES3_keyword(context, UVEC4); }
"bvec2" { context->lexAfterType = true; return (BVEC2); }
"bvec3" { context->lexAfterType = true; return (BVEC3); }
"bvec4" { context->lexAfterType = true; return (BVEC4); }
......
......@@ -123,7 +123,7 @@ extern void yyerror(TParseContext* context, const char* reason);
%token <lex> INVARIANT HIGH_PRECISION MEDIUM_PRECISION LOW_PRECISION PRECISION
%token <lex> ATTRIBUTE CONST_QUAL BOOL_TYPE FLOAT_TYPE INT_TYPE UINT_TYPE
%token <lex> BREAK CONTINUE DO ELSE FOR IF DISCARD RETURN SWITCH CASE DEFAULT
%token <lex> BVEC2 BVEC3 BVEC4 IVEC2 IVEC3 IVEC4 VEC2 VEC3 VEC4
%token <lex> BVEC2 BVEC3 BVEC4 IVEC2 IVEC3 IVEC4 VEC2 VEC3 VEC4 UVEC2 UVEC3 UVEC4
%token <lex> MATRIX2 MATRIX3 MATRIX4 IN_QUAL OUT_QUAL INOUT_QUAL UNIFORM VARYING
%token <lex> CENTROID FLAT SMOOTH
%token <lex> STRUCT VOID_TYPE WHILE
......@@ -1673,6 +1673,21 @@ type_specifier_nonarray
$$.setBasic(EbtInt, qual, $1.line);
$$.setAggregate(4);
}
| UVEC2 {
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
$$.setBasic(EbtUInt, qual, $1.line);
$$.setAggregate(2);
}
| UVEC3 {
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
$$.setBasic(EbtUInt, qual, $1.line);
$$.setAggregate(3);
}
| UVEC4 {
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
$$.setBasic(EbtUInt, qual, $1.line);
$$.setAggregate(4);
}
| MATRIX2 {
FRAG_VERT_ONLY("mat2", $1.line);
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......
......@@ -392,8 +392,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 215
#define YY_END_OF_BUFFER 216
#define YY_NUM_RULES 218
#define YY_END_OF_BUFFER 219
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
......@@ -401,91 +401,92 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
static yyconst flex_int16_t yy_accept[761] =
static yyconst flex_int16_t yy_accept[767] =
{ 0,
0, 0, 0, 0, 0, 0, 216, 214, 213, 213,
198, 204, 209, 193, 194, 202, 201, 190, 199, 197,
203, 162, 162, 191, 187, 205, 192, 206, 210, 158,
195, 196, 208, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 188, 207, 189, 200, 3, 4, 3,
212, 215, 211, 184, 170, 189, 178, 173, 168, 176,
166, 177, 167, 165, 2, 1, 169, 164, 160, 161,
0, 0, 162, 196, 188, 195, 185, 181, 183, 182,
186, 158, 174, 180, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 17, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
20, 158, 158, 28, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 175, 179, 5, 211, 0,
1, 164, 0, 0, 163, 159, 171, 172, 158, 115,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 18, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 32, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 29, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 0,
165, 0, 164, 158, 158, 158, 35, 158, 158, 23,
155, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 21, 118, 158, 158, 158, 158, 26, 158, 158,
123, 135, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 132, 9, 40, 41, 42, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 121, 36, 158, 158, 33, 158, 158, 158,
158, 158, 158, 43, 44, 45, 34, 158, 158, 158,
158, 158, 158, 15, 49, 50, 51, 158, 116, 158,
158, 12, 158, 158, 158, 158, 144, 145, 146, 158,
37, 158, 136, 31, 147, 148, 149, 7, 141, 142,
143, 158, 158, 158, 30, 139, 158, 158, 158, 46,
47, 48, 158, 158, 158, 158, 158, 158, 158, 66,
158, 158, 158, 158, 158, 158, 158, 133, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 117,
158, 158, 157, 158, 158, 19, 158, 71, 158, 158,
158, 158, 69, 158, 158, 158, 134, 129, 72, 158,
158, 158, 158, 158, 158, 124, 158, 158, 158, 158,
158, 158, 158, 140, 122, 158, 158, 127, 158, 158,
158, 39, 67, 154, 27, 128, 58, 158, 138, 22,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 24, 38, 158, 158, 158, 158,
158, 158, 73, 74, 75, 158, 158, 158, 158, 158,
8, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 119, 158, 158, 158, 158, 158, 13, 158,
158, 14, 158, 158, 158, 158, 25, 59, 16, 130,
77, 78, 79, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 125, 158, 158, 158, 61,
63, 60, 158, 158, 158, 158, 158, 158, 158, 120,
81, 82, 83, 158, 158, 137, 158, 126, 158, 158,
11, 158, 158, 158, 158, 158, 158, 158, 158, 158,
76, 131, 6, 158, 158, 158, 156, 158, 70, 10,
150, 52, 55, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 62, 158, 158, 158, 158, 80,
158, 158, 158, 158, 158, 100, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 68, 158,
158, 158, 84, 102, 158, 158, 64, 158, 158, 158,
158, 158, 158, 158, 95, 158, 158, 158, 158, 158,
158, 158, 109, 158, 158, 158, 158, 53, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 96, 85,
158, 86, 158, 158, 110, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 97, 158,
111, 158, 158, 87, 88, 158, 91, 158, 92, 158,
158, 158, 158, 65, 158, 158, 158, 152, 158, 56,
106, 158, 89, 90, 158, 158, 158, 158, 158, 158,
158, 158, 104, 107, 98, 158, 158, 158, 158, 158,
158, 158, 105, 108, 158, 158, 101, 158, 158, 151,
158, 158, 57, 158, 103, 158, 158, 158, 158, 158,
112, 158, 158, 158, 158, 158, 113, 158, 158, 158,
114, 93, 94, 158, 158, 54, 158, 153, 99, 0
0, 0, 0, 0, 0, 0, 219, 217, 216, 216,
201, 207, 212, 196, 197, 205, 204, 193, 202, 200,
206, 165, 165, 194, 190, 208, 195, 209, 213, 161,
198, 199, 211, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 191, 210, 192, 203, 3, 4, 3,
215, 218, 214, 187, 173, 192, 181, 176, 171, 179,
169, 180, 170, 168, 2, 1, 172, 167, 163, 164,
0, 0, 165, 199, 191, 198, 188, 184, 186, 185,
189, 161, 177, 183, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 17, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
20, 161, 161, 28, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 178, 182, 5, 214,
0, 1, 167, 0, 0, 166, 162, 174, 175, 161,
118, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 18, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 32, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 29, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 0, 168, 0, 167, 161, 161, 161, 35, 161,
161, 23, 158, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 21, 121, 161, 161, 161, 161, 26,
161, 161, 126, 138, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 135, 9, 40, 41, 42,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 124, 36, 161, 161, 33, 161,
161, 161, 161, 161, 161, 161, 43, 44, 45, 34,
161, 161, 161, 161, 161, 161, 15, 52, 53, 54,
161, 119, 161, 161, 12, 161, 161, 161, 161, 147,
148, 149, 161, 37, 161, 139, 31, 150, 151, 152,
7, 144, 145, 146, 161, 161, 161, 30, 142, 161,
161, 161, 46, 47, 48, 161, 161, 161, 161, 161,
161, 161, 69, 161, 161, 161, 161, 161, 161, 161,
136, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 120, 161, 161, 160, 49, 50, 51, 161,
161, 19, 161, 74, 161, 161, 161, 161, 72, 161,
161, 161, 137, 132, 75, 161, 161, 161, 161, 161,
161, 127, 161, 161, 161, 161, 161, 161, 161, 143,
125, 161, 161, 130, 161, 161, 161, 39, 70, 157,
27, 131, 61, 161, 141, 22, 161, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
24, 38, 161, 161, 161, 161, 161, 161, 76, 77,
78, 161, 161, 161, 161, 161, 8, 161, 161, 161,
161, 161, 161, 161, 161, 161, 161, 161, 122, 161,
161, 161, 161, 161, 13, 161, 161, 14, 161, 161,
161, 161, 25, 62, 16, 133, 80, 81, 82, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 128, 161, 161, 161, 64, 66, 63, 161, 161,
161, 161, 161, 161, 161, 123, 84, 85, 86, 161,
161, 140, 161, 129, 161, 161, 11, 161, 161, 161,
161, 161, 161, 161, 161, 161, 79, 134, 6, 161,
161, 161, 159, 161, 73, 10, 153, 55, 58, 161,
161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
65, 161, 161, 161, 161, 83, 161, 161, 161, 161,
161, 103, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 71, 161, 161, 161, 87, 105,
161, 161, 67, 161, 161, 161, 161, 161, 161, 161,
98, 161, 161, 161, 161, 161, 161, 161, 112, 161,
161, 161, 161, 56, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 99, 88, 161, 89, 161, 161,
113, 161, 161, 161, 161, 161, 161, 161, 161, 161,
161, 161, 161, 161, 100, 161, 114, 161, 161, 90,
91, 161, 94, 161, 95, 161, 161, 161, 161, 68,
161, 161, 161, 155, 161, 59, 109, 161, 92, 93,
161, 161, 161, 161, 161, 161, 161, 161, 107, 110,
101, 161, 161, 161, 161, 161, 161, 161, 108, 111,
161, 161, 104, 161, 161, 154, 161, 161, 60, 161,
106, 161, 161, 161, 161, 161, 115, 161, 161, 161,
161, 161, 116, 161, 161, 161, 117, 96, 97, 161,
161, 57, 161, 156, 102, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
......@@ -532,183 +533,185 @@ static yyconst flex_int32_t yy_meta[72] =
1
} ;
static yyconst flex_int16_t yy_base[766] =
static yyconst flex_int16_t yy_base[772] =
{ 0,
0, 0, 69, 70, 79, 0, 990, 991, 991, 991,
964, 49, 145, 991, 991, 963, 142, 991, 141, 139,
154, 167, 176, 961, 991, 176, 961, 51, 991, 0,
991, 991, 136, 116, 112, 159, 157, 156, 173, 928,
174, 179, 927, 175, 189, 921, 185, 934, 197, 203,
204, 209, 113, 991, 186, 991, 991, 991, 991, 967,
991, 991, 0, 991, 991, 991, 991, 991, 991, 991,
991, 991, 991, 255, 991, 0, 991, 262, 280, 298,
317, 0, 332, 991, 991, 991, 955, 991, 991, 991,
954, 0, 991, 991, 917, 922, 206, 919, 927, 926,
913, 916, 927, 233, 921, 909, 906, 919, 906, 903,
903, 909, 237, 248, 903, 913, 899, 905, 908, 909,
0, 901, 911, 300, 910, 905, 109, 891, 904, 895,
268, 888, 262, 900, 902, 246, 891, 888, 877, 886,
206, 264, 890, 886, 888, 877, 880, 230, 279, 315,
878, 890, 150, 883, 882, 991, 991, 991, 0, 356,
0, 366, 384, 391, 400, 0, 991, 991, 881, 0,
877, 872, 876, 885, 882, 294, 866, 866, 877, 869,
264, 879, 876, 876, 874, 871, 863, 869, 856, 854,
866, 852, 868, 0, 865, 853, 860, 857, 861, 862,
855, 852, 841, 840, 853, 856, 844, 852, 847, 838,
371, 843, 846, 837, 844, 833, 837, 828, 842, 841,
832, 838, 283, 822, 825, 823, 833, 823, 818, 816,
818, 828, 814, 816, 813, 824, 823, 826, 808, 313,
816, 812, 810, 799, 374, 817, 819, 808, 800, 407,
414, 421, 428, 797, 807, 806, 0, 804, 433, 0,
0, 797, 795, 795, 796, 791, 799, 788, 805, 794,
436, 0, 0, 788, 798, 797, 797, 0, 782, 439,
0, 0, 784, 442, 791, 792, 783, 777, 776, 777,
776, 776, 445, 0, 0, 0, 0, 0, 771, 772,
777, 771, 767, 780, 775, 775, 773, 772, 766, 760,
762, 761, 765, 757, 760, 755, 763, 768, 756, 753,
765, 756, 0, 0, 762, 758, 0, 750, 750, 755,
746, 753, 750, 0, 0, 0, 0, 740, 752, 751,
750, 751, 751, 0, 0, 0, 0, 738, 0, 746,
737, 0, 736, 737, 731, 741, 0, 0, 0, 732,
0, 728, 0, 0, 0, 0, 0, 0, 0, 0,
0, 738, 449, 737, 0, 0, 735, 731, 728, 0,
0, 0, 726, 722, 727, 718, 716, 729, 714, 0,
714, 727, 716, 712, 718, 713, 720, 0, 718, 715,
719, 703, 701, 704, 710, 716, 711, 710, 698, 0,
700, 701, 0, 698, 701, 0, 695, 0, 708, 688,
697, 692, 0, 685, 685, 698, 0, 700, 0, 452,
712, 711, 710, 678, 677, 0, 694, 693, 688, 677,
690, 677, 674, 0, 0, 679, 678, 0, 675, 682,
681, 0, 667, 0, 0, 0, 0, 664, 0, 0,
663, 674, 455, 667, 673, 672, 669, 664, 661, 654,
654, 667, 652, 664, 0, 0, 657, 679, 678, 677,
645, 644, 341, 448, 0, 656, 659, 657, 646, 642,
0, 654, 651, 650, 640, 639, 629, 646, 632, 471,
640, 643, 0, 659, 658, 657, 625, 624, 0, 638,
625, 0, 635, 628, 629, 632, 0, 0, 0, 0,
651, 650, 0, 628, 631, 616, 623, 614, 621, 622,
622, 621, 607, 475, 619, 0, 620, 609, 608, 0,
0, 0, 632, 631, 630, 598, 597, 593, 601, 0,
628, 627, 0, 605, 608, 0, 477, 0, 586, 595,
0, 591, 590, 599, 599, 587, 601, 585, 599, 594,
0, 0, 0, 610, 609, 577, 0, 577, 0, 0,
452, 460, 600, 587, 590, 573, 585, 573, 572, 581,
581, 597, 596, 564, 0, 564, 565, 564, 574, 0,
577, 573, 575, 571, 558, 588, 203, 566, 562, 554,
561, 573, 562, 558, 560, 558, 558, 557, 0, 545,
544, 554, 0, 573, 208, 551, 0, 555, 554, 538,
530, 538, 528, 536, 0, 533, 553, 542, 540, 525,
528, 542, 557, 538, 539, 536, 533, 0, 521, 535,
534, 518, 517, 537, 526, 524, 506, 505, 0, 532,
505, 530, 503, 507, 537, 518, 515, 514, 517, 513,
500, 497, 510, 495, 496, 498, 487, 486, 0, 492,
522, 503, 500, 0, 0, 496, 0, 495, 0, 501,
485, 482, 483, 0, 475, 483, 480, 500, 480, 0,
0, 492, 0, 0, 491, 475, 472, 473, 487, 486,
463, 469, 0, 0, 489, 462, 481, 473, 459, 468,
455, 461, 0, 0, 472, 469, 0, 461, 451, 0,
433, 452, 0, 447, 0, 433, 418, 417, 347, 353,
0, 348, 346, 299, 296, 292, 0, 296, 284, 266,
0, 0, 0, 211, 158, 0, 126, 0, 0, 991,
506, 508, 510, 514, 171
0, 0, 69, 70, 79, 0, 996, 997, 997, 997,
970, 49, 145, 997, 997, 969, 142, 997, 141, 139,
154, 167, 176, 967, 997, 176, 967, 51, 997, 0,
997, 997, 136, 116, 112, 159, 157, 156, 173, 934,
174, 179, 933, 175, 189, 927, 185, 940, 197, 203,
204, 209, 113, 997, 186, 997, 997, 997, 997, 973,
997, 997, 0, 997, 997, 997, 997, 997, 997, 997,
997, 997, 997, 255, 997, 0, 997, 262, 280, 298,
317, 0, 332, 997, 997, 997, 961, 997, 997, 997,
960, 0, 997, 997, 923, 928, 227, 925, 933, 932,
919, 922, 933, 234, 927, 915, 912, 925, 912, 909,
909, 915, 237, 206, 909, 919, 905, 911, 914, 915,
0, 907, 917, 300, 916, 911, 109, 897, 910, 901,
234, 894, 261, 906, 908, 264, 897, 894, 883, 892,
262, 281, 896, 892, 894, 883, 886, 249, 271, 315,
895, 883, 895, 150, 888, 887, 997, 997, 997, 0,
356, 0, 366, 384, 391, 400, 0, 997, 997, 886,
0, 882, 877, 881, 890, 887, 294, 871, 871, 882,
874, 280, 884, 881, 881, 879, 876, 868, 874, 861,
859, 871, 857, 873, 0, 870, 858, 865, 862, 866,
867, 860, 857, 846, 845, 858, 861, 849, 857, 852,
843, 371, 848, 851, 842, 849, 838, 842, 833, 847,
846, 837, 843, 299, 827, 830, 828, 838, 828, 823,
821, 823, 833, 819, 821, 818, 829, 828, 831, 813,
313, 821, 817, 815, 824, 803, 374, 821, 823, 812,
804, 407, 414, 421, 428, 801, 811, 810, 0, 808,
433, 0, 0, 801, 799, 799, 800, 795, 803, 792,
809, 798, 436, 0, 0, 792, 802, 801, 801, 0,
786, 439, 0, 0, 788, 442, 795, 796, 787, 781,
780, 781, 780, 780, 445, 0, 0, 0, 0, 0,
775, 776, 781, 775, 771, 784, 779, 779, 777, 776,
770, 764, 766, 765, 769, 761, 764, 759, 767, 772,
760, 757, 769, 760, 0, 0, 766, 762, 0, 754,
754, 759, 750, 757, 448, 754, 0, 0, 0, 0,
744, 756, 755, 754, 755, 755, 0, 0, 0, 0,
742, 0, 750, 741, 0, 740, 741, 735, 745, 0,
0, 0, 736, 0, 732, 0, 0, 0, 0, 0,
0, 0, 0, 0, 742, 452, 741, 0, 0, 739,
735, 732, 0, 0, 0, 730, 726, 731, 722, 720,
733, 718, 0, 718, 731, 720, 716, 722, 717, 724,
0, 722, 719, 723, 707, 705, 708, 714, 720, 715,
714, 702, 0, 704, 705, 0, 0, 0, 0, 702,
705, 0, 699, 0, 712, 692, 701, 696, 0, 689,
689, 702, 0, 704, 0, 455, 716, 715, 714, 682,
681, 0, 698, 697, 692, 681, 694, 681, 678, 0,
0, 683, 682, 0, 679, 686, 685, 0, 671, 0,
0, 0, 0, 668, 0, 0, 667, 678, 458, 671,
677, 676, 673, 668, 665, 658, 658, 671, 656, 668,
0, 0, 661, 683, 682, 681, 649, 648, 341, 451,
0, 660, 663, 661, 650, 646, 0, 658, 655, 654,
644, 643, 633, 650, 636, 474, 644, 647, 0, 663,
662, 661, 629, 628, 0, 642, 629, 0, 639, 632,
633, 636, 0, 0, 0, 0, 655, 654, 0, 632,
635, 620, 627, 618, 625, 626, 626, 625, 611, 478,
623, 0, 624, 613, 612, 0, 0, 0, 636, 635,
634, 602, 601, 597, 605, 0, 632, 631, 0, 609,
612, 0, 480, 0, 590, 599, 0, 595, 594, 603,
603, 591, 605, 589, 603, 598, 0, 0, 0, 614,
613, 581, 0, 581, 0, 0, 455, 463, 604, 591,
594, 577, 589, 577, 576, 585, 585, 601, 600, 568,
0, 568, 569, 568, 578, 0, 581, 577, 579, 575,
562, 592, 203, 570, 566, 558, 565, 577, 566, 562,
564, 562, 562, 561, 0, 549, 548, 558, 0, 577,
208, 555, 0, 559, 558, 542, 534, 542, 532, 540,
0, 537, 557, 546, 544, 529, 532, 546, 561, 542,
543, 540, 537, 0, 525, 539, 538, 522, 521, 541,
530, 528, 510, 509, 0, 536, 509, 534, 507, 511,
541, 522, 519, 518, 521, 517, 504, 501, 514, 499,
500, 502, 491, 490, 0, 496, 526, 507, 504, 0,
0, 500, 0, 499, 0, 505, 489, 486, 487, 0,
479, 487, 484, 504, 484, 0, 0, 496, 0, 0,
495, 479, 476, 477, 491, 490, 467, 473, 0, 0,
493, 466, 485, 477, 463, 472, 459, 465, 0, 0,
476, 475, 0, 475, 457, 0, 439, 458, 0, 463,
0, 442, 423, 421, 411, 369, 0, 350, 363, 312,
301, 280, 0, 296, 252, 230, 0, 0, 0, 208,
158, 0, 126, 0, 0, 997, 509, 511, 513, 517,
171
} ;
static yyconst flex_int16_t yy_def[766] =
static yyconst flex_int16_t yy_def[772] =
{ 0,
760, 1, 761, 761, 760, 5, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 762,
760, 760, 760, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 760, 760, 760, 760, 760, 760, 760,
760, 760, 763, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 764, 760, 760, 760, 760,
760, 765, 760, 760, 760, 760, 760, 760, 760, 760,
760, 762, 760, 760, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 760, 760, 760, 763, 760,
764, 760, 760, 760, 760, 765, 760, 760, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 760,
760, 760, 760, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 762, 762, 762, 762, 0,
760, 760, 760, 760, 760
766, 1, 767, 767, 766, 5, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 768,
766, 766, 766, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 766, 766, 766, 766, 766, 766, 766,
766, 766, 769, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 770, 766, 766, 766, 766,
766, 771, 766, 766, 766, 766, 766, 766, 766, 766,
766, 768, 766, 766, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 766, 766, 766, 769,
766, 770, 766, 766, 766, 766, 771, 766, 766, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 766, 766, 766, 766, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
768, 768, 768, 768, 768, 0, 766, 766, 766, 766,
766
} ;
static yyconst flex_int16_t yy_nxt[1063] =
static yyconst flex_int16_t yy_nxt[1069] =
{ 0,
8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 23, 23, 23, 23,
......@@ -727,46 +730,47 @@ static yyconst flex_int16_t yy_nxt[1063] =
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, 154, 209, 73, 71, 76, 98, 68,
99, 155, 210, 166, 100, 96, 97, 94, 77, 78,
85, 79, 79, 79, 79, 79, 79, 80, 78, 759,
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, 765,
83, 83, 83, 83, 83, 83, 83, 86, 81, 87,
88, 246, 101, 247, 105, 82, 102, 81, 106, 109,
156, 110, 103, 107, 81, 104, 112, 118, 128, 108,
111, 758, 129, 81, 113, 119, 114, 121, 133, 115,
122, 82, 130, 123, 124, 116, 120, 637, 125, 638,
137, 126, 654, 134, 655, 131, 135, 138, 139, 229,
144, 140, 151, 145, 157, 148, 152, 141, 142, 149,
143, 146, 171, 150, 230, 153, 172, 757, 147, 74,
74, 74, 74, 74, 74, 74, 162, 162, 162, 162,
162, 162, 162, 179, 238, 239, 160, 180, 181, 222,
190, 192, 78, 163, 79, 79, 79, 79, 79, 79,
80, 191, 160, 756, 193, 223, 224, 217, 231, 163,
78, 81, 80, 80, 80, 80, 80, 80, 80, 214,
218, 232, 219, 266, 267, 215, 164, 81, 164, 81,
240, 165, 165, 165, 165, 165, 165, 165, 241, 310,
755, 260, 754, 311, 78, 81, 83, 83, 83, 83,
83, 83, 83, 202, 261, 753, 203, 204, 242, 752,
205, 328, 206, 81, 751, 250, 243, 250, 526, 329,
251, 251, 251, 251, 251, 251, 251, 750, 527, 81,
162, 162, 162, 162, 162, 162, 162, 296, 297, 298,
334, 335, 336, 252, 749, 252, 748, 163, 253, 253,
253, 253, 253, 253, 253, 165, 165, 165, 165, 165,
165, 165, 747, 163, 165, 165, 165, 165, 165, 165,
165, 251, 251, 251, 251, 251, 251, 251, 251, 251,
251, 251, 251, 251, 251, 253, 253, 253, 253, 253,
253, 253, 253, 253, 253, 253, 253, 253, 253, 345,
346, 347, 357, 358, 359, 365, 366, 367, 369, 370,
371, 380, 381, 382, 431, 432, 433, 478, 479, 480,
504, 505, 506, 746, 745, 528, 744, 434, 435, 610,
481, 482, 743, 507, 508, 529, 543, 544, 545, 611,
574, 575, 592, 593, 612, 742, 613, 614, 741, 546,
547, 740, 548, 576, 739, 594, 58, 58, 58, 58,
92, 92, 159, 159, 161, 738, 161, 161, 737, 736,
88, 248, 101, 249, 105, 82, 102, 81, 106, 109,
157, 110, 103, 107, 81, 104, 112, 118, 128, 108,
111, 764, 129, 81, 113, 119, 114, 121, 133, 115,
122, 82, 130, 123, 124, 116, 120, 643, 125, 644,
137, 126, 660, 134, 661, 131, 135, 138, 139, 193,
144, 140, 152, 145, 158, 148, 153, 141, 142, 149,
143, 146, 194, 150, 763, 154, 151, 762, 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,
80, 192, 161, 239, 240, 230, 218, 223, 761, 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, 760, 759, 78, 81, 83, 83, 83, 83,
83, 83, 83, 203, 263, 312, 204, 205, 243, 313,
206, 330, 207, 81, 758, 252, 244, 252, 532, 331,
253, 253, 253, 253, 253, 253, 253, 757, 533, 81,
163, 163, 163, 163, 163, 163, 163, 298, 299, 300,
337, 338, 339, 254, 756, 254, 755, 164, 255, 255,
255, 255, 255, 255, 255, 166, 166, 166, 166, 166,
166, 166, 754, 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, 417, 418, 419, 437, 438, 439,
484, 485, 486, 510, 511, 512, 753, 752, 534, 751,
440, 441, 616, 487, 488, 750, 513, 514, 535, 549,
550, 551, 617, 580, 581, 598, 599, 618, 749, 619,
620, 748, 552, 553, 747, 554, 582, 746, 600, 58,
58, 58, 58, 92, 92, 160, 160, 162, 745, 162,
162, 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,
......@@ -774,62 +778,61 @@ static yyconst flex_int16_t yy_nxt[1063] =
695, 694, 693, 692, 691, 690, 689, 688, 687, 686,
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, 657, 656,
653, 652, 651, 650, 649, 648, 647, 646, 645, 644,
643, 642, 641, 640, 639, 636, 635, 634, 633, 632,
665, 664, 663, 662, 659, 658, 657, 656, 655, 654,
653, 652, 651, 650, 649, 648, 647, 646, 645, 642,
641, 640, 639, 638, 637, 636, 635, 634, 633, 632,
631, 630, 629, 628, 627, 626, 625, 624, 623, 622,
621, 620, 619, 618, 617, 616, 615, 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, 573, 572, 571,
621, 615, 614, 613, 612, 611, 610, 609, 608, 607,
606, 605, 604, 603, 602, 601, 597, 596, 595, 594,
593, 592, 591, 590, 589, 588, 587, 586, 585, 584,
583, 579, 578, 577, 576, 575, 574, 573, 572, 571,
570, 569, 568, 567, 566, 565, 564, 563, 562, 561,
560, 559, 558, 557, 556, 555, 554, 553, 552, 551,
550, 549, 542, 541, 540, 539, 538, 537, 536, 535,
534, 533, 532, 531, 530, 525, 524, 523, 522, 521,
520, 519, 518, 517, 516, 515, 514, 513, 512, 511,
510, 509, 503, 502, 501, 500, 499, 498, 497, 496,
495, 494, 493, 492, 491, 490, 489, 488, 487, 486,
485, 484, 483, 477, 476, 475, 474, 473, 472, 471,
560, 559, 558, 557, 556, 555, 548, 547, 546, 545,
544, 543, 542, 541, 540, 539, 538, 537, 536, 531,
530, 529, 528, 527, 526, 525, 524, 523, 522, 521,
520, 519, 518, 517, 516, 515, 509, 508, 507, 506,
505, 504, 503, 502, 501, 500, 499, 498, 497, 496,
495, 494, 493, 492, 491, 490, 489, 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, 452, 451,
450, 449, 448, 447, 446, 445, 444, 443, 442, 441,
440, 439, 438, 437, 436, 430, 429, 428, 427, 426,
425, 424, 423, 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, 388, 387, 386,
385, 384, 383, 379, 378, 377, 376, 375, 374, 373,
372, 368, 364, 363, 362, 361, 360, 356, 355, 354,
353, 352, 351, 350, 349, 348, 344, 343, 342, 341,
340, 339, 338, 337, 333, 332, 331, 330, 327, 326,
325, 324, 323, 322, 321, 320, 319, 318, 317, 316,
315, 314, 313, 312, 309, 308, 307, 306, 305, 304,
303, 302, 301, 300, 299, 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, 269, 268, 265, 264, 263, 262, 259, 258, 257,
256, 255, 254, 249, 248, 245, 244, 237, 236, 235,
234, 233, 228, 227, 226, 225, 221, 220, 216, 213,
212, 211, 208, 207, 201, 200, 199, 198, 197, 196,
195, 194, 189, 188, 187, 186, 185, 184, 183, 182,
178, 177, 176, 175, 174, 173, 170, 169, 168, 167,
158, 136, 132, 127, 117, 89, 84, 69, 64, 760,
7, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760
450, 449, 448, 447, 446, 445, 444, 443, 442, 436,
435, 434, 433, 432, 431, 430, 429, 428, 427, 426,
425, 424, 423, 422, 421, 420, 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, 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, 132, 127,
117, 89, 84, 69, 64, 766, 7, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766
} ;
static yyconst flex_int16_t yy_chk[1063] =
static yyconst flex_int16_t yy_chk[1069] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
......@@ -849,109 +852,109 @@ static yyconst flex_int16_t yy_chk[1063] =
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, 765, 35, 34, 34, 33, 21, 22,
26, 22, 22, 22, 22, 22, 22, 22, 23, 757,
35, 53, 127, 771, 35, 34, 34, 33, 21, 22,
26, 22, 22, 22, 22, 22, 22, 22, 23, 763,
23, 23, 23, 23, 23, 23, 23, 26, 22, 26,
26, 153, 36, 153, 37, 22, 36, 23, 37, 38,
26, 154, 36, 154, 37, 22, 36, 23, 37, 38,
55, 38, 36, 37, 22, 36, 39, 41, 44, 37,
38, 755, 44, 23, 39, 41, 39, 42, 47, 39,
42, 22, 45, 42, 42, 39, 41, 607, 42, 607,
49, 42, 625, 47, 625, 45, 47, 49, 49, 141,
38, 761, 44, 23, 39, 41, 39, 42, 47, 39,
42, 22, 45, 42, 42, 39, 41, 613, 42, 613,
49, 42, 631, 47, 631, 45, 47, 49, 49, 114,
50, 49, 52, 50, 55, 51, 52, 49, 49, 51,
49, 50, 97, 51, 141, 52, 97, 754, 50, 74,
49, 50, 114, 51, 760, 52, 51, 756, 50, 74,
74, 74, 74, 74, 74, 74, 78, 78, 78, 78,
78, 78, 78, 104, 148, 148, 74, 104, 104, 136,
113, 114, 79, 78, 79, 79, 79, 79, 79, 79,
79, 113, 74, 750, 114, 136, 136, 133, 142, 78,
80, 79, 80, 80, 80, 80, 80, 80, 80, 131,
133, 142, 133, 181, 181, 131, 81, 79, 81, 80,
149, 81, 81, 81, 81, 81, 81, 81, 149, 223,
749, 176, 748, 223, 83, 80, 83, 83, 83, 83,
83, 83, 83, 124, 176, 746, 124, 124, 150, 745,
124, 240, 124, 83, 744, 160, 150, 160, 483, 240,
160, 160, 160, 160, 160, 160, 160, 743, 483, 83,
162, 162, 162, 162, 162, 162, 162, 211, 211, 211,
245, 245, 245, 163, 742, 163, 740, 162, 163, 163,
163, 163, 163, 163, 163, 164, 164, 164, 164, 164,
164, 164, 739, 162, 165, 165, 165, 165, 165, 165,
165, 250, 250, 250, 250, 250, 250, 250, 251, 251,
251, 251, 251, 251, 251, 252, 252, 252, 252, 252,
252, 252, 253, 253, 253, 253, 253, 253, 253, 259,
259, 259, 271, 271, 271, 280, 280, 280, 284, 284,
284, 293, 293, 293, 373, 373, 373, 430, 430, 430,
463, 463, 463, 738, 737, 484, 736, 373, 373, 581,
430, 430, 734, 463, 463, 484, 500, 500, 500, 581,
534, 534, 557, 557, 582, 732, 582, 582, 731, 500,
500, 729, 500, 534, 728, 557, 761, 761, 761, 761,
762, 762, 763, 763, 764, 726, 764, 764, 725, 722,
721, 720, 719, 718, 717, 716, 715, 712, 711, 710,
709, 708, 707, 706, 705, 702, 699, 698, 697, 696,
695, 693, 692, 691, 690, 688, 686, 683, 682, 681,
680, 678, 677, 676, 675, 674, 673, 672, 671, 670,
669, 668, 667, 666, 665, 664, 663, 662, 661, 660,
658, 657, 656, 655, 654, 653, 652, 651, 650, 649,
647, 646, 645, 644, 643, 642, 641, 640, 639, 638,
637, 636, 634, 633, 632, 631, 630, 629, 628, 626,
624, 622, 621, 620, 618, 617, 616, 615, 614, 613,
612, 611, 610, 609, 608, 606, 605, 604, 603, 602,
601, 599, 598, 597, 596, 594, 593, 592, 591, 590,
589, 588, 587, 586, 585, 584, 583, 578, 576, 575,
574, 570, 569, 568, 567, 566, 565, 564, 563, 562,
560, 559, 555, 554, 552, 551, 549, 548, 547, 546,
545, 544, 543, 539, 538, 537, 535, 533, 532, 531,
530, 529, 528, 527, 526, 525, 524, 522, 521, 516,
515, 514, 513, 511, 510, 508, 507, 506, 505, 504,
502, 501, 499, 498, 497, 496, 495, 494, 493, 492,
490, 489, 488, 487, 486, 482, 481, 480, 479, 478,
477, 474, 473, 472, 471, 470, 469, 468, 467, 466,
465, 464, 462, 461, 458, 453, 451, 450, 449, 447,
446, 443, 442, 441, 440, 439, 438, 437, 435, 434,
433, 432, 431, 428, 426, 425, 424, 422, 421, 420,
419, 417, 415, 414, 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, 378, 377, 374, 372, 362, 360, 356, 355,
354, 353, 351, 350, 348, 343, 342, 341, 340, 339,
338, 333, 332, 331, 330, 329, 328, 326, 325, 322,
321, 320, 319, 318, 317, 316, 315, 314, 313, 312,
311, 310, 309, 308, 307, 306, 305, 304, 303, 302,
301, 300, 299, 292, 291, 290, 289, 288, 287, 286,
285, 283, 279, 277, 276, 275, 274, 270, 269, 268,
267, 266, 265, 264, 263, 262, 258, 256, 255, 254,
249, 248, 247, 246, 244, 243, 242, 241, 239, 238,
237, 236, 235, 234, 233, 232, 231, 230, 229, 228,
227, 226, 225, 224, 222, 221, 220, 219, 218, 217,
216, 215, 214, 213, 212, 210, 209, 208, 207, 206,
205, 204, 203, 202, 201, 200, 199, 198, 197, 196,
195, 193, 192, 191, 190, 189, 188, 187, 186, 185,
184, 183, 182, 180, 179, 178, 177, 175, 174, 173,
172, 171, 169, 155, 154, 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, 46, 43, 40, 27, 24, 16, 11, 7,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
760, 760
78, 78, 78, 97, 104, 131, 74, 97, 104, 104,
113, 131, 79, 78, 79, 79, 79, 79, 79, 79,
79, 113, 74, 148, 148, 141, 133, 136, 755, 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, 754, 752, 83, 80, 83, 83, 83, 83,
83, 83, 83, 124, 177, 224, 124, 124, 150, 224,
124, 241, 124, 83, 751, 161, 150, 161, 489, 241,
161, 161, 161, 161, 161, 161, 161, 750, 489, 83,
163, 163, 163, 163, 163, 163, 163, 212, 212, 212,
247, 247, 247, 164, 749, 164, 748, 163, 164, 164,
164, 164, 164, 164, 164, 165, 165, 165, 165, 165,
165, 165, 746, 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,
436, 436, 436, 469, 469, 469, 745, 744, 490, 743,
376, 376, 587, 436, 436, 742, 469, 469, 490, 506,
506, 506, 587, 540, 540, 563, 563, 588, 740, 588,
588, 738, 506, 506, 737, 506, 540, 735, 563, 767,
767, 767, 767, 768, 768, 769, 769, 770, 734, 770,
770, 732, 731, 728, 727, 726, 725, 724, 723, 722,
721, 718, 717, 716, 715, 714, 713, 712, 711, 708,
705, 704, 703, 702, 701, 699, 698, 697, 696, 694,
692, 689, 688, 687, 686, 684, 683, 682, 681, 680,
679, 678, 677, 676, 675, 674, 673, 672, 671, 670,
669, 668, 667, 666, 664, 663, 662, 661, 660, 659,
658, 657, 656, 655, 653, 652, 651, 650, 649, 648,
647, 646, 645, 644, 643, 642, 640, 639, 638, 637,
636, 635, 634, 632, 630, 628, 627, 626, 624, 623,
622, 621, 620, 619, 618, 617, 616, 615, 614, 612,
611, 610, 609, 608, 607, 605, 604, 603, 602, 600,
599, 598, 597, 596, 595, 594, 593, 592, 591, 590,
589, 584, 582, 581, 580, 576, 575, 574, 573, 572,
571, 570, 569, 568, 566, 565, 561, 560, 558, 557,
555, 554, 553, 552, 551, 550, 549, 545, 544, 543,
541, 539, 538, 537, 536, 535, 534, 533, 532, 531,
530, 528, 527, 522, 521, 520, 519, 517, 516, 514,
513, 512, 511, 510, 508, 507, 505, 504, 503, 502,
501, 500, 499, 498, 496, 495, 494, 493, 492, 488,
487, 486, 485, 484, 483, 480, 479, 478, 477, 476,
475, 474, 473, 472, 471, 470, 468, 467, 464, 459,
457, 456, 455, 453, 452, 449, 448, 447, 446, 445,
444, 443, 441, 440, 439, 438, 437, 434, 432, 431,
430, 428, 427, 426, 425, 423, 421, 420, 415, 414,
412, 411, 410, 409, 408, 407, 406, 405, 404, 403,
402, 400, 399, 398, 397, 396, 395, 394, 392, 391,
390, 389, 388, 387, 386, 382, 381, 380, 377, 375,
365, 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, 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, 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, 46, 43,
40, 27, 24, 16, 11, 7, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766, 766, 766,
766, 766, 766, 766, 766, 766, 766, 766
} ;
/* Table of booleans, true if rule could match eol. */
static yyconst flex_int32_t yy_rule_can_match_eol[216] =
static yyconst flex_int32_t yy_rule_can_match_eol[219] =
{ 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 +966,7 @@ static yyconst flex_int32_t yy_rule_can_match_eol[216] =
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, 0, 1, 0, 0, };
/* The intent behind this definition is that it'll catch
* any uses of REJECT which flex missed.
......@@ -1298,13 +1301,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 >= 761 )
if ( yy_current_state >= 767 )
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 != 760 );
while ( yy_current_state != 766 );
yy_cp = yyg->yy_last_accepting_cpos;
yy_current_state = yyg->yy_last_accepting_state;
......@@ -1529,48 +1532,57 @@ YY_RULE_SETUP
YY_BREAK
case 49:
YY_RULE_SETUP
{ context->lexAfterType = true; return (BVEC2); }
{ return ES2_identifier_ES3_keyword(context, UVEC2); }
YY_BREAK
case 50:
YY_RULE_SETUP
{ context->lexAfterType = true; return (BVEC3); }
{ return ES2_identifier_ES3_keyword(context, UVEC3); }
YY_BREAK
case 51:
YY_RULE_SETUP
{ context->lexAfterType = true; return (BVEC4); }
{ return ES2_identifier_ES3_keyword(context, UVEC4); }
YY_BREAK
case 52:
YY_RULE_SETUP
{ context->lexAfterType = true; return SAMPLER2D; }
{ context->lexAfterType = true; return (BVEC2); }
YY_BREAK
case 53:
YY_RULE_SETUP
{ context->lexAfterType = true; return SAMPLERCUBE; }
{ context->lexAfterType = true; return (BVEC3); }
YY_BREAK
case 54:
YY_RULE_SETUP
{ context->lexAfterType = true; return SAMPLER_EXTERNAL_OES; }
{ context->lexAfterType = true; return (BVEC4); }
YY_BREAK
case 55:
YY_RULE_SETUP
{ context->lexAfterType = true; return SAMPLER3D; }
{ context->lexAfterType = true; return SAMPLER2D; }
YY_BREAK
case 56:
YY_RULE_SETUP
{ return ES2_reserved_ES3_keyword(context, SAMPLER3DRECT); }
{ context->lexAfterType = true; return SAMPLERCUBE; }
YY_BREAK
case 57:
YY_RULE_SETUP
{ return ES2_reserved_ES3_keyword(context, SAMPLER2DSHADOW); }
{ context->lexAfterType = true; return SAMPLER_EXTERNAL_OES; }
YY_BREAK
case 58:
YY_RULE_SETUP
{ context->lexAfterType = true; return(STRUCT); }
{ context->lexAfterType = true; return SAMPLER3D; }
YY_BREAK
/* Reserved keywords for GLSL ES 3.00 that are not reserved for GLSL ES 1.00 */
case 59:
YY_RULE_SETUP
{ return ES2_reserved_ES3_keyword(context, SAMPLER3DRECT); }
YY_BREAK
case 60:
YY_RULE_SETUP
{ return ES2_reserved_ES3_keyword(context, SAMPLER2DSHADOW); }
YY_BREAK
case 61:
YY_RULE_SETUP
{ context->lexAfterType = true; return(STRUCT); }
YY_BREAK
/* Reserved keywords for GLSL ES 3.00 that are not reserved for GLSL ES 1.00 */
case 62:
case 63:
case 64:
......@@ -1624,6 +1636,9 @@ case 111:
case 112:
case 113:
case 114:
case 115:
case 116:
case 117:
YY_RULE_SETUP
{
if (context->shaderVersion < 300) {
......@@ -1634,9 +1649,6 @@ YY_RULE_SETUP
}
YY_BREAK
/* Reserved keywords */
case 115:
case 116:
case 117:
case 118:
case 119:
case 120:
......@@ -1677,225 +1689,228 @@ case 154:
case 155:
case 156:
case 157:
case 158:
case 159:
case 160:
YY_RULE_SETUP
{ return reserved_word(yyscanner); }
YY_BREAK
case 158:
case 161:
YY_RULE_SETUP
{
yylval->lex.string = NewPoolTString(yytext);
return check_type(yyscanner);
}
YY_BREAK
case 159:
case 162:
YY_RULE_SETUP
{ yylval->lex.i = strtol(yytext, 0, 0); return(INTCONSTANT); }
YY_BREAK
case 160:
case 163:
YY_RULE_SETUP
{ yylval->lex.i = strtol(yytext, 0, 0); return(INTCONSTANT); }
YY_BREAK
case 161:
case 164:
YY_RULE_SETUP
{ context->error(yylineno, "Invalid Octal number.", yytext); context->recover(); return 0;}
YY_BREAK
case 162:
case 165:
YY_RULE_SETUP
{ yylval->lex.i = strtol(yytext, 0, 0); return(INTCONSTANT); }
YY_BREAK
case 163:
case 166:
YY_RULE_SETUP
{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
YY_BREAK
case 164:
case 167:
YY_RULE_SETUP
{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
YY_BREAK
case 165:
case 168:
YY_RULE_SETUP
{ yylval->lex.f = static_cast<float>(atof_dot(yytext)); return(FLOATCONSTANT); }
YY_BREAK
case 166:
case 169:
YY_RULE_SETUP
{ return(ADD_ASSIGN); }
YY_BREAK
case 167:
case 170:
YY_RULE_SETUP
{ return(SUB_ASSIGN); }
YY_BREAK
case 168:
case 171:
YY_RULE_SETUP
{ return(MUL_ASSIGN); }
YY_BREAK
case 169:
case 172:
YY_RULE_SETUP
{ return(DIV_ASSIGN); }
YY_BREAK
case 170:
case 173:
YY_RULE_SETUP
{ return(MOD_ASSIGN); }
YY_BREAK
case 171:
case 174:
YY_RULE_SETUP
{ return(LEFT_ASSIGN); }
YY_BREAK
case 172:
case 175:
YY_RULE_SETUP
{ return(RIGHT_ASSIGN); }
YY_BREAK
case 173:
case 176:
YY_RULE_SETUP
{ return(AND_ASSIGN); }
YY_BREAK
case 174:
case 177:
YY_RULE_SETUP
{ return(XOR_ASSIGN); }
YY_BREAK
case 175:
case 178:
YY_RULE_SETUP
{ return(OR_ASSIGN); }
YY_BREAK
case 176:
case 179:
YY_RULE_SETUP
{ return(INC_OP); }
YY_BREAK
case 177:
case 180:
YY_RULE_SETUP
{ return(DEC_OP); }
YY_BREAK
case 178:
case 181:
YY_RULE_SETUP
{ return(AND_OP); }
YY_BREAK
case 179:
case 182:
YY_RULE_SETUP
{ return(OR_OP); }
YY_BREAK
case 180:
case 183:
YY_RULE_SETUP
{ return(XOR_OP); }
YY_BREAK
case 181:
case 184:
YY_RULE_SETUP
{ return(LE_OP); }
YY_BREAK
case 182:
case 185:
YY_RULE_SETUP
{ return(GE_OP); }
YY_BREAK
case 183:
case 186:
YY_RULE_SETUP
{ return(EQ_OP); }
YY_BREAK
case 184:
case 187:
YY_RULE_SETUP
{ return(NE_OP); }
YY_BREAK
case 185:
case 188:
YY_RULE_SETUP
{ return(LEFT_OP); }
YY_BREAK
case 186:
case 189:
YY_RULE_SETUP
{ return(RIGHT_OP); }
YY_BREAK
case 187:
case 190:
YY_RULE_SETUP
{ context->lexAfterType = false; return(SEMICOLON); }
YY_BREAK
case 188:
case 191:
YY_RULE_SETUP
{ context->lexAfterType = false; return(LEFT_BRACE); }
YY_BREAK
case 189:
case 192:
YY_RULE_SETUP
{ return(RIGHT_BRACE); }
YY_BREAK
case 190:
case 193:
YY_RULE_SETUP
{ if (context->inTypeParen) context->lexAfterType = false; return(COMMA); }
YY_BREAK
case 191:
case 194:
YY_RULE_SETUP
{ return(COLON); }
YY_BREAK
case 192:
case 195:
YY_RULE_SETUP
{ context->lexAfterType = false; return(EQUAL); }
YY_BREAK
case 193:
case 196:
YY_RULE_SETUP
{ context->lexAfterType = false; context->inTypeParen = true; return(LEFT_PAREN); }
YY_BREAK
case 194:
case 197:
YY_RULE_SETUP
{ context->inTypeParen = false; return(RIGHT_PAREN); }
YY_BREAK
case 195:
case 198:
YY_RULE_SETUP
{ return(LEFT_BRACKET); }
YY_BREAK
case 196:
case 199:
YY_RULE_SETUP
{ return(RIGHT_BRACKET); }
YY_BREAK
case 197:
case 200:
YY_RULE_SETUP
{ BEGIN(FIELDS); return(DOT); }
YY_BREAK
case 198:
case 201:
YY_RULE_SETUP
{ return(BANG); }
YY_BREAK
case 199:
case 202:
YY_RULE_SETUP
{ return(DASH); }
YY_BREAK
case 200:
case 203:
YY_RULE_SETUP
{ return(TILDE); }
YY_BREAK
case 201:
case 204:
YY_RULE_SETUP
{ return(PLUS); }
YY_BREAK
case 202:
case 205:
YY_RULE_SETUP
{ return(STAR); }
YY_BREAK
case 203:
case 206:
YY_RULE_SETUP
{ return(SLASH); }
YY_BREAK
case 204:
case 207:
YY_RULE_SETUP
{ return(PERCENT); }
YY_BREAK
case 205:
case 208:
YY_RULE_SETUP
{ return(LEFT_ANGLE); }
YY_BREAK
case 206:
case 209:
YY_RULE_SETUP
{ return(RIGHT_ANGLE); }
YY_BREAK
case 207:
case 210:
YY_RULE_SETUP
{ return(VERTICAL_BAR); }
YY_BREAK
case 208:
case 211:
YY_RULE_SETUP
{ return(CARET); }
YY_BREAK
case 209:
case 212:
YY_RULE_SETUP
{ return(AMPERSAND); }
YY_BREAK
case 210:
case 213:
YY_RULE_SETUP
{ return(QUESTION); }
YY_BREAK
case 211:
case 214:
YY_RULE_SETUP
{
BEGIN(INITIAL);
......@@ -1903,12 +1918,12 @@ YY_RULE_SETUP
return FIELD_SELECTION;
}
YY_BREAK
case 212:
case 215:
YY_RULE_SETUP
{}
YY_BREAK
case 213:
/* rule 213 can match eol */
case 216:
/* rule 216 can match eol */
YY_RULE_SETUP
{ }
YY_BREAK
......@@ -1917,11 +1932,11 @@ case YY_STATE_EOF(COMMENT):
case YY_STATE_EOF(FIELDS):
{ context->AfterEOF = true; yyterminate(); }
YY_BREAK
case 214:
case 217:
YY_RULE_SETUP
{ context->warning(yylineno, "Unknown char", yytext, ""); return 0; }
YY_BREAK
case 215:
case 218:
YY_RULE_SETUP
ECHO;
YY_BREAK
......@@ -2217,7 +2232,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 >= 761 )
if ( yy_current_state >= 767 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
......@@ -2246,11 +2261,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 >= 761 )
if ( yy_current_state >= 767 )
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 == 760);
yy_is_jam = (yy_current_state == 766);
return yy_is_jam ? 0 : yy_current_state;
}
......
......@@ -154,78 +154,81 @@
VEC2 = 286,
VEC3 = 287,
VEC4 = 288,
MATRIX2 = 289,
MATRIX3 = 290,
MATRIX4 = 291,
IN_QUAL = 292,
OUT_QUAL = 293,
INOUT_QUAL = 294,
UNIFORM = 295,
VARYING = 296,
CENTROID = 297,
FLAT = 298,
SMOOTH = 299,
STRUCT = 300,
VOID_TYPE = 301,
WHILE = 302,
SAMPLER2D = 303,
SAMPLERCUBE = 304,
SAMPLER_EXTERNAL_OES = 305,
SAMPLER2DRECT = 306,
SAMPLER3D = 307,
SAMPLER3DRECT = 308,
SAMPLER2DSHADOW = 309,
IDENTIFIER = 310,
TYPE_NAME = 311,
FLOATCONSTANT = 312,
INTCONSTANT = 313,
BOOLCONSTANT = 314,
FIELD_SELECTION = 315,
LEFT_OP = 316,
RIGHT_OP = 317,
INC_OP = 318,
DEC_OP = 319,
LE_OP = 320,
GE_OP = 321,
EQ_OP = 322,
NE_OP = 323,
AND_OP = 324,
OR_OP = 325,
XOR_OP = 326,
MUL_ASSIGN = 327,
DIV_ASSIGN = 328,
ADD_ASSIGN = 329,
MOD_ASSIGN = 330,
LEFT_ASSIGN = 331,
RIGHT_ASSIGN = 332,
AND_ASSIGN = 333,
XOR_ASSIGN = 334,
OR_ASSIGN = 335,
SUB_ASSIGN = 336,
LEFT_PAREN = 337,
RIGHT_PAREN = 338,
LEFT_BRACKET = 339,
RIGHT_BRACKET = 340,
LEFT_BRACE = 341,
RIGHT_BRACE = 342,
DOT = 343,
COMMA = 344,
COLON = 345,
EQUAL = 346,
SEMICOLON = 347,
BANG = 348,
DASH = 349,
TILDE = 350,
PLUS = 351,
STAR = 352,
SLASH = 353,
PERCENT = 354,
LEFT_ANGLE = 355,
RIGHT_ANGLE = 356,
VERTICAL_BAR = 357,
CARET = 358,
AMPERSAND = 359,
QUESTION = 360
UVEC2 = 289,
UVEC3 = 290,
UVEC4 = 291,
MATRIX2 = 292,
MATRIX3 = 293,
MATRIX4 = 294,
IN_QUAL = 295,
OUT_QUAL = 296,
INOUT_QUAL = 297,
UNIFORM = 298,
VARYING = 299,
CENTROID = 300,
FLAT = 301,
SMOOTH = 302,
STRUCT = 303,
VOID_TYPE = 304,
WHILE = 305,
SAMPLER2D = 306,
SAMPLERCUBE = 307,
SAMPLER_EXTERNAL_OES = 308,
SAMPLER2DRECT = 309,
SAMPLER3D = 310,
SAMPLER3DRECT = 311,
SAMPLER2DSHADOW = 312,
IDENTIFIER = 313,
TYPE_NAME = 314,
FLOATCONSTANT = 315,
INTCONSTANT = 316,
BOOLCONSTANT = 317,
FIELD_SELECTION = 318,
LEFT_OP = 319,
RIGHT_OP = 320,
INC_OP = 321,
DEC_OP = 322,
LE_OP = 323,
GE_OP = 324,
EQ_OP = 325,
NE_OP = 326,
AND_OP = 327,
OR_OP = 328,
XOR_OP = 329,
MUL_ASSIGN = 330,
DIV_ASSIGN = 331,
ADD_ASSIGN = 332,
MOD_ASSIGN = 333,
LEFT_ASSIGN = 334,
RIGHT_ASSIGN = 335,
AND_ASSIGN = 336,
XOR_ASSIGN = 337,
OR_ASSIGN = 338,
SUB_ASSIGN = 339,
LEFT_PAREN = 340,
RIGHT_PAREN = 341,
LEFT_BRACKET = 342,
RIGHT_BRACKET = 343,
LEFT_BRACE = 344,
RIGHT_BRACE = 345,
DOT = 346,
COMMA = 347,
COLON = 348,
EQUAL = 349,
SEMICOLON = 350,
BANG = 351,
DASH = 352,
TILDE = 353,
PLUS = 354,
STAR = 355,
SLASH = 356,
PERCENT = 357,
LEFT_ANGLE = 358,
RIGHT_ANGLE = 359,
VERTICAL_BAR = 360,
CARET = 361,
AMPERSAND = 362,
QUESTION = 363
};
#endif
......@@ -530,22 +533,22 @@ union yyalloc
#endif
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 78
#define YYFINAL 81
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 1562
#define YYLAST 1664
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 106
#define YYNTOKENS 109
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 85
/* YYNRULES -- Number of rules. */
#define YYNRULES 208
#define YYNRULES 211
/* YYNRULES -- Number of states. */
#define YYNSTATES 312
#define YYNSTATES 315
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
#define YYMAXUTOK 360
#define YYMAXUTOK 363
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
......@@ -589,7 +592,7 @@ static const yytype_uint8 yytranslate[] =
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
105, 106, 107, 108
};
#if YYDEBUG
......@@ -611,77 +614,79 @@ static const yytype_uint16 yyprhs[] =
324, 326, 328, 331, 334, 336, 338, 341, 343, 345,
347, 349, 354, 356, 358, 360, 362, 364, 366, 368,
370, 372, 374, 376, 378, 380, 382, 384, 386, 388,
390, 392, 394, 396, 398, 400, 401, 408, 409, 415,
417, 420, 424, 426, 430, 432, 437, 439, 441, 443,
445, 447, 449, 451, 453, 455, 458, 459, 460, 466,
468, 470, 471, 474, 475, 478, 481, 485, 487, 490,
492, 495, 501, 505, 507, 509, 514, 515, 522, 523,
532, 533, 541, 543, 545, 547, 548, 551, 555, 558,
561, 564, 568, 571, 573, 576, 578, 580, 581
390, 392, 394, 396, 398, 400, 402, 404, 406, 407,
414, 415, 421, 423, 426, 430, 432, 436, 438, 443,
445, 447, 449, 451, 453, 455, 457, 459, 461, 464,
465, 466, 472, 474, 476, 477, 480, 481, 484, 487,
491, 493, 496, 498, 501, 507, 511, 513, 515, 520,
521, 528, 529, 538, 539, 547, 549, 551, 553, 554,
557, 561, 564, 567, 570, 574, 577, 579, 582, 584,
586, 587
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yytype_int16 yyrhs[] =
{
187, 0, -1, 55, -1, 107, -1, 58, -1, 57,
-1, 59, -1, 82, 134, 83, -1, 108, -1, 109,
84, 110, 85, -1, 111, -1, 109, 88, 60, -1,
109, 63, -1, 109, 64, -1, 134, -1, 112, -1,
113, -1, 109, 88, 113, -1, 115, 83, -1, 114,
83, -1, 116, 46, -1, 116, -1, 116, 132, -1,
115, 89, 132, -1, 117, 82, -1, 154, -1, 55,
-1, 60, -1, 109, -1, 63, 118, -1, 64, 118,
-1, 119, 118, -1, 96, -1, 94, -1, 93, -1,
118, -1, 120, 97, 118, -1, 120, 98, 118, -1,
120, -1, 121, 96, 120, -1, 121, 94, 120, -1,
121, -1, 122, -1, 123, 100, 122, -1, 123, 101,
122, -1, 123, 65, 122, -1, 123, 66, 122, -1,
123, -1, 124, 67, 123, -1, 124, 68, 123, -1,
124, -1, 125, -1, 126, -1, 127, -1, 128, 69,
127, -1, 128, -1, 129, 71, 128, -1, 129, -1,
130, 70, 129, -1, 130, -1, 130, 105, 134, 90,
132, -1, 131, -1, 118, 133, 132, -1, 91, -1,
72, -1, 73, -1, 74, -1, 81, -1, 132, -1,
134, 89, 132, -1, 131, -1, 137, 92, -1, 145,
92, -1, 7, 152, 153, 92, -1, 138, 83, -1,
140, -1, 139, -1, 140, 142, -1, 139, 89, 142,
-1, 147, 55, 82, -1, 151, 55, -1, 151, 55,
84, 135, 85, -1, 148, 143, 141, -1, 143, 141,
-1, 148, 143, 144, -1, 143, 144, -1, -1, 37,
-1, 38, -1, 39, -1, 151, -1, 146, -1, 145,
89, 55, -1, 145, 89, 55, 84, 85, -1, 145,
89, 55, 84, 135, 85, -1, 145, 89, 55, 91,
162, -1, 147, -1, 147, 55, -1, 147, 55, 84,
85, -1, 147, 55, 84, 135, 85, -1, 147, 55,
91, 162, -1, 3, 55, -1, 151, -1, 149, 151,
-1, 9, -1, 8, -1, 41, -1, 3, 41, -1,
150, -1, 9, -1, 37, -1, 38, -1, 42, 37,
-1, 42, 38, -1, 40, -1, 153, -1, 152, 153,
-1, 4, -1, 5, -1, 6, -1, 154, -1, 154,
84, 135, 85, -1, 46, -1, 11, -1, 12, -1,
190, 0, -1, 58, -1, 110, -1, 61, -1, 60,
-1, 62, -1, 85, 137, 86, -1, 111, -1, 112,
87, 113, 88, -1, 114, -1, 112, 91, 63, -1,
112, 66, -1, 112, 67, -1, 137, -1, 115, -1,
116, -1, 112, 91, 116, -1, 118, 86, -1, 117,
86, -1, 119, 49, -1, 119, -1, 119, 135, -1,
118, 92, 135, -1, 120, 85, -1, 157, -1, 58,
-1, 63, -1, 112, -1, 66, 121, -1, 67, 121,
-1, 122, 121, -1, 99, -1, 97, -1, 96, -1,
121, -1, 123, 100, 121, -1, 123, 101, 121, -1,
123, -1, 124, 99, 123, -1, 124, 97, 123, -1,
124, -1, 125, -1, 126, 103, 125, -1, 126, 104,
125, -1, 126, 68, 125, -1, 126, 69, 125, -1,
126, -1, 127, 70, 126, -1, 127, 71, 126, -1,
127, -1, 128, -1, 129, -1, 130, -1, 131, 72,
130, -1, 131, -1, 132, 74, 131, -1, 132, -1,
133, 73, 132, -1, 133, -1, 133, 108, 137, 93,
135, -1, 134, -1, 121, 136, 135, -1, 94, -1,
75, -1, 76, -1, 77, -1, 84, -1, 135, -1,
137, 92, 135, -1, 134, -1, 140, 95, -1, 148,
95, -1, 7, 155, 156, 95, -1, 141, 86, -1,
143, -1, 142, -1, 143, 145, -1, 142, 92, 145,
-1, 150, 58, 85, -1, 154, 58, -1, 154, 58,
87, 138, 88, -1, 151, 146, 144, -1, 146, 144,
-1, 151, 146, 147, -1, 146, 147, -1, -1, 40,
-1, 41, -1, 42, -1, 154, -1, 149, -1, 148,
92, 58, -1, 148, 92, 58, 87, 88, -1, 148,
92, 58, 87, 138, 88, -1, 148, 92, 58, 94,
165, -1, 150, -1, 150, 58, -1, 150, 58, 87,
88, -1, 150, 58, 87, 138, 88, -1, 150, 58,
94, 165, -1, 3, 58, -1, 154, -1, 152, 154,
-1, 9, -1, 8, -1, 44, -1, 3, 44, -1,
153, -1, 9, -1, 40, -1, 41, -1, 45, 40,
-1, 45, 41, -1, 43, -1, 156, -1, 155, 156,
-1, 4, -1, 5, -1, 6, -1, 157, -1, 157,
87, 138, 88, -1, 49, -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, 48, -1,
49, -1, 50, -1, 52, -1, 155, -1, 56, -1,
-1, 45, 55, 86, 156, 158, 87, -1, -1, 45,
86, 157, 158, 87, -1, 159, -1, 158, 159, -1,
151, 160, 92, -1, 161, -1, 160, 89, 161, -1,
55, -1, 55, 84, 135, 85, -1, 132, -1, 136,
-1, 166, -1, 165, -1, 163, -1, 175, -1, 176,
-1, 179, -1, 186, -1, 86, 87, -1, -1, -1,
86, 167, 174, 168, 87, -1, 173, -1, 165, -1,
-1, 171, 173, -1, -1, 172, 165, -1, 86, 87,
-1, 86, 174, 87, -1, 164, -1, 174, 164, -1,
92, -1, 134, 92, -1, 19, 82, 134, 83, 177,
-1, 170, 17, 170, -1, 170, -1, 134, -1, 147,
55, 91, 162, -1, -1, 47, 82, 180, 178, 83,
169, -1, -1, 16, 181, 170, 47, 82, 134, 83,
92, -1, -1, 18, 82, 182, 183, 185, 83, 169,
-1, 175, -1, 163, -1, 178, -1, -1, 184, 92,
-1, 184, 92, 134, -1, 15, 92, -1, 14, 92,
-1, 21, 92, -1, 21, 134, 92, -1, 20, 92,
-1, 188, -1, 187, 188, -1, 189, -1, 136, -1,
-1, 137, 190, 173, -1
30, -1, 34, -1, 35, -1, 36, -1, 37, -1,
38, -1, 39, -1, 51, -1, 52, -1, 53, -1,
55, -1, 158, -1, 59, -1, -1, 48, 58, 89,
159, 161, 90, -1, -1, 48, 89, 160, 161, 90,
-1, 162, -1, 161, 162, -1, 154, 163, 95, -1,
164, -1, 163, 92, 164, -1, 58, -1, 58, 87,
138, 88, -1, 135, -1, 139, -1, 169, -1, 168,
-1, 166, -1, 178, -1, 179, -1, 182, -1, 189,
-1, 89, 90, -1, -1, -1, 89, 170, 177, 171,
90, -1, 176, -1, 168, -1, -1, 174, 176, -1,
-1, 175, 168, -1, 89, 90, -1, 89, 177, 90,
-1, 167, -1, 177, 167, -1, 95, -1, 137, 95,
-1, 19, 85, 137, 86, 180, -1, 173, 17, 173,
-1, 173, -1, 137, -1, 150, 58, 94, 165, -1,
-1, 50, 85, 183, 181, 86, 172, -1, -1, 16,
184, 173, 50, 85, 137, 86, 95, -1, -1, 18,
85, 185, 186, 188, 86, 172, -1, 178, -1, 166,
-1, 181, -1, -1, 187, 95, -1, 187, 95, 137,
-1, 15, 95, -1, 14, 95, -1, 21, 95, -1,
21, 137, 95, -1, 20, 95, -1, 191, -1, 190,
191, -1, 192, -1, 139, -1, -1, 140, 193, 176,
-1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
......@@ -700,14 +705,15 @@ static const yytype_uint16 yyrline[] =
1352, 1372, 1460, 1469, 1492, 1498, 1505, 1514, 1523, 1529,
1533, 1538, 1543, 1549, 1555, 1564, 1574, 1581, 1584, 1587,
1593, 1596, 1611, 1615, 1619, 1623, 1627, 1631, 1636, 1641,
1646, 1651, 1656, 1661, 1666, 1671, 1676, 1682, 1688, 1694,
1699, 1704, 1713, 1718, 1723, 1736, 1736, 1750, 1750, 1759,
1762, 1777, 1809, 1813, 1819, 1827, 1843, 1847, 1851, 1852,
1858, 1859, 1860, 1861, 1862, 1866, 1867, 1867, 1867, 1877,
1878, 1882, 1882, 1883, 1883, 1888, 1891, 1901, 1904, 1910,
1911, 1915, 1923, 1927, 1937, 1942, 1959, 1959, 1964, 1964,
1971, 1971, 1979, 1982, 1988, 1991, 1997, 2001, 2008, 2015,
2022, 2029, 2040, 2049, 2053, 2060, 2063, 2069, 2069
1646, 1651, 1656, 1661, 1666, 1671, 1676, 1681, 1686, 1691,
1697, 1703, 1709, 1714, 1719, 1728, 1733, 1738, 1751, 1751,
1765, 1765, 1774, 1777, 1792, 1824, 1828, 1834, 1842, 1858,
1862, 1866, 1867, 1873, 1874, 1875, 1876, 1877, 1881, 1882,
1882, 1882, 1892, 1893, 1897, 1897, 1898, 1898, 1903, 1906,
1916, 1919, 1925, 1926, 1930, 1938, 1942, 1952, 1957, 1974,
1974, 1979, 1979, 1986, 1986, 1994, 1997, 2003, 2006, 2012,
2016, 2023, 2030, 2037, 2044, 2055, 2064, 2068, 2075, 2078,
2084, 2084
};
#endif
......@@ -721,22 +727,23 @@ static const char *const yytname[] =
"CONST_QUAL", "BOOL_TYPE", "FLOAT_TYPE", "INT_TYPE", "UINT_TYPE",
"BREAK", "CONTINUE", "DO", "ELSE", "FOR", "IF", "DISCARD", "RETURN",
"SWITCH", "CASE", "DEFAULT", "BVEC2", "BVEC3", "BVEC4", "IVEC2", "IVEC3",
"IVEC4", "VEC2", "VEC3", "VEC4", "MATRIX2", "MATRIX3", "MATRIX4",
"IN_QUAL", "OUT_QUAL", "INOUT_QUAL", "UNIFORM", "VARYING", "CENTROID",
"FLAT", "SMOOTH", "STRUCT", "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", "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", "AMPERSAND", "QUESTION", "$accept", "variable_identifier",
"primary_expression", "postfix_expression", "integer_expression",
"function_call", "function_call_or_method", "function_call_generic",
"IVEC4", "VEC2", "VEC3", "VEC4", "UVEC2", "UVEC3", "UVEC4", "MATRIX2",
"MATRIX3", "MATRIX4", "IN_QUAL", "OUT_QUAL", "INOUT_QUAL", "UNIFORM",
"VARYING", "CENTROID", "FLAT", "SMOOTH", "STRUCT", "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", "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", "AMPERSAND", "QUESTION",
"$accept", "variable_identifier", "primary_expression",
"postfix_expression", "integer_expression", "function_call",
"function_call_or_method", "function_call_generic",
"function_call_header_no_parameters",
"function_call_header_with_parameters", "function_call_header",
"function_identifier", "unary_expression", "unary_operator",
......@@ -782,34 +789,35 @@ static const yytype_uint16 yytoknum[] =
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
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
355, 356, 357, 358, 359, 360, 361, 362, 363
};
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
0, 106, 107, 108, 108, 108, 108, 108, 109, 109,
109, 109, 109, 109, 110, 111, 112, 112, 113, 113,
114, 114, 115, 115, 116, 117, 117, 117, 118, 118,
118, 118, 119, 119, 119, 120, 120, 120, 121, 121,
121, 122, 123, 123, 123, 123, 123, 124, 124, 124,
125, 126, 127, 128, 128, 129, 129, 130, 130, 131,
131, 132, 132, 133, 133, 133, 133, 133, 134, 134,
135, 136, 136, 136, 137, 138, 138, 139, 139, 140,
141, 141, 142, 142, 142, 142, 143, 143, 143, 143,
144, 145, 145, 145, 145, 145, 146, 146, 146, 146,
146, 146, 147, 147, 148, 149, 149, 149, 149, 150,
150, 150, 150, 150, 150, 151, 151, 152, 152, 152,
153, 153, 154, 154, 154, 154, 154, 154, 154, 154,
154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
154, 154, 154, 154, 154, 156, 155, 157, 155, 158,
158, 159, 160, 160, 161, 161, 162, 163, 164, 164,
165, 165, 165, 165, 165, 166, 167, 168, 166, 169,
169, 171, 170, 172, 170, 173, 173, 174, 174, 175,
175, 176, 177, 177, 178, 178, 180, 179, 181, 179,
182, 179, 183, 183, 184, 184, 185, 185, 186, 186,
186, 186, 186, 187, 187, 188, 188, 190, 189
0, 109, 110, 111, 111, 111, 111, 111, 112, 112,
112, 112, 112, 112, 113, 114, 115, 115, 116, 116,
117, 117, 118, 118, 119, 120, 120, 120, 121, 121,
121, 121, 122, 122, 122, 123, 123, 123, 124, 124,
124, 125, 126, 126, 126, 126, 126, 127, 127, 127,
128, 129, 130, 131, 131, 132, 132, 133, 133, 134,
134, 135, 135, 136, 136, 136, 136, 136, 137, 137,
138, 139, 139, 139, 140, 141, 141, 142, 142, 143,
144, 144, 145, 145, 145, 145, 146, 146, 146, 146,
147, 148, 148, 148, 148, 148, 149, 149, 149, 149,
149, 149, 150, 150, 151, 152, 152, 152, 152, 153,
153, 153, 153, 153, 153, 154, 154, 155, 155, 155,
156, 156, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 159, 158,
160, 158, 161, 161, 162, 163, 163, 164, 164, 165,
166, 167, 167, 168, 168, 168, 168, 168, 169, 170,
171, 169, 172, 172, 174, 173, 175, 173, 176, 176,
177, 177, 178, 178, 179, 180, 180, 181, 181, 183,
182, 184, 182, 185, 182, 186, 186, 187, 187, 188,
188, 189, 189, 189, 189, 189, 190, 190, 191, 191,
193, 192
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
......@@ -829,13 +837,14 @@ static const yytype_uint8 yyr2[] =
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, 0, 6, 0, 5, 1,
2, 3, 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, 1, 1, 1, 1, 1, 0, 6,
0, 5, 1, 2, 3, 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 rule to reduce with in state
......@@ -845,430 +854,450 @@ static const yytype_uint8 yydefact[] =
{
0, 0, 117, 118, 119, 0, 105, 109, 126, 123,
124, 125, 130, 131, 132, 133, 134, 135, 127, 128,
129, 136, 137, 138, 110, 111, 114, 106, 0, 0,
122, 139, 140, 141, 142, 144, 206, 207, 0, 76,
86, 0, 91, 96, 0, 108, 102, 0, 115, 120,
143, 0, 203, 205, 107, 101, 0, 112, 113, 0,
147, 71, 0, 74, 86, 104, 87, 88, 89, 77,
0, 86, 0, 72, 97, 103, 116, 0, 1, 204,
0, 145, 0, 0, 208, 78, 83, 85, 90, 0,
92, 79, 0, 0, 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, 73, 0, 0, 0, 149, 0, 0, 188, 0,
0, 0, 0, 0, 166, 175, 179, 35, 61, 68,
0, 157, 0, 120, 160, 177, 159, 158, 0, 161,
162, 163, 164, 80, 82, 84, 0, 0, 98, 0,
156, 100, 29, 30, 0, 12, 13, 0, 0, 19,
18, 0, 20, 22, 24, 31, 0, 0, 0, 0,
129, 136, 137, 138, 139, 140, 141, 110, 111, 114,
106, 0, 0, 122, 142, 143, 144, 145, 147, 209,
210, 0, 76, 86, 0, 91, 96, 0, 108, 102,
0, 115, 120, 146, 0, 206, 208, 107, 101, 0,
112, 113, 0, 150, 71, 0, 74, 86, 104, 87,
88, 89, 77, 0, 86, 0, 72, 97, 103, 116,
0, 1, 207, 0, 148, 0, 0, 211, 78, 83,
85, 90, 0, 92, 79, 0, 0, 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, 73, 0, 0, 0, 152, 0,
0, 191, 0, 0, 0, 0, 0, 169, 178, 182,
35, 61, 68, 0, 160, 0, 120, 163, 180, 162,
161, 0, 164, 165, 166, 167, 80, 82, 84, 0,
0, 98, 0, 159, 100, 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,
121, 0, 154, 0, 152, 148, 150, 199, 198, 173,
190, 0, 202, 200, 0, 186, 165, 0, 64, 65,
66, 67, 63, 0, 0, 180, 176, 178, 0, 93,
0, 95, 99, 7, 0, 14, 26, 11, 17, 23,
36, 37, 40, 39, 45, 46, 43, 44, 48, 49,
54, 56, 58, 0, 146, 0, 0, 151, 0, 0,
0, 0, 0, 201, 0, 167, 62, 69, 0, 94,
9, 0, 0, 153, 0, 172, 174, 193, 192, 195,
173, 0, 184, 0, 0, 0, 81, 60, 155, 0,
194, 0, 0, 183, 181, 0, 0, 168, 0, 196,
0, 173, 0, 170, 187, 169, 0, 197, 191, 182,
185, 189
0, 0, 0, 121, 0, 157, 0, 155, 151, 153,
202, 201, 176, 193, 0, 205, 203, 0, 189, 168,
0, 64, 65, 66, 67, 63, 0, 0, 183, 179,
181, 0, 93, 0, 95, 99, 7, 0, 14, 26,
11, 17, 23, 36, 37, 40, 39, 45, 46, 43,
44, 48, 49, 54, 56, 58, 0, 149, 0, 0,
154, 0, 0, 0, 0, 0, 204, 0, 170, 62,
69, 0, 94, 9, 0, 0, 156, 0, 175, 177,
196, 195, 198, 176, 0, 187, 0, 0, 0, 81,
60, 158, 0, 197, 0, 0, 186, 184, 0, 0,
171, 0, 199, 0, 176, 0, 173, 190, 172, 0,
200, 194, 185, 188, 192
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
-1, 105, 106, 107, 234, 108, 109, 110, 111, 112,
113, 114, 147, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 148, 149, 223, 150, 129,
151, 152, 38, 39, 40, 86, 69, 70, 87, 41,
42, 43, 71, 44, 45, 46, 47, 48, 130, 50,
132, 82, 134, 135, 203, 204, 171, 154, 155, 156,
157, 217, 285, 304, 258, 259, 260, 305, 158, 159,
160, 294, 284, 161, 264, 209, 261, 279, 291, 292,
162, 51, 52, 53, 62
-1, 108, 109, 110, 237, 111, 112, 113, 114, 115,
116, 117, 150, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 151, 152, 226, 153, 132,
154, 155, 41, 42, 43, 89, 72, 73, 90, 44,
45, 46, 74, 47, 48, 49, 50, 51, 133, 53,
135, 85, 137, 138, 206, 207, 174, 157, 158, 159,
160, 220, 288, 307, 261, 262, 263, 308, 161, 162,
163, 297, 287, 164, 267, 212, 264, 282, 294, 295,
165, 54, 55, 56, 65
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -265
#define YYPACT_NINF -259
static const yytype_int16 yypact[] =
{
1359, -22, -265, -265, -265, 108, -265, -265, -265, -265,
-265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
-265, -265, -265, -265, -265, -265, -265, -265, -6, -37,
-265, -265, -265, -265, -265, -265, -265, -40, -9, -11,
1, -32, -265, 31, 1408, -265, -265, 1506, -265, 20,
-265, 1305, -265, -265, -265, -265, 1506, -265, -265, 15,
-265, -265, 59, -265, 27, -265, -265, -265, -265, -265,
1408, 103, 101, -265, 3, -265, -265, 1047, -265, -265,
67, -265, 1408, 298, -265, -265, -265, -265, 105, 1408,
-64, -265, 822, 1047, 79, -265, -265, -265, -265, 1047,
1047, 1047, -265, -265, -265, -265, -265, 4, -265, -265,
-265, 83, -28, 1120, 81, -265, 1047, 40, -53, -265,
-42, 80, -265, -265, -265, 93, 96, -57, -265, 84,
-265, -265, 1408, 113, 1193, -265, 82, 85, -265, 89,
90, 86, 898, 91, 88, -265, -265, -1, -265, -265,
13, -265, -40, 62, -265, -265, -265, -265, 392, -265,
-265, -265, -265, 92, -265, -265, 971, 1047, -265, 97,
-265, -265, -265, -265, -14, -265, -265, 1047, 1455, -265,
-265, 1047, 99, -265, -265, -265, 1047, 1047, 1047, 1047,
1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047,
-265, 1242, 102, 39, -265, -265, -265, -265, -265, 104,
-265, 1047, -265, -265, 41, -265, -265, 486, -265, -265,
-265, -265, -265, 1047, 1047, -265, -265, -265, 1047, -265,
100, -265, -265, -265, 106, 98, -265, 110, -265, -265,
-265, -265, 40, 40, -265, -265, -265, -265, -42, -42,
-265, 93, 96, 60, -265, 1047, 113, -265, 141, 59,
674, 199, 14, -265, 749, 486, -265, -265, 109, -265,
-265, 1047, 111, -265, 115, -265, -265, -265, -265, 749,
104, 152, 98, 140, 130, 128, -265, -265, -265, 1047,
-265, 124, 135, 181, -265, 129, 580, -265, 17, 1047,
580, 104, 1047, -265, -265, -265, 127, 98, -265, -265,
-265, -265
1449, -25, -259, -259, -259, 138, -259, -259, -259, -259,
-259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
-259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
-259, 17, -44, -259, -259, -259, -259, -259, -259, -259,
-11, -52, -4, 20, -13, -259, 87, 1501, -259, -259,
1605, -259, 65, -259, 1392, -259, -259, -259, -259, 1605,
-259, -259, 64, -259, -259, 66, -259, -1, -259, -259,
-259, -259, -259, 1501, 107, 96, -259, -22, -259, -259,
1174, -259, -259, 62, -259, 1501, 301, -259, -259, -259,
-259, 101, 1501, -20, -259, 940, 1174, 75, -259, -259,
-259, -259, 1174, 1174, 1174, -259, -259, -259, -259, -259,
4, -259, -259, -259, 76, -62, 1250, 78, -259, 1174,
-32, 14, -259, -51, 27, -259, -259, -259, 92, 93,
-60, -259, 81, -259, -259, 1501, 112, 201, -259, 77,
79, -259, 86, 88, 80, 1019, 91, 94, -259, -259,
52, -259, -259, -12, -259, -11, 53, -259, -259, -259,
-259, 398, -259, -259, -259, -259, 90, -259, -259, 1095,
1174, -259, 98, -259, -259, -259, -259, -54, -259, -259,
1174, 1551, -259, -259, 1174, 97, -259, -259, -259, 1174,
1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174,
1174, 1174, 1174, -259, 1326, 100, -2, -259, -259, -259,
-259, -259, 89, -259, 1174, -259, -259, 15, -259, -259,
495, -259, -259, -259, -259, -259, 1174, 1174, -259, -259,
-259, 1174, -259, 103, -259, -259, -259, 104, 102, -259,
108, -259, -259, -259, -259, -32, -32, -259, -259, -259,
-259, -51, -51, -259, 92, 93, 16, -259, 1174, 112,
-259, 131, 66, 689, 786, -50, -259, 864, 495, -259,
-259, 109, -259, -259, 1174, 110, -259, 111, -259, -259,
-259, -259, 864, 89, 144, 102, 137, 113, 99, -259,
-259, -259, 1174, -259, 114, 116, 186, -259, 121, 592,
-259, -5, 1174, 592, 89, 1174, -259, -259, -259, 122,
102, -259, -259, -259, -259
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
-265, -265, -265, -265, -265, -265, -265, 43, -265, -265,
-265, -265, -71, -265, -34, -265, -83, -43, -265, -265,
-265, 26, 45, 25, -265, -75, -88, -265, -100, -85,
11, 12, -265, -265, -265, 149, 179, 175, 161, -265,
-265, -249, -265, -265, -265, -36, 247, -21, 0, -265,
-265, -265, 121, -125, -265, 10, -163, 6, -136, -246,
-265, -265, -265, -31, -264, -265, -265, -59, 51, 9,
-265, -265, -8, -265, -265, -265, -265, -265, -265, -265,
-265, -265, 221, -265, -265
-259, -259, -259, -259, -259, -259, -259, 35, -259, -259,
-259, -259, -75, -259, -58, -259, -91, -47, -259, -259,
-259, 9, 18, 21, -259, -73, -95, -259, -102, -92,
10, 12, -259, -259, -259, 127, 154, 149, 132, -259,
-259, -251, -259, -259, -259, -36, 220, -24, 0, -259,
-259, -259, 106, -128, -259, -17, -164, -21, -138, -248,
-259, -259, -259, -59, -258, -259, -259, -61, 25, -18,
-259, -259, -35, -259, -259, -259, -259, -259, -259, -259,
-259, -259, 194, -259, -259
};
/* 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 zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */
#define YYTABLE_NINF -172
#define YYTABLE_NINF -175
static const yytype_int16 yytable[] =
{
49, 174, 128, 84, 231, 170, 115, 169, 75, 206,
65, 36, 37, 198, 276, 283, 293, 128, 59, 54,
166, 115, 227, 190, 191, 183, 76, 167, 172, 173,
283, 57, 58, 55, 88, 80, 65, 309, 66, 67,
68, 188, 214, 189, 49, 185, 133, 49, 199, 60,
303, 49, 61, 88, 303, 180, 49, 72, 192, 193,
73, 181, 36, 37, 66, 67, 68, 175, 176, 233,
49, 218, 219, 220, 63, 224, 206, 235, 64, 170,
221, 230, 49, 153, -75, 91, 74, 92, 177, 49,
222, 128, 178, 239, 93, 115, 133, 280, 133, 253,
306, 81, 224, 224, 77, 225, 224, 244, 245, 246,
247, 262, 2, 3, 4, 240, 241, 115, 115, 115,
115, 115, 115, 115, 115, 115, 115, 115, 256, 227,
224, 257, 49, 263, 49, 266, 267, 186, 187, 310,
66, 67, 68, 268, -25, 83, 77, 194, 195, 224,
271, 248, 249, 128, 242, 243, 90, 115, 153, 131,
163, -26, 196, 184, 282, 133, 179, 197, 202, 200,
272, 210, 211, 215, 207, 216, 228, 208, 212, 282,
128, -122, 232, 287, 115, 269, 255, 224, 274, 298,
-171, 270, -27, 54, 286, 295, 288, 289, 301, 307,
275, 49, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 11, 296, 170, 297, 299, 153, 300, 311,
302, 238, 250, 252, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 25, 164, 26,
27, 28, 251, 85, 29, 30, 89, 31, 32, 33,
165, 34, 56, 201, 94, 35, 95, 96, 97, 98,
153, 153, 99, 100, 153, 153, 273, 277, 265, 308,
278, 290, 79, 0, 0, 0, 0, 0, 0, 153,
0, 101, 0, 0, 0, 0, 0, 0, 0, 0,
0, 146, 102, 103, 0, 104, 153, 0, 0, 0,
153, 1, 2, 3, 4, 5, 6, 7, 8, 9,
10, 11, 136, 137, 138, 0, 139, 140, 141, 142,
52, 173, 177, 172, 87, 118, 234, 131, 68, 209,
39, 78, 40, 201, 62, 279, 286, 193, 194, 57,
118, 186, 131, 230, 183, 296, 79, 175, 176, 68,
184, 286, 236, 58, 66, 83, 283, 91, 227, 69,
70, 71, 227, 217, 188, 63, 312, 52, 202, 136,
52, 306, 195, 196, 52, 306, 91, 60, 61, 52,
69, 70, 71, 94, 39, 95, 40, 169, 189, 190,
178, 179, 96, 52, 170, 173, 209, 233, 238, 75,
227, 309, 76, 228, 64, 52, 156, 227, 67, 242,
259, 180, 52, 260, 118, 181, 131, 197, 198, 136,
256, 136, 247, 248, 249, 250, -75, 227, 227, 274,
266, 191, 265, 192, 243, 244, 118, 118, 118, 118,
118, 118, 118, 118, 118, 118, 118, 221, 222, 223,
230, 269, 270, 245, 246, 52, 224, 52, -25, 271,
80, 313, 2, 3, 4, 77, 225, 69, 70, 71,
251, 252, 80, 84, 93, 86, 118, 134, 131, 166,
-26, 156, 182, 187, 199, 285, 275, 200, 136, 203,
205, 213, 210, 214, 211, 215, 218, 231, -174, 290,
285, 277, -122, 118, 219, 131, 235, 258, 57, 300,
301, 272, 273, -27, 227, 298, 292, 289, 291, 299,
310, 278, 303, 304, 52, 2, 3, 4, 253, 302,
173, 8, 9, 10, 11, 305, 241, 314, 254, 167,
156, 88, 255, 92, 168, 59, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 204, 276, 280, 311, 268, 281, 293, 82, 32,
33, 0, 34, 35, 36, 0, 37, 0, 0, 0,
38, 0, 0, 156, 156, 0, 0, 156, 156, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 156, 0, 0, 0, 0, 0, 0, 0,
0, 208, 0, 0, 0, 0, 0, 0, 0, 156,
0, 0, 0, 156, 1, 2, 3, 4, 5, 6,
7, 8, 9, 10, 11, 139, 140, 141, 0, 142,
143, 144, 145, 0, 0, 0, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 0, 29, 30, 31, 0, 0, 32,
33, 146, 34, 35, 36, 0, 37, 0, 0, 97,
38, 98, 99, 100, 101, 0, 0, 102, 103, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 104, 0, 0, 0,
147, 148, 0, 0, 0, 0, 149, 105, 106, 0,
107, 1, 2, 3, 4, 5, 6, 7, 8, 9,
10, 11, 139, 140, 141, 0, 142, 143, 144, 145,
0, 0, 0, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 0, 26, 27,
28, 0, 0, 29, 30, 143, 31, 32, 33, 0,
34, 0, 0, 94, 35, 95, 96, 97, 98, 0,
0, 99, 100, 0, 0, 0, 0, 0, 0, 0,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
0, 29, 30, 31, 0, 0, 32, 33, 146, 34,
35, 36, 0, 37, 0, 0, 97, 38, 98, 99,
100, 101, 0, 0, 102, 103, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 104, 0, 0, 0, 147, 229, 0,
0, 0, 0, 149, 105, 106, 0, 107, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 139,
140, 141, 0, 142, 143, 144, 145, 0, 0, 0,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
31, 0, 0, 32, 33, 146, 34, 35, 36, 0,
37, 0, 0, 97, 38, 98, 99, 100, 101, 0,
0, 102, 103, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
101, 0, 0, 0, 144, 145, 0, 0, 0, 0,
146, 102, 103, 0, 104, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 11, 136, 137, 138, 0,
139, 140, 141, 142, 0, 0, 0, 12, 13, 14,
104, 0, 0, 0, 147, 0, 0, 0, 0, 0,
149, 105, 106, 0, 107, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 11, 139, 140, 141, 0,
142, 143, 144, 145, 0, 0, 0, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 0, 26, 27, 28, 0, 0, 29, 30, 143,
31, 32, 33, 0, 34, 0, 0, 94, 35, 95,
96, 97, 98, 0, 0, 99, 100, 0, 0, 0,
25, 26, 27, 28, 0, 29, 30, 31, 0, 0,
32, 33, 146, 34, 35, 36, 0, 37, 0, 0,
97, 38, 98, 99, 100, 101, 0, 0, 102, 103,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 101, 0, 0, 0, 144, 226,
0, 0, 0, 0, 146, 102, 103, 0, 104, 1,
0, 0, 0, 0, 0, 0, 0, 104, 0, 0,
0, 86, 0, 0, 0, 0, 0, 149, 105, 106,
0, 107, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 11, 139, 140, 141, 0, 142, 143, 144,
145, 0, 0, 0, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, 0, 29, 30, 31, 0, 0, 32, 33, 146,
34, 35, 36, 0, 37, 0, 0, 97, 38, 98,
99, 100, 101, 0, 0, 102, 103, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 104, 0, 0, 0, 0, 0,
0, 0, 0, 0, 149, 105, 106, 0, 107, 1,
2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
136, 137, 138, 0, 139, 140, 141, 142, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 0, 26, 27, 28, 0,
0, 29, 30, 143, 31, 32, 33, 0, 34, 0,
0, 94, 35, 95, 96, 97, 98, 0, 0, 99,
100, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 101, 0,
0, 0, 144, 0, 0, 0, 0, 0, 146, 102,
103, 0, 104, 1, 2, 3, 4, 5, 6, 7,
8, 9, 10, 11, 136, 137, 138, 0, 139, 140,
141, 142, 0, 0, 0, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 0,
26, 27, 28, 0, 0, 29, 30, 143, 31, 32,
33, 0, 34, 0, 0, 94, 35, 95, 96, 97,
98, 0, 0, 99, 100, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 101, 0, 0, 0, 83, 0, 0, 0,
0, 0, 146, 102, 103, 0, 104, 1, 2, 3,
4, 5, 6, 7, 8, 9, 10, 11, 136, 137,
138, 0, 139, 140, 141, 142, 0, 0, 0, 12,
0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 0, 29,
30, 31, 0, 0, 32, 33, 0, 34, 35, 36,
0, 37, 0, 0, 97, 38, 98, 99, 100, 101,
0, 0, 102, 103, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 284, 2, 3,
4, 104, 6, 7, 8, 9, 10, 11, 0, 0,
0, 149, 105, 106, 0, 107, 0, 0, 0, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, 0, 26, 27, 28, 0, 0, 29,
30, 143, 31, 32, 33, 0, 34, 0, 0, 94,
35, 95, 96, 97, 98, 0, 0, 99, 100, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 281, 2, 3, 4, 101, 6, 7, 8,
9, 10, 11, 0, 0, 0, 146, 102, 103, 0,
104, 0, 0, 0, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 25, 0, 26,
27, 28, 0, 0, 29, 30, 0, 31, 32, 33,
0, 34, 0, 0, 94, 35, 95, 96, 97, 98,
0, 0, 99, 100, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 101, 8, 9, 10, 11, 0, 0, 0, 0,
0, 0, 102, 103, 0, 104, 0, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 0,
0, 0, 0, 0, 0, 0, 0, 29, 30, 0,
31, 32, 33, 0, 34, 0, 0, 94, 35, 95,
96, 97, 98, 0, 0, 99, 100, 0, 0, 0,
23, 24, 25, 26, 27, 28, 0, 29, 30, 31,
0, 0, 32, 33, 0, 34, 35, 36, 0, 37,
0, 0, 97, 38, 98, 99, 100, 101, 0, 0,
102, 103, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 104,
8, 9, 10, 11, 0, 0, 0, 0, 0, 0,
105, 106, 0, 107, 0, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
0, 0, 0, 0, 0, 0, 0, 0, 32, 33,
0, 34, 35, 36, 0, 37, 0, 0, 97, 38,
98, 99, 100, 101, 0, 0, 102, 103, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 101, 0, 0, 168, 8, 9,
10, 11, 0, 0, 0, 102, 103, 0, 104, 0,
0, 0, 0, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 0, 0, 0, 0, 0,
0, 0, 0, 29, 30, 0, 31, 32, 33, 0,
34, 0, 0, 94, 35, 95, 96, 97, 98, 0,
0, 99, 100, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 104, 0, 0, 171, 8,
9, 10, 11, 0, 0, 0, 105, 106, 0, 107,
0, 0, 0, 0, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 25, 26, 0,
0, 0, 0, 0, 0, 0, 0, 32, 33, 0,
34, 35, 36, 0, 37, 0, 0, 97, 38, 98,
99, 100, 101, 0, 0, 102, 103, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
101, 8, 9, 10, 11, 0, 0, 0, 0, 0,
213, 102, 103, 0, 104, 0, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 0, 0,
0, 0, 0, 0, 0, 0, 29, 30, 0, 31,
32, 33, 0, 34, 0, 0, 94, 35, 95, 96,
97, 98, 0, 0, 99, 100, 0, 0, 0, 0,
0, 0, 0, 0, 104, 8, 9, 10, 11, 0,
0, 0, 0, 0, 216, 105, 106, 0, 107, 0,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 26, 0, 0, 0, 0, 0,
0, 0, 0, 32, 33, 0, 34, 35, 36, 0,
37, 0, 0, 97, 38, 98, 99, 100, 101, 0,
0, 102, 103, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 101, 0, 0, 229, 8, 9, 10,
11, 0, 0, 0, 102, 103, 0, 104, 0, 0,
0, 0, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 0, 0, 0, 0, 0, 0,
0, 0, 29, 30, 0, 31, 32, 33, 0, 34,
0, 0, 94, 35, 95, 96, 97, 98, 0, 0,
99, 100, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 101,
104, 0, 0, 232, 8, 9, 10, 11, 0, 0,
0, 105, 106, 0, 107, 0, 0, 0, 0, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, 26, 0, 0, 0, 0, 0, 0,
0, 0, 32, 33, 0, 34, 35, 36, 0, 37,
0, 0, 97, 38, 98, 99, 100, 101, 0, 0,
102, 103, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 104,
8, 9, 10, 11, 0, 0, 0, 0, 0, 0,
102, 103, 0, 104, 0, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 0, 0, 0,
0, 0, 0, 0, 0, 29, 182, 0, 31, 32,
33, 0, 34, 0, 0, 94, 35, 95, 96, 97,
98, 0, 0, 99, 100, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2, 3, 4,
0, 0, 101, 8, 9, 10, 11, 0, 0, 0,
0, 0, 0, 102, 103, 0, 104, 0, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
0, 0, 0, 0, 0, 0, 0, 0, 29, 30,
0, 31, 32, 33, 0, 34, 2, 3, 4, 35,
0, 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, 0,
205, 0, 0, 0, 0, 0, 0, 29, 30, 0,
31, 32, 33, 0, 34, 0, 0, 0, 35, 0,
0, 0, 0, 0, 0, 78, 0, 0, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 254,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 0, 26, 27, 28, 0, 0,
29, 30, 0, 31, 32, 33, 0, 34, 0, 0,
0, 35, 1, 2, 3, 4, 5, 6, 7, 8,
105, 106, 0, 107, 0, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
0, 0, 0, 0, 0, 0, 0, 0, 32, 185,
0, 34, 35, 36, 0, 37, 0, 0, 97, 38,
98, 99, 100, 101, 0, 0, 102, 103, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 3, 4, 0, 0, 104, 8, 9, 10, 11,
0, 0, 0, 0, 0, 0, 105, 106, 0, 107,
0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 0, 0, 0, 0,
0, 0, 0, 0, 32, 33, 0, 34, 35, 36,
0, 37, 0, 0, 0, 38, 0, 0, 0, 0,
0, 0, 81, 0, 0, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 11, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 257, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 0, 29, 30, 31, 0, 0,
32, 33, 0, 34, 35, 36, 0, 37, 0, 0,
0, 38, 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, 0, 26,
27, 28, 0, 0, 29, 30, 0, 31, 32, 33,
0, 34, 2, 3, 4, 35, 0, 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, 0, 0, 0, 0, 0,
0, 0, 0, 29, 30, 0, 31, 32, 33, 0,
34, 0, 0, 0, 35, 8, 9, 10, 11, 0,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, 0, 29, 30, 31, 0, 0, 32, 33, 0,
34, 35, 36, 0, 37, 2, 3, 4, 38, 0,
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, 0, 0, 0, 32,
33, 0, 34, 35, 36, 0, 37, 0, 0, 0,
38, 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, 0, 0, 0, 32,
33, 0, 34, 35, 36, 0, 37, 0, 0, 239,
38, 0, 0, 0, 240, 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, 0, 0, 0, 0, 0, 0, 0, 0,
29, 30, 0, 31, 32, 33, 0, 34, 0, 0,
236, 35, 0, 0, 0, 237, 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, 0, 0, 0, 0, 0, 0, 0,
0, 29, 30, 0, 31, 32, 33, 0, 34, 0,
0, 0, 35
22, 23, 24, 25, 26, 0, 0, 0, 0, 0,
0, 0, 0, 32, 33, 0, 34, 35, 36, 0,
37, 0, 0, 0, 38
};
static const yytype_int16 yycheck[] =
{
0, 101, 77, 62, 167, 93, 77, 92, 44, 134,
9, 0, 0, 70, 260, 264, 280, 92, 55, 41,
84, 92, 158, 65, 66, 113, 47, 91, 99, 100,
279, 37, 38, 55, 70, 56, 9, 301, 37, 38,
39, 94, 142, 96, 44, 116, 82, 47, 105, 86,
296, 51, 92, 89, 300, 83, 56, 89, 100, 101,
92, 89, 51, 51, 37, 38, 39, 63, 64, 83,
70, 72, 73, 74, 83, 89, 201, 177, 89, 167,
81, 166, 82, 83, 83, 82, 55, 84, 84, 89,
91, 166, 88, 181, 91, 166, 132, 83, 134, 199,
83, 86, 89, 89, 84, 92, 89, 190, 191, 192,
193, 211, 4, 5, 6, 186, 187, 188, 189, 190,
191, 192, 193, 194, 195, 196, 197, 198, 89, 265,
89, 92, 132, 92, 134, 223, 224, 97, 98, 302,
37, 38, 39, 228, 82, 86, 84, 67, 68, 89,
90, 194, 195, 228, 188, 189, 55, 228, 158, 92,
55, 82, 69, 82, 264, 201, 83, 71, 55, 85,
255, 82, 82, 82, 92, 87, 84, 92, 92, 279,
255, 82, 85, 271, 255, 85, 84, 89, 47, 289,
86, 85, 82, 41, 85, 55, 85, 82, 17, 299,
259, 201, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 83, 302, 87, 92, 217, 83, 92,
91, 178, 196, 198, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 89, 40,
41, 42, 197, 64, 45, 46, 71, 48, 49, 50,
89, 52, 5, 132, 55, 56, 57, 58, 59, 60,
260, 261, 63, 64, 264, 265, 256, 261, 217, 300,
261, 279, 51, -1, -1, -1, -1, -1, -1, 279,
-1, 82, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 92, 93, 94, -1, 96, 296, -1, -1, -1,
300, 3, 4, 5, 6, 7, 8, 9, 10, 11,
0, 96, 104, 95, 65, 80, 170, 80, 9, 137,
0, 47, 0, 73, 58, 263, 267, 68, 69, 44,
95, 116, 95, 161, 86, 283, 50, 102, 103, 9,
92, 282, 86, 58, 86, 59, 86, 73, 92, 40,
41, 42, 92, 145, 119, 89, 304, 47, 108, 85,
50, 299, 103, 104, 54, 303, 92, 40, 41, 59,
40, 41, 42, 85, 54, 87, 54, 87, 100, 101,
66, 67, 94, 73, 94, 170, 204, 169, 180, 92,
92, 86, 95, 95, 95, 85, 86, 92, 92, 184,
92, 87, 92, 95, 169, 91, 169, 70, 71, 135,
202, 137, 193, 194, 195, 196, 86, 92, 92, 93,
95, 97, 214, 99, 189, 190, 191, 192, 193, 194,
195, 196, 197, 198, 199, 200, 201, 75, 76, 77,
268, 226, 227, 191, 192, 135, 84, 137, 85, 231,
87, 305, 4, 5, 6, 58, 94, 40, 41, 42,
197, 198, 87, 89, 58, 89, 231, 95, 231, 58,
85, 161, 86, 85, 72, 267, 258, 74, 204, 88,
58, 85, 95, 85, 95, 95, 85, 87, 89, 274,
282, 50, 85, 258, 90, 258, 88, 87, 44, 90,
292, 88, 88, 85, 92, 58, 85, 88, 88, 86,
302, 262, 86, 17, 204, 4, 5, 6, 199, 95,
305, 10, 11, 12, 13, 94, 181, 95, 200, 92,
220, 67, 201, 74, 92, 5, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 135, 259, 264, 303, 220, 264, 282, 54, 48,
49, -1, 51, 52, 53, -1, 55, -1, -1, -1,
59, -1, -1, 263, 264, -1, -1, 267, 268, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 282, -1, -1, -1, -1, -1, -1, -1,
-1, 90, -1, -1, -1, -1, -1, -1, -1, 299,
-1, -1, -1, 303, 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, -1, -1, 48,
49, 50, 51, 52, 53, -1, 55, -1, -1, 58,
59, 60, 61, 62, 63, -1, -1, 66, 67, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 85, -1, -1, -1,
89, 90, -1, -1, -1, -1, 95, 96, 97, -1,
99, 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, -1, 40, 41,
42, -1, -1, 45, 46, 47, 48, 49, 50, -1,
52, -1, -1, 55, 56, 57, 58, 59, 60, -1,
-1, 63, 64, -1, -1, -1, -1, -1, -1, -1,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
-1, 43, 44, 45, -1, -1, 48, 49, 50, 51,
52, 53, -1, 55, -1, -1, 58, 59, 60, 61,
62, 63, -1, -1, 66, 67, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 85, -1, -1, -1, 89, 90, -1,
-1, -1, -1, 95, 96, 97, -1, 99, 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, -1, -1, 48, 49, 50, 51, 52, 53, -1,
55, -1, -1, 58, 59, 60, 61, 62, 63, -1,
-1, 66, 67, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
82, -1, -1, -1, 86, 87, -1, -1, -1, -1,
92, 93, 94, -1, 96, 3, 4, 5, 6, 7,
85, -1, -1, -1, 89, -1, -1, -1, -1, -1,
95, 96, 97, -1, 99, 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, -1, 40, 41, 42, -1, -1, 45, 46, 47,
48, 49, 50, -1, 52, -1, -1, 55, 56, 57,
58, 59, 60, -1, -1, 63, 64, -1, -1, -1,
38, 39, 40, 41, -1, 43, 44, 45, -1, -1,
48, 49, 50, 51, 52, 53, -1, 55, -1, -1,
58, 59, 60, 61, 62, 63, -1, -1, 66, 67,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
-1, 89, -1, -1, -1, -1, -1, 95, 96, 97,
-1, 99, 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, -1, -1, 48, 49, 50,
51, 52, 53, -1, 55, -1, -1, 58, 59, 60,
61, 62, 63, -1, -1, 66, 67, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 82, -1, -1, -1, 86, 87,
-1, -1, -1, -1, 92, 93, 94, -1, 96, 3,
-1, -1, -1, -1, 85, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 95, 96, 97, -1, 99, 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, -1, 40, 41, 42, -1,
-1, 45, 46, 47, 48, 49, 50, -1, 52, -1,
-1, 55, 56, 57, 58, 59, 60, -1, -1, 63,
64, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 82, -1,
-1, -1, 86, -1, -1, -1, -1, -1, 92, 93,
94, -1, 96, 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, -1,
40, 41, 42, -1, -1, 45, 46, 47, 48, 49,
50, -1, 52, -1, -1, 55, 56, 57, 58, 59,
60, -1, -1, 63, 64, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 82, -1, -1, -1, 86, -1, -1, -1,
-1, -1, 92, 93, 94, -1, 96, 3, 4, 5,
6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, -1, 18, 19, 20, 21, -1, -1, -1, 25,
-1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, -1, 43,
44, 45, -1, -1, 48, 49, -1, 51, 52, 53,
-1, 55, -1, -1, 58, 59, 60, 61, 62, 63,
-1, -1, 66, 67, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 3, 4, 5,
6, 85, 8, 9, 10, 11, 12, 13, -1, -1,
-1, 95, 96, 97, -1, 99, -1, -1, -1, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, -1, 40, 41, 42, -1, -1, 45,
46, 47, 48, 49, 50, -1, 52, -1, -1, 55,
56, 57, 58, 59, 60, -1, -1, 63, 64, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3, 4, 5, 6, 82, 8, 9, 10,
11, 12, 13, -1, -1, -1, 92, 93, 94, -1,
96, -1, -1, -1, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, -1, 40,
41, 42, -1, -1, 45, 46, -1, 48, 49, 50,
-1, 52, -1, -1, 55, 56, 57, 58, 59, 60,
-1, -1, 63, 64, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 82, 10, 11, 12, 13, -1, -1, -1, -1,
-1, -1, 93, 94, -1, 96, -1, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, -1,
-1, -1, -1, -1, -1, -1, -1, 45, 46, -1,
48, 49, 50, -1, 52, -1, -1, 55, 56, 57,
58, 59, 60, -1, -1, 63, 64, -1, -1, -1,
36, 37, 38, 39, 40, 41, -1, 43, 44, 45,
-1, -1, 48, 49, -1, 51, 52, 53, -1, 55,
-1, -1, 58, 59, 60, 61, 62, 63, -1, -1,
66, 67, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 85,
10, 11, 12, 13, -1, -1, -1, -1, -1, -1,
96, 97, -1, 99, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
-1, -1, -1, -1, -1, -1, -1, -1, 48, 49,
-1, 51, 52, 53, -1, 55, -1, -1, 58, 59,
60, 61, 62, 63, -1, -1, 66, 67, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 82, -1, -1, 85, 10, 11,
12, 13, -1, -1, -1, 93, 94, -1, 96, -1,
-1, -1, -1, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, -1, -1, -1, -1, -1,
-1, -1, -1, 45, 46, -1, 48, 49, 50, -1,
52, -1, -1, 55, 56, 57, 58, 59, 60, -1,
-1, 63, 64, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 85, -1, -1, 88, 10,
11, 12, 13, -1, -1, -1, 96, 97, -1, 99,
-1, -1, -1, -1, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, -1,
-1, -1, -1, -1, -1, -1, -1, 48, 49, -1,
51, 52, 53, -1, 55, -1, -1, 58, 59, 60,
61, 62, 63, -1, -1, 66, 67, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
82, 10, 11, 12, 13, -1, -1, -1, -1, -1,
92, 93, 94, -1, 96, -1, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, -1, -1,
-1, -1, -1, -1, -1, -1, 45, 46, -1, 48,
49, 50, -1, 52, -1, -1, 55, 56, 57, 58,
59, 60, -1, -1, 63, 64, -1, -1, -1, -1,
-1, -1, -1, -1, 85, 10, 11, 12, 13, -1,
-1, -1, -1, -1, 95, 96, 97, -1, 99, -1,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, -1, -1, -1, -1, -1,
-1, -1, -1, 48, 49, -1, 51, 52, 53, -1,
55, -1, -1, 58, 59, 60, 61, 62, 63, -1,
-1, 66, 67, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 82, -1, -1, 85, 10, 11, 12,
13, -1, -1, -1, 93, 94, -1, 96, -1, -1,
-1, -1, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, -1, -1, -1, -1, -1, -1,
-1, -1, 45, 46, -1, 48, 49, 50, -1, 52,
-1, -1, 55, 56, 57, 58, 59, 60, -1, -1,
63, 64, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 82,
85, -1, -1, 88, 10, 11, 12, 13, -1, -1,
-1, 96, 97, -1, 99, -1, -1, -1, -1, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, -1, -1, -1, -1, -1, -1,
-1, -1, 48, 49, -1, 51, 52, 53, -1, 55,
-1, -1, 58, 59, 60, 61, 62, 63, -1, -1,
66, 67, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 85,
10, 11, 12, 13, -1, -1, -1, -1, -1, -1,
93, 94, -1, 96, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, -1, -1, -1,
-1, -1, -1, -1, -1, 45, 46, -1, 48, 49,
50, -1, 52, -1, -1, 55, 56, 57, 58, 59,
60, -1, -1, 63, 64, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4, 5, 6,
-1, -1, 82, 10, 11, 12, 13, -1, -1, -1,
-1, -1, -1, 93, 94, -1, 96, -1, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
-1, -1, -1, -1, -1, -1, -1, -1, 45, 46,
-1, 48, 49, 50, -1, 52, 4, 5, 6, 56,
-1, -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, -1,
87, -1, -1, -1, -1, -1, -1, 45, 46, -1,
48, 49, 50, -1, 52, -1, -1, -1, 56, -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, 87,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, -1, 40, 41, 42, -1, -1,
45, 46, -1, 48, 49, 50, -1, 52, -1, -1,
-1, 56, 3, 4, 5, 6, 7, 8, 9, 10,
96, 97, -1, 99, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
-1, -1, -1, -1, -1, -1, -1, -1, 48, 49,
-1, 51, 52, 53, -1, 55, -1, -1, 58, 59,
60, 61, 62, 63, -1, -1, 66, 67, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4, 5, 6, -1, -1, 85, 10, 11, 12, 13,
-1, -1, -1, -1, -1, -1, 96, 97, -1, 99,
-1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, -1, -1, -1, -1,
-1, -1, -1, -1, 48, 49, -1, 51, 52, 53,
-1, 55, -1, -1, -1, 59, -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, 90, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, -1, 43, 44, 45, -1, -1,
48, 49, -1, 51, 52, 53, -1, 55, -1, -1,
-1, 59, 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, -1, 40,
41, 42, -1, -1, 45, 46, -1, 48, 49, 50,
-1, 52, 4, 5, 6, 56, -1, -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, -1, -1, -1, -1, -1,
-1, -1, -1, 45, 46, -1, 48, 49, 50, -1,
52, -1, -1, -1, 56, 10, 11, 12, 13, -1,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, -1, 43, 44, 45, -1, -1, 48, 49, -1,
51, 52, 53, -1, 55, 4, 5, 6, 59, -1,
-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, -1, -1, -1, 48,
49, -1, 51, 52, 53, -1, 55, -1, -1, -1,
59, 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, -1, -1, -1, 48,
49, -1, 51, 52, 53, -1, 55, -1, -1, 58,
59, -1, -1, -1, 63, 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, -1, -1, -1, -1, -1, -1, -1, -1,
45, 46, -1, 48, 49, 50, -1, 52, -1, -1,
55, 56, -1, -1, -1, 60, 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, -1, -1, -1, -1, -1, -1, -1,
-1, 45, 46, -1, 48, 49, 50, -1, 52, -1,
-1, -1, 56
35, 36, 37, 38, 39, -1, -1, -1, -1, -1,
-1, -1, -1, 48, 49, -1, 51, 52, 53, -1,
55, -1, -1, -1, 59
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
......@@ -1277,36 +1306,36 @@ static const yytype_uint8 yystos[] =
{
0, 3, 4, 5, 6, 7, 8, 9, 10, 11,
12, 13, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 40, 41, 42, 45,
46, 48, 49, 50, 52, 56, 136, 137, 138, 139,
140, 145, 146, 147, 149, 150, 151, 152, 153, 154,
155, 187, 188, 189, 41, 55, 152, 37, 38, 55,
86, 92, 190, 83, 89, 9, 37, 38, 39, 142,
143, 148, 89, 92, 55, 151, 153, 84, 0, 188,
153, 86, 157, 86, 173, 142, 141, 144, 151, 143,
55, 82, 84, 91, 55, 57, 58, 59, 60, 63,
64, 82, 93, 94, 96, 107, 108, 109, 111, 112,
113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 135,
154, 92, 156, 151, 158, 159, 14, 15, 16, 18,
19, 20, 21, 47, 86, 87, 92, 118, 131, 132,
134, 136, 137, 154, 163, 164, 165, 166, 174, 175,
176, 179, 186, 55, 141, 144, 84, 91, 85, 135,
132, 162, 118, 118, 134, 63, 64, 84, 88, 83,
83, 89, 46, 132, 82, 118, 97, 98, 94, 96,
65, 66, 100, 101, 67, 68, 69, 71, 70, 105,
85, 158, 55, 160, 161, 87, 159, 92, 92, 181,
82, 82, 92, 92, 134, 82, 87, 167, 72, 73,
74, 81, 91, 133, 89, 92, 87, 164, 84, 85,
135, 162, 85, 83, 110, 134, 55, 60, 113, 132,
118, 118, 120, 120, 122, 122, 122, 122, 123, 123,
127, 128, 129, 134, 87, 84, 89, 92, 170, 171,
172, 182, 134, 92, 180, 174, 132, 132, 135, 85,
85, 90, 135, 161, 47, 173, 165, 163, 175, 183,
83, 3, 134, 147, 178, 168, 85, 132, 85, 82,
178, 184, 185, 170, 177, 55, 83, 87, 134, 92,
83, 17, 91, 165, 169, 173, 83, 134, 169, 170,
162, 92
33, 34, 35, 36, 37, 38, 39, 40, 41, 43,
44, 45, 48, 49, 51, 52, 53, 55, 59, 139,
140, 141, 142, 143, 148, 149, 150, 152, 153, 154,
155, 156, 157, 158, 190, 191, 192, 44, 58, 155,
40, 41, 58, 89, 95, 193, 86, 92, 9, 40,
41, 42, 145, 146, 151, 92, 95, 58, 154, 156,
87, 0, 191, 156, 89, 160, 89, 176, 145, 144,
147, 154, 146, 58, 85, 87, 94, 58, 60, 61,
62, 63, 66, 67, 85, 96, 97, 99, 110, 111,
112, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
133, 134, 138, 157, 95, 159, 154, 161, 162, 14,
15, 16, 18, 19, 20, 21, 50, 89, 90, 95,
121, 134, 135, 137, 139, 140, 157, 166, 167, 168,
169, 177, 178, 179, 182, 189, 58, 144, 147, 87,
94, 88, 138, 135, 165, 121, 121, 137, 66, 67,
87, 91, 86, 86, 92, 49, 135, 85, 121, 100,
101, 97, 99, 68, 69, 103, 104, 70, 71, 72,
74, 73, 108, 88, 161, 58, 163, 164, 90, 162,
95, 95, 184, 85, 85, 95, 95, 137, 85, 90,
170, 75, 76, 77, 84, 94, 136, 92, 95, 90,
167, 87, 88, 138, 165, 88, 86, 113, 137, 58,
63, 116, 135, 121, 121, 123, 123, 125, 125, 125,
125, 126, 126, 130, 131, 132, 137, 90, 87, 92,
95, 173, 174, 175, 185, 137, 95, 183, 177, 135,
135, 138, 88, 88, 93, 138, 164, 50, 176, 168,
166, 178, 186, 86, 3, 137, 150, 181, 171, 88,
135, 88, 85, 181, 187, 188, 173, 180, 58, 86,
90, 137, 95, 86, 17, 94, 168, 172, 176, 86,
137, 172, 173, 165, 95
};
#define yyerrok (yyerrstatus = 0)
......@@ -3928,6 +3957,33 @@ yyreduce:
case 136:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
(yyval.interm.type).setAggregate(2);
}
break;
case 137:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
(yyval.interm.type).setBasic(EbtUInt, qual, (yyvsp[(1) - (1)].lex).line);
(yyval.interm.type).setAggregate(3);
}
break;
case 138:
{
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 139:
{
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);
......@@ -3935,7 +3991,7 @@ yyreduce:
}
break;
case 137:
case 140:
{
FRAG_VERT_ONLY("mat3", (yyvsp[(1) - (1)].lex).line);
......@@ -3945,7 +4001,7 @@ yyreduce:
}
break;
case 138:
case 141:
{
FRAG_VERT_ONLY("mat4", (yyvsp[(1) - (1)].lex).line);
......@@ -3955,7 +4011,7 @@ yyreduce:
}
break;
case 139:
case 142:
{
FRAG_VERT_ONLY("sampler2D", (yyvsp[(1) - (1)].lex).line);
......@@ -3964,7 +4020,7 @@ yyreduce:
}
break;
case 140:
case 143:
{
FRAG_VERT_ONLY("samplerCube", (yyvsp[(1) - (1)].lex).line);
......@@ -3973,7 +4029,7 @@ yyreduce:
}
break;
case 141:
case 144:
{
if (!context->supportsExtension("GL_OES_EGL_image_external")) {
......@@ -3986,7 +4042,7 @@ yyreduce:
}
break;
case 142:
case 145:
{
FRAG_VERT_ONLY("sampler3D", (yyvsp[(1) - (1)].lex).line);
......@@ -3995,7 +4051,7 @@ yyreduce:
}
break;
case 143:
case 146:
{
FRAG_VERT_ONLY("struct", (yyvsp[(1) - (1)].interm.type).line);
......@@ -4004,7 +4060,7 @@ yyreduce:
}
break;
case 144:
case 147:
{
//
......@@ -4018,12 +4074,12 @@ yyreduce:
}
break;
case 145:
case 148:
{ if (context->enterStructDeclaration((yyvsp[(2) - (3)].lex).line, *(yyvsp[(2) - (3)].lex).string)) context->recover(); }
break;
case 146:
case 149:
{
if (context->reservedErrorCheck((yyvsp[(2) - (6)].lex).line, *(yyvsp[(2) - (6)].lex).string))
......@@ -4041,12 +4097,12 @@ yyreduce:
}
break;
case 147:
case 150:
{ if (context->enterStructDeclaration((yyvsp[(2) - (2)].lex).line, *(yyvsp[(2) - (2)].lex).string)) context->recover(); }
break;
case 148:
case 151:
{
TType* structure = new TType((yyvsp[(4) - (5)].interm.typeList), TString(""));
......@@ -4056,14 +4112,14 @@ yyreduce:
}
break;
case 149:
case 152:
{
(yyval.interm.typeList) = (yyvsp[(1) - (1)].interm.typeList);
}
break;
case 150:
case 153:
{
(yyval.interm.typeList) = (yyvsp[(1) - (2)].interm.typeList);
......@@ -4079,7 +4135,7 @@ yyreduce:
}
break;
case 151:
case 154:
{
(yyval.interm.typeList) = (yyvsp[(2) - (3)].interm.typeList);
......@@ -4112,7 +4168,7 @@ yyreduce:
}
break;
case 152:
case 155:
{
(yyval.interm.typeList) = NewPoolTTypeList();
......@@ -4120,14 +4176,14 @@ yyreduce:
}
break;
case 153:
case 156:
{
(yyval.interm.typeList)->push_back((yyvsp[(3) - (3)].interm.typeLine));
}
break;
case 154:
case 157:
{
if (context->reservedErrorCheck((yyvsp[(1) - (1)].lex).line, *(yyvsp[(1) - (1)].lex).string))
......@@ -4139,7 +4195,7 @@ yyreduce:
}
break;
case 155:
case 158:
{
if (context->reservedErrorCheck((yyvsp[(1) - (4)].lex).line, *(yyvsp[(1) - (4)].lex).string))
......@@ -4156,67 +4212,67 @@ yyreduce:
}
break;
case 156:
case 159:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
case 157:
case 160:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 158:
case 161:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermAggregate); }
break;
case 159:
case 162:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 160:
case 163:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 161:
case 164:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 162:
case 165:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 163:
case 166:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 164:
case 167:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 165:
case 168:
{ (yyval.interm.intermAggregate) = 0; }
break;
case 166:
case 169:
{ context->symbolTable.push(); }
break;
case 167:
case 170:
{ context->symbolTable.pop(); }
break;
case 168:
case 171:
{
if ((yyvsp[(3) - (5)].interm.intermAggregate) != 0) {
......@@ -4227,44 +4283,44 @@ yyreduce:
}
break;
case 169:
case 172:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 170:
case 173:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 171:
case 174:
{ context->symbolTable.push(); }
break;
case 172:
case 175:
{ context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
break;
case 173:
case 176:
{ context->symbolTable.push(); }
break;
case 174:
case 177:
{ context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
break;
case 175:
case 178:
{
(yyval.interm.intermNode) = 0;
}
break;
case 176:
case 179:
{
if ((yyvsp[(2) - (3)].interm.intermAggregate)) {
......@@ -4275,31 +4331,31 @@ yyreduce:
}
break;
case 177:
case 180:
{
(yyval.interm.intermAggregate) = context->intermediate.makeAggregate((yyvsp[(1) - (1)].interm.intermNode), 0);
}
break;
case 178:
case 181:
{
(yyval.interm.intermAggregate) = context->intermediate.growAggregate((yyvsp[(1) - (2)].interm.intermAggregate), (yyvsp[(2) - (2)].interm.intermNode), 0);
}
break;
case 179:
case 182:
{ (yyval.interm.intermNode) = 0; }
break;
case 180:
case 183:
{ (yyval.interm.intermNode) = static_cast<TIntermNode*>((yyvsp[(1) - (2)].interm.intermTypedNode)); }
break;
case 181:
case 184:
{
if (context->boolErrorCheck((yyvsp[(1) - (5)].lex).line, (yyvsp[(3) - (5)].interm.intermTypedNode)))
......@@ -4308,7 +4364,7 @@ yyreduce:
}
break;
case 182:
case 185:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (3)].interm.intermNode);
......@@ -4316,7 +4372,7 @@ yyreduce:
}
break;
case 183:
case 186:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (1)].interm.intermNode);
......@@ -4324,7 +4380,7 @@ yyreduce:
}
break;
case 184:
case 187:
{
(yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
......@@ -4333,7 +4389,7 @@ yyreduce:
}
break;
case 185:
case 188:
{
TIntermNode* intermNode;
......@@ -4351,12 +4407,12 @@ yyreduce:
}
break;
case 186:
case 189:
{ context->symbolTable.push(); ++context->loopNestingLevel; }
break;
case 187:
case 190:
{
context->symbolTable.pop();
......@@ -4365,12 +4421,12 @@ yyreduce:
}
break;
case 188:
case 191:
{ ++context->loopNestingLevel; }
break;
case 189:
case 192:
{
if (context->boolErrorCheck((yyvsp[(8) - (8)].lex).line, (yyvsp[(6) - (8)].interm.intermTypedNode)))
......@@ -4381,12 +4437,12 @@ yyreduce:
}
break;
case 190:
case 193:
{ context->symbolTable.push(); ++context->loopNestingLevel; }
break;
case 191:
case 194:
{
context->symbolTable.pop();
......@@ -4395,35 +4451,35 @@ yyreduce:
}
break;
case 192:
case 195:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 193:
case 196:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 194:
case 197:
{
(yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
}
break;
case 195:
case 198:
{
(yyval.interm.intermTypedNode) = 0;
}
break;
case 196:
case 199:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (2)].interm.intermTypedNode);
......@@ -4431,7 +4487,7 @@ yyreduce:
}
break;
case 197:
case 200:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (3)].interm.intermTypedNode);
......@@ -4439,7 +4495,7 @@ yyreduce:
}
break;
case 198:
case 201:
{
if (context->loopNestingLevel <= 0) {
......@@ -4450,7 +4506,7 @@ yyreduce:
}
break;
case 199:
case 202:
{
if (context->loopNestingLevel <= 0) {
......@@ -4461,7 +4517,7 @@ yyreduce:
}
break;
case 200:
case 203:
{
(yyval.interm.intermNode) = context->intermediate.addBranch(EOpReturn, (yyvsp[(1) - (2)].lex).line);
......@@ -4472,7 +4528,7 @@ yyreduce:
}
break;
case 201:
case 204:
{
(yyval.interm.intermNode) = context->intermediate.addBranch(EOpReturn, (yyvsp[(2) - (3)].interm.intermTypedNode), (yyvsp[(1) - (3)].lex).line);
......@@ -4487,7 +4543,7 @@ yyreduce:
}
break;
case 202:
case 205:
{
FRAG_ONLY("discard", (yyvsp[(1) - (2)].lex).line);
......@@ -4495,7 +4551,7 @@ yyreduce:
}
break;
case 203:
case 206:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
......@@ -4503,7 +4559,7 @@ yyreduce:
}
break;
case 204:
case 207:
{
(yyval.interm.intermNode) = context->intermediate.growAggregate((yyvsp[(1) - (2)].interm.intermNode), (yyvsp[(2) - (2)].interm.intermNode), 0);
......@@ -4511,21 +4567,21 @@ yyreduce:
}
break;
case 205:
case 208:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 206:
case 209:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 207:
case 210:
{
TFunction* function = (yyvsp[(1) - (1)].interm).function;
......@@ -4614,7 +4670,7 @@ yyreduce:
}
break;
case 208:
case 211:
{
//?? Check that all paths return a value if return type != void ?
......
......@@ -70,78 +70,81 @@
VEC2 = 286,
VEC3 = 287,
VEC4 = 288,
MATRIX2 = 289,
MATRIX3 = 290,
MATRIX4 = 291,
IN_QUAL = 292,
OUT_QUAL = 293,
INOUT_QUAL = 294,
UNIFORM = 295,
VARYING = 296,
CENTROID = 297,
FLAT = 298,
SMOOTH = 299,
STRUCT = 300,
VOID_TYPE = 301,
WHILE = 302,
SAMPLER2D = 303,
SAMPLERCUBE = 304,
SAMPLER_EXTERNAL_OES = 305,
SAMPLER2DRECT = 306,
SAMPLER3D = 307,
SAMPLER3DRECT = 308,
SAMPLER2DSHADOW = 309,
IDENTIFIER = 310,
TYPE_NAME = 311,
FLOATCONSTANT = 312,
INTCONSTANT = 313,
BOOLCONSTANT = 314,
FIELD_SELECTION = 315,
LEFT_OP = 316,
RIGHT_OP = 317,
INC_OP = 318,
DEC_OP = 319,
LE_OP = 320,
GE_OP = 321,
EQ_OP = 322,
NE_OP = 323,
AND_OP = 324,
OR_OP = 325,
XOR_OP = 326,
MUL_ASSIGN = 327,
DIV_ASSIGN = 328,
ADD_ASSIGN = 329,
MOD_ASSIGN = 330,
LEFT_ASSIGN = 331,
RIGHT_ASSIGN = 332,
AND_ASSIGN = 333,
XOR_ASSIGN = 334,
OR_ASSIGN = 335,
SUB_ASSIGN = 336,
LEFT_PAREN = 337,
RIGHT_PAREN = 338,
LEFT_BRACKET = 339,
RIGHT_BRACKET = 340,
LEFT_BRACE = 341,
RIGHT_BRACE = 342,
DOT = 343,
COMMA = 344,
COLON = 345,
EQUAL = 346,
SEMICOLON = 347,
BANG = 348,
DASH = 349,
TILDE = 350,
PLUS = 351,
STAR = 352,
SLASH = 353,
PERCENT = 354,
LEFT_ANGLE = 355,
RIGHT_ANGLE = 356,
VERTICAL_BAR = 357,
CARET = 358,
AMPERSAND = 359,
QUESTION = 360
UVEC2 = 289,
UVEC3 = 290,
UVEC4 = 291,
MATRIX2 = 292,
MATRIX3 = 293,
MATRIX4 = 294,
IN_QUAL = 295,
OUT_QUAL = 296,
INOUT_QUAL = 297,
UNIFORM = 298,
VARYING = 299,
CENTROID = 300,
FLAT = 301,
SMOOTH = 302,
STRUCT = 303,
VOID_TYPE = 304,
WHILE = 305,
SAMPLER2D = 306,
SAMPLERCUBE = 307,
SAMPLER_EXTERNAL_OES = 308,
SAMPLER2DRECT = 309,
SAMPLER3D = 310,
SAMPLER3DRECT = 311,
SAMPLER2DSHADOW = 312,
IDENTIFIER = 313,
TYPE_NAME = 314,
FLOATCONSTANT = 315,
INTCONSTANT = 316,
BOOLCONSTANT = 317,
FIELD_SELECTION = 318,
LEFT_OP = 319,
RIGHT_OP = 320,
INC_OP = 321,
DEC_OP = 322,
LE_OP = 323,
GE_OP = 324,
EQ_OP = 325,
NE_OP = 326,
AND_OP = 327,
OR_OP = 328,
XOR_OP = 329,
MUL_ASSIGN = 330,
DIV_ASSIGN = 331,
ADD_ASSIGN = 332,
MOD_ASSIGN = 333,
LEFT_ASSIGN = 334,
RIGHT_ASSIGN = 335,
AND_ASSIGN = 336,
XOR_ASSIGN = 337,
OR_ASSIGN = 338,
SUB_ASSIGN = 339,
LEFT_PAREN = 340,
RIGHT_PAREN = 341,
LEFT_BRACKET = 342,
RIGHT_BRACKET = 343,
LEFT_BRACE = 344,
RIGHT_BRACE = 345,
DOT = 346,
COMMA = 347,
COLON = 348,
EQUAL = 349,
SEMICOLON = 350,
BANG = 351,
DASH = 352,
TILDE = 353,
PLUS = 354,
STAR = 355,
SLASH = 356,
PERCENT = 357,
LEFT_ANGLE = 358,
RIGHT_ANGLE = 359,
VERTICAL_BAR = 360,
CARET = 361,
AMPERSAND = 362,
QUESTION = 363
};
#endif
......
......@@ -223,7 +223,10 @@ bool TOutputTraverser::visitAggregate(Visit visit, TIntermAggregate* node)
case EOpConstructIVec2: out << "Construct ivec2"; break;
case EOpConstructIVec3: out << "Construct ivec3"; break;
case EOpConstructIVec4: out << "Construct ivec4"; break;
case EOpConstructUInt: out << "Construct uint"; break;
case EOpConstructUInt: out << "Construct uint"; break;
case EOpConstructUVec2: out << "Construct uvec2"; break;
case EOpConstructUVec3: out << "Construct uvec3"; break;
case EOpConstructUVec4: out << "Construct uvec4"; break;
case EOpConstructMat2: out << "Construct mat2"; break;
case EOpConstructMat3: out << "Construct mat3"; break;
case EOpConstructMat4: out << "Construct mat4"; break;
......
......@@ -157,6 +157,9 @@ enum TOperator {
EOpConstructIVec2,
EOpConstructIVec3,
EOpConstructIVec4,
EOpConstructUVec2,
EOpConstructUVec3,
EOpConstructUVec4,
EOpConstructMat2,
EOpConstructMat3,
EOpConstructMat4,
......
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