Support in/out as type qualifiers.

TRAC #22715 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2123 736b8ea6-26fd-11df-bfd4-992fa37f6226
parent 5524db0c
......@@ -164,10 +164,10 @@ extern void yyerror(TParseContext* context, const char* reason);
%type <interm> single_declaration init_declarator_list
%type <interm> parameter_declaration parameter_declarator parameter_type_specifier
%type <interm.qualifier> parameter_qualifier
%type <interm.qualifier> parameter_qualifier parameter_type_qualifier
%type <interm.precision> precision_qualifier
%type <interm.type> type_qualifier fully_specified_type type_specifier
%type <interm.type> type_qualifier fully_specified_type type_specifier storage_qualifier
%type <interm.type> type_specifier_no_prec type_specifier_nonarray
%type <interm.type> struct_specifier
%type <interm.typeLine> struct_declarator
......@@ -1158,9 +1158,9 @@ parameter_declaration
//
// Type + name
//
: type_qualifier parameter_qualifier parameter_declarator {
: parameter_type_qualifier parameter_qualifier parameter_declarator {
$$ = $3;
if (context->paramErrorCheck($3.line, $1.qualifier, $2, $$.param.type))
if (context->paramErrorCheck($3.line, $1, $2, $$.param.type))
context->recover();
}
| parameter_qualifier parameter_declarator {
......@@ -1173,9 +1173,9 @@ parameter_declaration
//
// Only type
//
| type_qualifier parameter_qualifier parameter_type_specifier {
| parameter_type_qualifier parameter_qualifier parameter_type_specifier {
$$ = $3;
if (context->paramErrorCheck($3.line, $1.qualifier, $2, $$.param.type))
if (context->paramErrorCheck($3.line, $1, $2, $$.param.type))
context->recover();
}
| parameter_qualifier parameter_type_specifier {
......@@ -1502,11 +1502,14 @@ fully_specified_type
}
;
type_qualifier
parameter_type_qualifier
: CONST_QUAL {
$$.setBasic(EbtVoid, EvqConst, $1.line);
$$ = EvqConst;
}
| ATTRIBUTE {
;
type_qualifier
: ATTRIBUTE {
VERTEX_ONLY("attribute", $1.line);
ES2_ONLY("attribute", $1.line);
if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "attribute"))
......@@ -1531,10 +1534,43 @@ type_qualifier
else
$$.setBasic(EbtVoid, EvqInvariantVaryingIn, $1.line);
}
| UNIFORM {
| storage_qualifier {
$$.setBasic(EbtVoid, $1.qualifier, $1.line);
}
;
storage_qualifier
: CONST_QUAL {
$$.qualifier = EvqConst;
$$.line = $1.line;
}
| IN_QUAL {
ES3_ONLY("in", $1.line);
$$.qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqVaryingIn : EvqAttribute;
$$.line = $1.line;
}
| OUT_QUAL {
ES3_ONLY("out", $1.line);
$$.qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqFragColor : EvqVaryingOut;
$$.line = $1.line;
}
| CENTROID IN_QUAL {
ES3_ONLY("in", $1.line);
// FIXME: Handle centroid qualifier
$$.qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqVaryingIn : EvqAttribute;
$$.line = $2.line;
}
| CENTROID OUT_QUAL {
ES3_ONLY("out", $1.line);
// FIXME: Handle centroid qualifier
$$.qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqFragColor : EvqVaryingOut;
$$.line = $2.line;
}
| UNIFORM {
if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "uniform"))
context->recover();
$$.setBasic(EbtVoid, EvqUniform, $1.line);
$$.qualifier = EvqUniform;
$$.line = $1.line;
}
;
......
......@@ -529,18 +529,18 @@ union yyalloc
#endif
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 71
#define YYFINAL 77
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 1567
#define YYLAST 1546
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 105
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 83
#define YYNNTS 85
/* YYNRULES -- Number of rules. */
#define YYNRULES 201
#define YYNRULES 207
/* YYNRULES -- Number of states. */
#define YYNSTATES 304
#define YYNSTATES 311
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
......@@ -606,28 +606,28 @@ static const yytype_uint16 yyprhs[] =
225, 228, 234, 238, 241, 245, 248, 249, 251, 253,
255, 257, 259, 263, 269, 276, 282, 284, 287, 292,
298, 303, 306, 308, 311, 313, 315, 317, 320, 322,
324, 327, 329, 331, 333, 335, 340, 342, 344, 346,
348, 350, 352, 354, 356, 358, 360, 362, 364, 366,
368, 370, 372, 374, 376, 378, 380, 382, 384, 385,
392, 393, 399, 401, 404, 408, 410, 414, 416, 421,
423, 425, 427, 429, 431, 433, 435, 437, 439, 442,
443, 444, 450, 452, 454, 455, 458, 459, 462, 465,
469, 471, 474, 476, 479, 485, 489, 491, 493, 498,
499, 506, 507, 516, 517, 525, 527, 529, 531, 532,
535, 539, 542, 545, 548, 552, 555, 557, 560, 562,
564, 565
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, 399, 406, 407, 413, 415,
418, 422, 424, 428, 430, 435, 437, 439, 441, 443,
445, 447, 449, 451, 453, 456, 457, 458, 464, 466,
468, 469, 472, 473, 476, 479, 483, 485, 488, 490,
493, 499, 503, 505, 507, 512, 513, 520, 521, 530,
531, 539, 541, 543, 545, 546, 549, 553, 556, 559,
562, 566, 569, 571, 574, 576, 578, 579
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yytype_int16 yyrhs[] =
{
184, 0, -1, 54, -1, 106, -1, 57, -1, 56,
186, 0, -1, 54, -1, 106, -1, 57, -1, 56,
-1, 58, -1, 81, 133, 82, -1, 107, -1, 108,
83, 109, 84, -1, 110, -1, 108, 87, 59, -1,
108, 62, -1, 108, 63, -1, 133, -1, 111, -1,
112, -1, 108, 87, 112, -1, 114, 82, -1, 113,
82, -1, 115, 45, -1, 115, -1, 115, 131, -1,
114, 88, 131, -1, 116, 81, -1, 151, -1, 54,
114, 88, 131, -1, 116, 81, -1, 153, -1, 54,
-1, 59, -1, 108, -1, 62, 117, -1, 63, 117,
-1, 118, 117, -1, 95, -1, 93, -1, 92, -1,
117, -1, 119, 96, 117, -1, 119, 97, 117, -1,
......@@ -641,43 +641,45 @@ static const yytype_int16 yyrhs[] =
131, -1, 130, -1, 117, 132, 131, -1, 90, -1,
71, -1, 72, -1, 73, -1, 80, -1, 131, -1,
133, 88, 131, -1, 130, -1, 136, 91, -1, 144,
91, -1, 7, 149, 150, 91, -1, 137, 82, -1,
91, -1, 7, 151, 152, 91, -1, 137, 82, -1,
139, -1, 138, -1, 139, 141, -1, 138, 88, 141,
-1, 146, 54, 81, -1, 148, 54, -1, 148, 54,
-1, 146, 54, 81, -1, 150, 54, -1, 150, 54,
83, 134, 84, -1, 147, 142, 140, -1, 142, 140,
-1, 147, 142, 143, -1, 142, 143, -1, -1, 36,
-1, 37, -1, 38, -1, 148, -1, 145, -1, 144,
-1, 37, -1, 38, -1, 150, -1, 145, -1, 144,
88, 54, -1, 144, 88, 54, 83, 84, -1, 144,
88, 54, 83, 134, 84, -1, 144, 88, 54, 90,
159, -1, 146, -1, 146, 54, -1, 146, 54, 83,
161, -1, 146, -1, 146, 54, -1, 146, 54, 83,
84, -1, 146, 54, 83, 134, 84, -1, 146, 54,
90, 159, -1, 3, 54, -1, 148, -1, 147, 148,
90, 161, -1, 3, 54, -1, 150, -1, 148, 150,
-1, 9, -1, 8, -1, 40, -1, 3, 40, -1,
39, -1, 150, -1, 149, 150, -1, 4, -1, 5,
-1, 6, -1, 151, -1, 151, 83, 134, 84, -1,
45, -1, 11, -1, 12, -1, 10, -1, 30, -1,
31, -1, 32, -1, 24, -1, 25, -1, 26, -1,
27, -1, 28, -1, 29, -1, 33, -1, 34, -1,
35, -1, 47, -1, 48, -1, 49, -1, 50, -1,
152, -1, 55, -1, -1, 44, 54, 85, 153, 155,
86, -1, -1, 44, 85, 154, 155, 86, -1, 156,
-1, 155, 156, -1, 148, 157, 91, -1, 158, -1,
157, 88, 158, -1, 54, -1, 54, 83, 134, 84,
-1, 131, -1, 135, -1, 163, -1, 162, -1, 160,
-1, 172, -1, 173, -1, 176, -1, 183, -1, 85,
86, -1, -1, -1, 85, 164, 171, 165, 86, -1,
170, -1, 162, -1, -1, 168, 170, -1, -1, 169,
162, -1, 85, 86, -1, 85, 171, 86, -1, 161,
-1, 171, 161, -1, 91, -1, 133, 91, -1, 18,
81, 133, 82, 174, -1, 167, 16, 167, -1, 167,
-1, 133, -1, 146, 54, 90, 159, -1, -1, 46,
81, 177, 175, 82, 166, -1, -1, 15, 178, 167,
46, 81, 133, 82, 91, -1, -1, 17, 81, 179,
180, 182, 82, 166, -1, 172, -1, 160, -1, 175,
-1, -1, 181, 91, -1, 181, 91, 133, -1, 14,
91, -1, 13, 91, -1, 20, 91, -1, 20, 133,
91, -1, 19, 91, -1, 185, -1, 184, 185, -1,
186, -1, 135, -1, -1, 136, 187, 170, -1
149, -1, 9, -1, 36, -1, 37, -1, 41, 36,
-1, 41, 37, -1, 39, -1, 152, -1, 151, 152,
-1, 4, -1, 5, -1, 6, -1, 153, -1, 153,
83, 134, 84, -1, 45, -1, 11, -1, 12, -1,
10, -1, 30, -1, 31, -1, 32, -1, 24, -1,
25, -1, 26, -1, 27, -1, 28, -1, 29, -1,
33, -1, 34, -1, 35, -1, 47, -1, 48, -1,
49, -1, 50, -1, 154, -1, 55, -1, -1, 44,
54, 85, 155, 157, 86, -1, -1, 44, 85, 156,
157, 86, -1, 158, -1, 157, 158, -1, 150, 159,
91, -1, 160, -1, 159, 88, 160, -1, 54, -1,
54, 83, 134, 84, -1, 131, -1, 135, -1, 165,
-1, 164, -1, 162, -1, 174, -1, 175, -1, 178,
-1, 185, -1, 85, 86, -1, -1, -1, 85, 166,
173, 167, 86, -1, 172, -1, 164, -1, -1, 170,
172, -1, -1, 171, 164, -1, 85, 86, -1, 85,
173, 86, -1, 163, -1, 173, 163, -1, 91, -1,
133, 91, -1, 18, 81, 133, 82, 176, -1, 169,
16, 169, -1, 169, -1, 133, -1, 146, 54, 90,
161, -1, -1, 46, 81, 179, 177, 82, 168, -1,
-1, 15, 180, 169, 46, 81, 133, 82, 91, -1,
-1, 17, 81, 181, 182, 184, 82, 168, -1, 174,
-1, 162, -1, 177, -1, -1, 183, 91, -1, 183,
91, 133, -1, 14, 91, -1, 13, 91, -1, 20,
91, -1, 20, 133, 91, -1, 19, 91, -1, 187,
-1, 186, 187, -1, 188, -1, 135, -1, -1, 136,
189, 172, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
......@@ -693,17 +695,17 @@ static const yytype_uint16 yyrline[] =
969, 977, 1004, 1009, 1023, 1061, 1064, 1071, 1079, 1100,
1121, 1132, 1161, 1166, 1176, 1181, 1191, 1194, 1197, 1200,
1206, 1213, 1216, 1238, 1256, 1280, 1303, 1307, 1325, 1333,
1365, 1385, 1474, 1483, 1506, 1509, 1516, 1525, 1534, 1542,
1552, 1559, 1562, 1565, 1571, 1574, 1589, 1593, 1597, 1601,
1610, 1615, 1620, 1625, 1630, 1635, 1640, 1645, 1650, 1655,
1661, 1667, 1673, 1678, 1683, 1692, 1701, 1706, 1719, 1719,
1733, 1733, 1742, 1745, 1760, 1796, 1800, 1806, 1814, 1830,
1834, 1838, 1839, 1845, 1846, 1847, 1848, 1849, 1853, 1854,
1854, 1854, 1864, 1865, 1869, 1869, 1870, 1870, 1875, 1878,
1888, 1891, 1897, 1898, 1902, 1910, 1914, 1924, 1929, 1946,
1946, 1951, 1951, 1958, 1958, 1966, 1969, 1975, 1978, 1984,
1988, 1995, 2002, 2009, 2016, 2027, 2036, 2040, 2047, 2050,
2056, 2056
1365, 1385, 1474, 1483, 1506, 1512, 1519, 1528, 1537, 1543,
1547, 1552, 1557, 1563, 1569, 1578, 1588, 1595, 1598, 1601,
1607, 1610, 1625, 1629, 1633, 1637, 1646, 1651, 1656, 1661,
1666, 1671, 1676, 1681, 1686, 1691, 1697, 1703, 1709, 1714,
1719, 1728, 1737, 1742, 1755, 1755, 1769, 1769, 1778, 1781,
1796, 1832, 1836, 1842, 1850, 1866, 1870, 1874, 1875, 1881,
1882, 1883, 1884, 1885, 1889, 1890, 1890, 1890, 1900, 1901,
1905, 1905, 1906, 1906, 1911, 1914, 1924, 1927, 1933, 1934,
1938, 1946, 1950, 1960, 1965, 1982, 1982, 1987, 1987, 1994,
1994, 2002, 2005, 2011, 2014, 2020, 2024, 2031, 2038, 2045,
2052, 2063, 2072, 2076, 2083, 2086, 2092, 2092
};
#endif
......@@ -747,9 +749,10 @@ static const char *const yytname[] =
"function_header", "parameter_declarator", "parameter_declaration",
"parameter_qualifier", "parameter_type_specifier",
"init_declarator_list", "single_declaration", "fully_specified_type",
"type_qualifier", "type_specifier", "precision_qualifier",
"type_specifier_no_prec", "type_specifier_nonarray", "struct_specifier",
"$@1", "$@2", "struct_declaration_list", "struct_declaration",
"parameter_type_qualifier", "type_qualifier", "storage_qualifier",
"type_specifier", "precision_qualifier", "type_specifier_no_prec",
"type_specifier_nonarray", "struct_specifier", "$@1", "$@2",
"struct_declaration_list", "struct_declaration",
"struct_declarator_list", "struct_declarator", "initializer",
"declaration_statement", "statement", "simple_statement",
"compound_statement", "$@3", "$@4", "statement_no_new_scope",
......@@ -794,17 +797,17 @@ static const yytype_uint8 yyr1[] =
134, 135, 135, 135, 136, 137, 137, 138, 138, 139,
140, 140, 141, 141, 141, 141, 142, 142, 142, 142,
143, 144, 144, 144, 144, 144, 145, 145, 145, 145,
145, 145, 146, 146, 147, 147, 147, 147, 147, 148,
148, 149, 149, 149, 150, 150, 151, 151, 151, 151,
151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
151, 151, 151, 151, 151, 151, 151, 151, 153, 152,
154, 152, 155, 155, 156, 157, 157, 158, 158, 159,
160, 161, 161, 162, 162, 162, 162, 162, 163, 164,
165, 163, 166, 166, 168, 167, 169, 167, 170, 170,
171, 171, 172, 172, 173, 174, 174, 175, 175, 177,
176, 178, 176, 179, 176, 180, 180, 181, 181, 182,
182, 183, 183, 183, 183, 183, 184, 184, 185, 185,
187, 186
145, 145, 146, 146, 147, 148, 148, 148, 148, 149,
149, 149, 149, 149, 149, 150, 150, 151, 151, 151,
152, 152, 153, 153, 153, 153, 153, 153, 153, 153,
153, 153, 153, 153, 153, 153, 153, 153, 153, 153,
153, 153, 153, 153, 155, 154, 156, 154, 157, 157,
158, 159, 159, 160, 160, 161, 162, 163, 163, 164,
164, 164, 164, 164, 165, 166, 167, 165, 168, 168,
170, 169, 171, 169, 172, 172, 173, 173, 174, 174,
175, 176, 176, 177, 177, 179, 178, 180, 178, 181,
178, 182, 182, 183, 183, 184, 184, 185, 185, 185,
185, 185, 186, 186, 187, 187, 189, 188
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
......@@ -821,16 +824,16 @@ static const yytype_uint8 yyr2[] =
2, 5, 3, 2, 3, 2, 0, 1, 1, 1,
1, 1, 3, 5, 6, 5, 1, 2, 4, 5,
4, 2, 1, 2, 1, 1, 1, 2, 1, 1,
2, 1, 1, 1, 1, 4, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 2, 1, 1, 1,
1, 4, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 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, 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
......@@ -838,307 +841,317 @@ static const yytype_uint8 yyr2[] =
means the default is an error. */
static const yytype_uint8 yydefact[] =
{
0, 0, 111, 112, 113, 0, 105, 104, 119, 117,
118, 123, 124, 125, 126, 127, 128, 120, 121, 122,
129, 130, 131, 108, 106, 0, 116, 132, 133, 134,
135, 137, 199, 200, 0, 76, 86, 0, 91, 96,
0, 102, 0, 109, 114, 136, 0, 196, 198, 107,
101, 0, 0, 140, 71, 0, 74, 86, 0, 87,
88, 89, 77, 0, 86, 0, 72, 97, 103, 110,
0, 1, 197, 0, 138, 0, 0, 201, 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, 142, 0,
0, 181, 0, 0, 0, 0, 0, 159, 168, 172,
35, 61, 68, 0, 150, 0, 114, 153, 170, 152,
151, 0, 154, 155, 156, 157, 80, 82, 84, 0,
0, 98, 0, 149, 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,
0, 0, 0, 115, 0, 147, 0, 145, 141, 143,
192, 191, 166, 183, 0, 195, 193, 0, 179, 158,
0, 64, 65, 66, 67, 63, 0, 0, 173, 169,
171, 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, 139, 0, 0,
144, 0, 0, 0, 0, 0, 194, 0, 160, 62,
69, 0, 94, 9, 0, 0, 146, 0, 165, 167,
186, 185, 188, 166, 177, 0, 0, 0, 81, 60,
148, 0, 187, 0, 0, 176, 174, 0, 0, 161,
0, 189, 0, 166, 0, 163, 180, 162, 0, 190,
184, 175, 178, 182
0, 0, 117, 118, 119, 0, 105, 109, 125, 123,
124, 129, 130, 131, 132, 133, 134, 126, 127, 128,
135, 136, 137, 110, 111, 114, 106, 0, 0, 122,
138, 139, 140, 141, 143, 205, 206, 0, 76, 86,
0, 91, 96, 0, 108, 102, 0, 115, 120, 142,
0, 202, 204, 107, 101, 0, 112, 113, 0, 146,
71, 0, 74, 86, 104, 87, 88, 89, 77, 0,
86, 0, 72, 97, 103, 116, 0, 1, 203, 0,
144, 0, 0, 207, 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, 148, 0, 0, 187, 0, 0,
0, 0, 0, 165, 174, 178, 35, 61, 68, 0,
156, 0, 120, 159, 176, 158, 157, 0, 160, 161,
162, 163, 80, 82, 84, 0, 0, 98, 0, 155,
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, 0, 0, 0, 121,
0, 153, 0, 151, 147, 149, 198, 197, 172, 189,
0, 201, 199, 0, 185, 164, 0, 64, 65, 66,
67, 63, 0, 0, 179, 175, 177, 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, 145, 0, 0, 150, 0, 0, 0,
0, 0, 200, 0, 166, 62, 69, 0, 94, 9,
0, 0, 152, 0, 171, 173, 192, 191, 194, 172,
0, 183, 0, 0, 0, 81, 60, 154, 0, 193,
0, 0, 182, 180, 0, 0, 167, 0, 195, 0,
172, 0, 169, 186, 168, 0, 196, 190, 181, 184,
188
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
-1, 98, 99, 100, 227, 101, 102, 103, 104, 105,
106, 107, 140, 109, 110, 111, 112, 113, 114, 115,
116, 117, 118, 119, 120, 141, 142, 216, 143, 122,
144, 145, 34, 35, 36, 79, 62, 63, 80, 37,
38, 39, 40, 41, 42, 43, 123, 45, 125, 75,
127, 128, 196, 197, 164, 147, 148, 149, 150, 210,
277, 296, 251, 252, 253, 297, 151, 152, 153, 286,
276, 154, 257, 202, 254, 272, 283, 284, 155, 46,
47, 48, 55
-1, 104, 105, 106, 233, 107, 108, 109, 110, 111,
112, 113, 146, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 147, 148, 222, 149, 128,
150, 151, 37, 38, 39, 85, 68, 69, 86, 40,
41, 42, 70, 43, 44, 45, 46, 47, 129, 49,
131, 81, 133, 134, 202, 203, 170, 153, 154, 155,
156, 216, 284, 303, 257, 258, 259, 304, 157, 158,
159, 293, 283, 160, 263, 208, 260, 278, 290, 291,
161, 50, 51, 52, 61
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -258
#define YYPACT_NINF -268
static const yytype_int16 yypact[] =
{
1383, -29, -258, -258, -258, 126, -258, -258, -258, -258,
-258, -258, -258, -258, -258, -258, -258, -258, -258, -258,
-258, -258, -258, -258, -258, -48, -258, -258, -258, -258,
-258, -258, -258, -74, -32, 25, 19, 15, -258, 68,
1430, -258, 1512, -258, 45, -258, 1330, -258, -258, -258,
-258, 1512, 65, -258, -258, 74, -258, 71, 117, -258,
-258, -258, -258, 1430, 116, 112, -258, 6, -258, -258,
1123, -258, -258, 78, -258, 1430, 290, -258, -258, -258,
-258, 118, 1430, -2, -258, 901, 1123, 89, -258, -258,
-258, -258, 1123, 1123, 1123, -258, -258, -258, -258, -258,
7, -258, -258, -258, 91, -64, 1195, 90, -258, 1123,
-58, -22, -258, -33, -5, -258, -258, -258, 106, 108,
-60, -258, 92, -258, -258, 1430, 125, 191, -258, 93,
94, -258, 102, 105, 96, 976, 107, 104, -258, -258,
12, -258, -258, 32, -258, -74, 75, -258, -258, -258,
-258, 383, -258, -258, -258, -258, 109, -258, -258, 1048,
1123, -258, 121, -258, -258, -258, -258, -35, -258, -258,
1123, 1471, -258, -258, 1123, 110, -258, -258, -258, 1123,
1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123,
1123, 1123, 1123, -258, 1267, 123, 33, -258, -258, -258,
-258, -258, 115, -258, 1123, -258, -258, 38, -258, -258,
476, -258, -258, -258, -258, -258, 1123, 1123, -258, -258,
-258, 1123, -258, 124, -258, -258, -258, 128, 119, -258,
132, -258, -258, -258, -258, -58, -58, -258, -258, -258,
-258, -33, -33, -258, 106, 108, 72, -258, 1123, 125,
-258, 147, 74, 662, 755, 16, -258, 829, 476, -258,
-258, 130, -258, -258, 1123, 143, -258, 148, -258, -258,
-258, -258, 829, 115, 119, 155, 146, 144, -258, -258,
-258, 1123, -258, 140, 150, 217, -258, 152, 569, -258,
17, 1123, 569, 115, 1123, -258, -258, -258, 153, 119,
-258, -258, -258, -258
1362, -6, -268, -268, -268, 135, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -21, -26, -268,
-268, -268, -268, -268, -268, -268, -51, -47, 6, 16,
-20, -268, 46, 1409, -268, -268, 1491, -268, 29, -268,
1309, -268, -268, -268, -268, 1491, -268, -268, 31, -268,
-268, 67, -268, 27, -268, -268, -268, -268, -268, 1409,
111, 102, -268, -11, -268, -268, 1055, -268, -268, 69,
-268, 1409, 297, -268, -268, -268, -268, 104, 1409, -45,
-268, 193, 1055, 80, -268, -268, -268, -268, 1055, 1055,
1055, -268, -268, -268, -268, -268, 21, -268, -268, -268,
81, -15, 1127, 84, -268, 1055, -22, 20, -268, -43,
70, -268, -268, -268, 94, 96, -55, -268, 83, -268,
-268, 1409, 114, 1199, -268, 82, 85, -268, 90, 91,
86, 908, 93, 89, -268, -268, -53, -268, -268, 14,
-268, -51, 49, -268, -268, -268, -268, 390, -268, -268,
-268, -268, 95, -268, -268, 980, 1055, -268, 97, -268,
-268, -268, -268, 5, -268, -268, 1055, 1450, -268, -268,
1055, 103, -268, -268, -268, 1055, 1055, 1055, 1055, 1055,
1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, -268,
1246, 100, 18, -268, -268, -268, -268, -268, 105, -268,
1055, -268, -268, 19, -268, -268, 483, -268, -268, -268,
-268, -268, 1055, 1055, -268, -268, -268, 1055, -268, 101,
-268, -268, -268, 107, 99, -268, 112, -268, -268, -268,
-268, -22, -22, -268, -268, -268, -268, -43, -43, -268,
94, 96, -3, -268, 1055, 114, -268, 142, 67, 669,
762, 7, -268, 836, 483, -268, -268, 108, -268, -268,
1055, 110, -268, 115, -268, -268, -268, -268, 836, 105,
155, 99, 143, 116, 120, -268, -268, -268, 1055, -268,
117, 119, 191, -268, 121, 576, -268, 8, 1055, 576,
105, 1055, -268, -268, -268, 118, 99, -268, -268, -268,
-268
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
-258, -258, -258, -258, -258, -258, -258, 63, -258, -258,
-258, -258, -44, -258, -19, -258, -67, -20, -258, -258,
-258, 48, 53, 54, -258, -66, -83, -258, -92, -73,
8, 14, -258, -258, -258, 165, 192, 184, 168, -258,
-258, -237, -23, -30, 246, -21, 0, -258, -258, -258,
127, -122, -258, 10, -145, 1, -144, -224, -258, -258,
-258, -36, -257, -258, -258, -54, 50, 9, -258, -258,
-11, -258, -258, -258, -258, -258, -258, -258, -258, -258,
216, -258, -258
-268, -268, -268, -268, -268, -268, -268, 33, -268, -268,
-268, -268, -68, -268, -37, -268, -46, -39, -268, -268,
-268, 17, 34, 32, -268, -74, -88, -268, -99, -85,
10, 11, -268, -268, -268, 126, 152, 161, 144, -268,
-268, -234, -268, -268, -268, -30, 228, -14, 0, -268,
-268, -268, 113, -124, -268, -19, -163, -25, -150, -233,
-268, -268, -268, -65, -267, -268, -268, -56, 23, -7,
-268, -268, -33, -268, -268, -268, -268, -268, -268, -268,
-268, -268, 196, -268, -268
};
/* 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 -165
#define YYTABLE_NINF -171
static const yytype_int16 yytable[] =
{
44, 77, 167, 163, 121, 199, 52, 220, 32, 191,
68, 49, 162, 64, 33, 224, 285, 54, 173, 121,
275, 69, 58, 176, 174, 50, 108, 6, 7, 269,
73, 183, 184, 81, 64, 275, 301, 53, 179, 180,
44, 108, 44, 207, 192, 126, 44, 226, 165, 166,
56, 44, 81, 217, 32, 59, 60, 61, 23, 24,
33, 187, 188, 44, 295, 178, 185, 186, 295, 168,
169, 181, 199, 182, 58, 44, 146, 163, 228, 6,
7, 159, 44, 211, 212, 213, 223, 84, 160, 85,
170, 232, 214, 121, 171, 126, 86, 126, 273, 298,
246, -75, 215, 65, 217, 217, 66, 59, 60, 61,
23, 24, 255, 57, 220, 108, 237, 238, 239, 240,
217, 249, 67, 218, 250, 44, 217, 44, 70, 256,
2, 3, 4, 259, 260, 233, 234, 108, 108, 108,
108, 108, 108, 108, 108, 108, 108, 108, 261, 302,
74, 146, 59, 60, 61, 121, -25, 49, 70, 76,
217, 264, 235, 236, 126, 274, 83, 241, 242, 124,
-26, 177, 156, 172, 189, 265, 193, 108, 190, 195,
274, 279, 121, 203, 200, 201, 204, 205, 208, 290,
209, -116, 221, 267, 44, 2, 3, 4, 268, 299,
-164, 8, 9, 10, 108, 225, 248, 217, 262, 287,
146, 163, 263, -27, 278, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 280, 288, 281,
289, 291, 292, 293, 231, 25, 26, 243, 27, 28,
29, 30, 294, 244, 303, 245, 31, 157, 82, 78,
158, 51, 194, 146, 146, 270, 300, 146, 146, 266,
258, 282, 72, 271, 0, 0, 0, 0, 0, 0,
0, 0, 146, 0, 0, 0, 0, 198, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 146, 0,
0, 0, 146, 1, 2, 3, 4, 5, 6, 7,
8, 9, 10, 129, 130, 131, 0, 132, 133, 134,
135, 0, 0, 0, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 0, 0, 0, 23,
24, 0, 0, 0, 25, 26, 136, 27, 28, 29,
30, 0, 0, 0, 87, 31, 88, 89, 90, 91,
0, 0, 92, 93, 0, 0, 0, 0, 0, 0,
48, 173, 127, 230, 169, 83, 168, 226, 114, 205,
35, 36, 292, 74, 197, 56, 57, 127, 217, 218,
219, 189, 190, 114, 182, 64, 275, 220, 58, 282,
171, 172, 75, 308, 53, 62, 64, 221, 165, 87,
60, 79, 213, 48, 282, 166, 48, 184, 54, 198,
48, 132, 65, 66, 67, 48, 191, 192, 87, 59,
35, 36, 302, 65, 66, 67, 302, 179, 71, 48,
90, 72, 91, 180, 185, 186, 205, 234, 169, 92,
229, 48, 152, 174, 175, 223, 270, 232, 48, 279,
305, 127, 238, 223, 63, 223, 223, 114, -75, 252,
73, 132, 223, 132, 176, 224, 255, 223, 177, 256,
262, 261, 76, 187, 226, 188, 80, 239, 240, 114,
114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-25, 48, 76, 48, 265, 266, 193, 194, 309, 2,
3, 4, 267, 243, 244, 245, 246, 65, 66, 67,
241, 242, 82, 127, 247, 248, 89, 152, 162, 114,
130, -26, 195, 178, 281, 183, 196, 199, 201, 271,
132, 209, 210, 206, 214, 215, 207, 211, 227, 281,
127, 231, 286, 254, -122, 268, 114, 223, 273, 297,
-170, 269, 285, -27, 287, 53, 288, 294, 295, 306,
48, 299, 274, 8, 9, 10, 296, 300, 298, 310,
237, 301, 249, 169, 163, 84, 152, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 251,
250, 88, 164, 55, 307, 276, 272, 28, 29, 264,
30, 31, 32, 33, 200, 289, 78, 93, 34, 94,
95, 96, 97, 277, 0, 98, 99, 0, 0, 152,
152, 0, 0, 152, 152, 0, 0, 0, 0, 0,
0, 0, 0, 0, 100, 0, 0, 167, 152, 0,
0, 0, 0, 0, 0, 101, 102, 0, 103, 0,
0, 0, 0, 0, 0, 152, 0, 0, 0, 152,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
135, 136, 137, 0, 138, 139, 140, 141, 0, 0,
0, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 0, 25, 26, 27, 0,
0, 28, 29, 142, 30, 31, 32, 33, 0, 0,
0, 93, 34, 94, 95, 96, 97, 0, 0, 98,
99, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 100, 0,
0, 0, 143, 144, 0, 0, 0, 0, 145, 101,
102, 0, 103, 1, 2, 3, 4, 5, 6, 7,
8, 9, 10, 135, 136, 137, 0, 138, 139, 140,
141, 0, 0, 0, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 0, 25,
26, 27, 0, 0, 28, 29, 142, 30, 31, 32,
33, 0, 0, 0, 93, 34, 94, 95, 96, 97,
0, 0, 98, 99, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 94, 0, 0, 0, 137, 138, 0, 0, 0,
0, 139, 95, 96, 0, 97, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 129, 130, 131, 0,
132, 133, 134, 135, 0, 0, 0, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 0,
0, 0, 23, 24, 0, 0, 0, 25, 26, 136,
27, 28, 29, 30, 0, 0, 0, 87, 31, 88,
89, 90, 91, 0, 0, 92, 93, 0, 0, 0,
0, 100, 0, 0, 0, 143, 225, 0, 0, 0,
0, 145, 101, 102, 0, 103, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 135, 136, 137, 0,
138, 139, 140, 141, 0, 0, 0, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
24, 0, 25, 26, 27, 0, 0, 28, 29, 142,
30, 31, 32, 33, 0, 0, 0, 93, 34, 94,
95, 96, 97, 0, 0, 98, 99, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 94, 0, 0, 0, 137, 219,
0, 0, 0, 0, 139, 95, 96, 0, 97, 1,
2, 3, 4, 5, 6, 7, 8, 9, 10, 129,
130, 131, 0, 132, 133, 134, 135, 0, 0, 0,
0, 0, 0, 0, 100, 0, 0, 0, 143, 0,
0, 0, 0, 0, 145, 101, 102, 0, 103, 1,
2, 3, 4, 5, 6, 7, 8, 9, 10, 135,
136, 137, 0, 138, 139, 140, 141, 0, 0, 0,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 0, 0, 0, 23, 24, 0, 0, 0,
25, 26, 136, 27, 28, 29, 30, 0, 0, 0,
87, 31, 88, 89, 90, 91, 0, 0, 92, 93,
21, 22, 23, 24, 0, 25, 26, 27, 0, 0,
28, 29, 142, 30, 31, 32, 33, 0, 0, 0,
93, 34, 94, 95, 96, 97, 0, 0, 98, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 94, 0, 0,
0, 137, 0, 0, 0, 0, 0, 139, 95, 96,
0, 97, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 129, 130, 131, 0, 132, 133, 134, 135,
0, 0, 0, 0, 0, 0, 0, 100, 0, 0,
0, 82, 0, 0, 0, 0, 0, 145, 101, 102,
0, 103, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 135, 136, 137, 0, 138, 139, 140, 141,
0, 0, 0, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 0, 0, 0, 23, 24,
0, 0, 0, 25, 26, 136, 27, 28, 29, 30,
0, 0, 0, 87, 31, 88, 89, 90, 91, 0,
0, 92, 93, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
94, 0, 0, 0, 76, 0, 0, 0, 0, 0,
139, 95, 96, 0, 97, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 129, 130, 131, 0, 132,
133, 134, 135, 0, 0, 0, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 0, 0,
0, 23, 24, 0, 0, 0, 25, 26, 136, 27,
28, 29, 30, 0, 0, 0, 87, 31, 88, 89,
90, 91, 0, 0, 92, 93, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 94, 0, 0, 0, 0, 0, 0,
0, 0, 0, 139, 95, 96, 0, 97, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 11,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 0, 0, 0, 23, 24, 0, 0, 0, 25,
26, 0, 27, 28, 29, 30, 0, 0, 0, 87,
31, 88, 89, 90, 91, 0, 0, 92, 93, 0,
18, 19, 20, 21, 22, 23, 24, 0, 25, 26,
27, 0, 0, 28, 29, 142, 30, 31, 32, 33,
0, 0, 0, 93, 34, 94, 95, 96, 97, 0,
0, 98, 99, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 58, 2, 3, 4, 94, 6, 7, 8,
9, 10, 0, 0, 0, 0, 139, 95, 96, 0,
97, 0, 0, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 0, 0, 0, 23, 24,
0, 0, 0, 25, 26, 0, 27, 28, 29, 30,
0, 0, 0, 87, 31, 88, 89, 90, 91, 0,
0, 92, 93, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
94, 8, 9, 10, 0, 0, 0, 0, 0, 0,
0, 95, 96, 0, 97, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 0, 0, 0,
0, 0, 0, 0, 0, 25, 26, 0, 27, 28,
29, 30, 0, 0, 0, 87, 31, 88, 89, 90,
91, 0, 0, 92, 93, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 94, 0, 0, 161, 8, 9, 10, 0,
0, 0, 0, 95, 96, 0, 97, 0, 0, 0,
100, 0, 0, 0, 0, 0, 0, 0, 0, 0,
145, 101, 102, 0, 103, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
0, 25, 26, 27, 0, 0, 28, 29, 0, 30,
31, 32, 33, 0, 0, 0, 93, 34, 94, 95,
96, 97, 0, 0, 98, 99, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 280,
2, 3, 4, 100, 6, 7, 8, 9, 10, 0,
0, 0, 0, 145, 101, 102, 0, 103, 0, 0,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 0, 0, 0, 0, 0, 0, 0, 0,
25, 26, 0, 27, 28, 29, 30, 0, 0, 0,
87, 31, 88, 89, 90, 91, 0, 0, 92, 93,
21, 22, 23, 24, 0, 25, 26, 27, 0, 0,
28, 29, 0, 30, 31, 32, 33, 0, 0, 0,
93, 34, 94, 95, 96, 97, 0, 0, 98, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 94, 8, 9,
10, 0, 0, 0, 0, 0, 0, 206, 95, 96,
0, 97, 11, 12, 13, 14, 15, 16, 17, 18,
0, 0, 0, 0, 0, 0, 0, 100, 8, 9,
10, 0, 0, 0, 0, 0, 0, 0, 101, 102,
0, 103, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 0, 0, 0, 0, 0, 0,
0, 0, 25, 26, 0, 27, 28, 29, 30, 0,
0, 0, 87, 31, 88, 89, 90, 91, 0, 0,
92, 93, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 94,
0, 0, 222, 8, 9, 10, 0, 0, 0, 0,
95, 96, 0, 97, 0, 0, 0, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 0,
0, 0, 0, 0, 0, 0, 0, 25, 26, 0,
27, 28, 29, 30, 0, 0, 0, 87, 31, 88,
89, 90, 91, 0, 0, 92, 93, 0, 0, 0,
0, 0, 28, 29, 0, 30, 31, 32, 33, 0,
0, 0, 93, 34, 94, 95, 96, 97, 0, 0,
98, 99, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 100,
8, 9, 10, 0, 0, 0, 0, 0, 0, 212,
101, 102, 0, 103, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 0, 0, 0, 0,
0, 0, 0, 0, 28, 29, 0, 30, 31, 32,
33, 0, 0, 0, 93, 34, 94, 95, 96, 97,
0, 0, 98, 99, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 94, 8, 9, 10, 0, 0,
0, 0, 0, 0, 0, 95, 96, 0, 97, 11,
0, 100, 0, 0, 228, 8, 9, 10, 0, 0,
0, 0, 101, 102, 0, 103, 0, 0, 0, 11,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 0, 0, 0, 0, 0, 0, 0, 0, 25,
175, 0, 27, 28, 29, 30, 0, 0, 0, 87,
31, 88, 89, 90, 91, 0, 0, 92, 93, 0,
22, 0, 0, 0, 0, 0, 0, 0, 0, 28,
29, 0, 30, 31, 32, 33, 0, 0, 0, 93,
34, 94, 95, 96, 97, 0, 0, 98, 99, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2, 3, 4, 0, 0, 94, 8, 9, 10,
0, 0, 0, 0, 0, 0, 0, 95, 96, 0,
97, 11, 12, 13, 14, 15, 16, 17, 18, 19,
0, 0, 0, 0, 0, 0, 100, 8, 9, 10,
0, 0, 0, 0, 0, 0, 0, 101, 102, 0,
103, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 0, 0, 0, 0, 0, 0, 0,
0, 25, 26, 0, 27, 28, 29, 30, 0, 0,
0, 0, 31, 0, 0, 0, 0, 0, 0, 0,
71, 0, 0, 1, 2, 3, 4, 5, 6, 7,
8, 9, 10, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 247, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 0, 0, 0, 23,
24, 0, 0, 0, 25, 26, 0, 27, 28, 29,
30, 0, 0, 0, 0, 31, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 0,
0, 0, 23, 24, 0, 0, 0, 25, 26, 0,
27, 28, 29, 30, 2, 3, 4, 0, 31, 0,
8, 9, 10, 0, 0, 0, 0, 0, 0, 0,
0, 28, 181, 0, 30, 31, 32, 33, 0, 0,
0, 93, 34, 94, 95, 96, 97, 0, 0, 98,
99, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2, 3, 4, 0, 0, 100, 8,
9, 10, 0, 0, 0, 0, 0, 0, 0, 101,
102, 0, 103, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 0, 0, 0, 0, 0,
0, 0, 0, 28, 29, 0, 30, 31, 32, 33,
2, 3, 4, 0, 34, 0, 8, 9, 10, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 0, 0, 0, 204, 0, 0, 0, 0,
28, 29, 0, 30, 31, 32, 33, 0, 0, 0,
0, 34, 0, 0, 0, 0, 0, 0, 0, 77,
0, 0, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 253, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 0, 25, 26,
27, 0, 0, 28, 29, 0, 30, 31, 32, 33,
0, 0, 0, 0, 34, 1, 2, 3, 4, 5,
6, 7, 8, 9, 10, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
0, 25, 26, 27, 0, 0, 28, 29, 0, 30,
31, 32, 33, 2, 3, 4, 0, 34, 0, 8,
9, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 0, 0, 0, 0, 0,
0, 0, 0, 28, 29, 0, 30, 31, 32, 33,
8, 9, 10, 0, 34, 0, 0, 0, 0, 0,
0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 0, 0, 0, 0,
0, 0, 0, 0, 25, 26, 0, 27, 28, 29,
30, 8, 9, 10, 0, 31, 0, 0, 0, 0,
0, 0, 0, 0, 28, 29, 0, 30, 31, 32,
33, 8, 9, 10, 235, 34, 0, 0, 0, 236,
0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 0, 0, 0,
0, 0, 0, 0, 0, 25, 26, 0, 27, 28,
29, 30, 8, 9, 10, 229, 31, 0, 0, 0,
230, 0, 0, 0, 0, 0, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 0, 0,
0, 0, 0, 0, 0, 0, 25, 26, 0, 27,
28, 29, 30, 0, 0, 0, 0, 31
0, 0, 0, 0, 0, 28, 29, 0, 30, 31,
32, 33, 0, 0, 0, 0, 34
};
static const yytype_int16 yycheck[] =
{
0, 55, 94, 86, 70, 127, 54, 151, 0, 69,
40, 40, 85, 36, 0, 160, 273, 91, 82, 85,
257, 42, 3, 106, 88, 54, 70, 8, 9, 253,
51, 64, 65, 63, 57, 272, 293, 85, 96, 97,
40, 85, 42, 135, 104, 75, 46, 82, 92, 93,
82, 51, 82, 88, 46, 36, 37, 38, 39, 40,
46, 66, 67, 63, 288, 109, 99, 100, 292, 62,
63, 93, 194, 95, 3, 75, 76, 160, 170, 8,
9, 83, 82, 71, 72, 73, 159, 81, 90, 83,
83, 174, 80, 159, 87, 125, 90, 127, 82, 82,
192, 82, 90, 88, 88, 88, 91, 36, 37, 38,
39, 40, 204, 88, 258, 159, 183, 184, 185, 186,
88, 88, 54, 91, 91, 125, 88, 127, 83, 91,
4, 5, 6, 216, 217, 179, 180, 181, 182, 183,
184, 185, 186, 187, 188, 189, 190, 191, 221, 294,
85, 151, 36, 37, 38, 221, 81, 40, 83, 85,
88, 89, 181, 182, 194, 257, 54, 187, 188, 91,
81, 81, 54, 82, 68, 248, 84, 221, 70, 54,
272, 264, 248, 81, 91, 91, 81, 91, 81, 281,
86, 81, 83, 46, 194, 4, 5, 6, 252, 291,
85, 10, 11, 12, 248, 84, 83, 88, 84, 54,
210, 294, 84, 81, 84, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 84, 82, 81,
86, 91, 82, 16, 171, 44, 45, 189, 47, 48,
49, 50, 90, 190, 91, 191, 55, 82, 64, 57,
82, 5, 125, 253, 254, 254, 292, 257, 258, 249,
210, 272, 46, 254, -1, -1, -1, -1, -1, -1,
-1, -1, 272, -1, -1, -1, -1, 86, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 288, -1,
-1, -1, 292, 3, 4, 5, 6, 7, 8, 9,
0, 100, 76, 166, 92, 61, 91, 157, 76, 133,
0, 0, 279, 43, 69, 36, 37, 91, 71, 72,
73, 64, 65, 91, 112, 9, 259, 80, 54, 263,
98, 99, 46, 300, 40, 82, 9, 90, 83, 69,
91, 55, 141, 43, 278, 90, 46, 115, 54, 104,
50, 81, 36, 37, 38, 55, 99, 100, 88, 85,
50, 50, 295, 36, 37, 38, 299, 82, 88, 69,
81, 91, 83, 88, 96, 97, 200, 176, 166, 90,
165, 81, 82, 62, 63, 88, 89, 82, 88, 82,
82, 165, 180, 88, 88, 88, 88, 165, 82, 198,
54, 131, 88, 133, 83, 91, 88, 88, 87, 91,
91, 210, 83, 93, 264, 95, 85, 185, 186, 187,
188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
81, 131, 83, 133, 222, 223, 66, 67, 301, 4,
5, 6, 227, 189, 190, 191, 192, 36, 37, 38,
187, 188, 85, 227, 193, 194, 54, 157, 54, 227,
91, 81, 68, 82, 263, 81, 70, 84, 54, 254,
200, 81, 81, 91, 81, 86, 91, 91, 83, 278,
254, 84, 270, 83, 81, 84, 254, 88, 46, 288,
85, 84, 84, 81, 84, 40, 81, 54, 82, 298,
200, 82, 258, 10, 11, 12, 86, 16, 91, 91,
177, 90, 195, 301, 88, 63, 216, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 197,
196, 70, 88, 5, 299, 260, 255, 44, 45, 216,
47, 48, 49, 50, 131, 278, 50, 54, 55, 56,
57, 58, 59, 260, -1, 62, 63, -1, -1, 259,
260, -1, -1, 263, 264, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, 84, 278, -1,
-1, -1, -1, -1, -1, 92, 93, -1, 95, -1,
-1, -1, -1, -1, -1, 295, -1, -1, -1, 299,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
13, 14, 15, -1, 17, 18, 19, 20, -1, -1,
-1, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, -1, 39, 40, 41, -1,
-1, 44, 45, 46, 47, 48, 49, 50, -1, -1,
-1, 54, 55, 56, 57, 58, 59, -1, -1, 62,
63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, 85, 86, -1, -1, -1, -1, 91, 92,
93, -1, 95, 3, 4, 5, 6, 7, 8, 9,
10, 11, 12, 13, 14, 15, -1, 17, 18, 19,
20, -1, -1, -1, 24, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, -1, 39,
40, -1, -1, -1, 44, 45, 46, 47, 48, 49,
30, 31, 32, 33, 34, 35, 36, 37, -1, 39,
40, 41, -1, -1, 44, 45, 46, 47, 48, 49,
50, -1, -1, -1, 54, 55, 56, 57, 58, 59,
-1, -1, 62, 63, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
......@@ -1146,17 +1159,17 @@ static const yytype_int16 yycheck[] =
-1, 91, 92, 93, -1, 95, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14, 15, -1,
17, 18, 19, 20, -1, -1, -1, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, -1,
-1, -1, 39, 40, -1, -1, -1, 44, 45, 46,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, -1, 39, 40, 41, -1, -1, 44, 45, 46,
47, 48, 49, 50, -1, -1, -1, 54, 55, 56,
57, 58, 59, -1, -1, 62, 63, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, 85, 86,
-1, -1, -1, -1, 81, -1, -1, -1, 85, -1,
-1, -1, -1, -1, 91, 92, 93, -1, 95, 3,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15, -1, 17, 18, 19, 20, -1, -1, -1,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, -1, -1, -1, 39, 40, -1, -1, -1,
34, 35, 36, 37, -1, 39, 40, 41, -1, -1,
44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
54, 55, 56, 57, 58, 59, -1, -1, 62, 63,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
......@@ -1165,103 +1178,91 @@ static const yytype_int16 yycheck[] =
-1, 95, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, -1, 17, 18, 19, 20,
-1, -1, -1, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, -1, -1, -1, 39, 40,
-1, -1, -1, 44, 45, 46, 47, 48, 49, 50,
31, 32, 33, 34, 35, 36, 37, -1, 39, 40,
41, -1, -1, 44, 45, 46, 47, 48, 49, 50,
-1, -1, -1, 54, 55, 56, 57, 58, 59, -1,
-1, 62, 63, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, 85, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
91, 92, 93, -1, 95, 3, 4, 5, 6, 7,
8, 9, 10, 11, 12, 13, 14, 15, -1, 17,
18, 19, 20, -1, -1, -1, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, -1, -1,
-1, 39, 40, -1, -1, -1, 44, 45, 46, 47,
8, 9, 10, 11, 12, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
-1, 39, 40, 41, -1, -1, 44, 45, -1, 47,
48, 49, 50, -1, -1, -1, 54, 55, 56, 57,
58, 59, -1, -1, 62, 63, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 81, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 91, 92, 93, -1, 95, 3, 4,
5, 6, 7, 8, 9, 10, 11, 12, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, -1, -1, -1, 39, 40, -1, -1, -1, 44,
45, -1, 47, 48, 49, 50, -1, -1, -1, 54,
55, 56, 57, 58, 59, -1, -1, 62, 63, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3, 4, 5, 6, 81, 8, 9, 10,
11, 12, -1, -1, -1, -1, 91, 92, 93, -1,
95, -1, -1, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, -1, -1, -1, 39, 40,
-1, -1, -1, 44, 45, -1, 47, 48, 49, 50,
-1, -1, -1, 54, 55, 56, 57, 58, 59, -1,
-1, 62, 63, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, 10, 11, 12, -1, -1, -1, -1, -1, -1,
-1, 92, 93, -1, 95, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, -1, -1, -1,
-1, -1, -1, -1, -1, 44, 45, -1, 47, 48,
49, 50, -1, -1, -1, 54, 55, 56, 57, 58,
59, -1, -1, 62, 63, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, 84, 10, 11, 12, -1,
-1, -1, -1, 92, 93, -1, 95, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3,
4, 5, 6, 81, 8, 9, 10, 11, 12, -1,
-1, -1, -1, 91, 92, 93, -1, 95, -1, -1,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, -1, -1, -1, -1, -1, -1, -1, -1,
34, 35, 36, 37, -1, 39, 40, 41, -1, -1,
44, 45, -1, 47, 48, 49, 50, -1, -1, -1,
54, 55, 56, 57, 58, 59, -1, -1, 62, 63,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 81, 10, 11,
12, -1, -1, -1, -1, -1, -1, 91, 92, 93,
12, -1, -1, -1, -1, -1, -1, -1, 92, 93,
-1, 95, 24, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, -1, -1, -1, -1, -1, -1,
-1, -1, 44, 45, -1, 47, 48, 49, 50, -1,
-1, -1, 54, 55, 56, 57, 58, 59, -1, -1,
62, 63, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 81,
-1, -1, 84, 10, 11, 12, -1, -1, -1, -1,
92, 93, -1, 95, -1, -1, -1, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, -1,
-1, -1, -1, -1, -1, -1, -1, 44, 45, -1,
47, 48, 49, 50, -1, -1, -1, 54, 55, 56,
57, 58, 59, -1, -1, 62, 63, -1, -1, -1,
10, 11, 12, -1, -1, -1, -1, -1, -1, 91,
92, 93, -1, 95, 24, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, -1, -1,
-1, -1, -1, -1, 44, 45, -1, 47, 48, 49,
50, -1, -1, -1, 54, 55, 56, 57, 58, 59,
-1, -1, 62, 63, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, 10, 11, 12, -1, -1,
-1, -1, -1, -1, -1, 92, 93, -1, 95, 24,
-1, 81, -1, -1, 84, 10, 11, 12, -1, -1,
-1, -1, 92, 93, -1, 95, -1, -1, -1, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, -1, -1, -1, -1, -1, -1, -1, -1, 44,
45, -1, 47, 48, 49, 50, -1, -1, -1, 54,
55, 56, 57, 58, 59, -1, -1, 62, 63, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4, 5, 6, -1, -1, 81, 10, 11, 12,
-1, -1, -1, -1, -1, -1, 81, 10, 11, 12,
-1, -1, -1, -1, -1, -1, -1, 92, 93, -1,
95, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, -1, -1, -1, -1, -1, -1, -1,
-1, 44, 45, -1, 47, 48, 49, 50, -1, -1,
-1, -1, 55, -1, -1, -1, -1, -1, -1, -1,
0, -1, -1, 3, 4, 5, 6, 7, 8, 9,
10, 11, 12, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 86, 24, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, -1, 39,
40, -1, -1, -1, 44, 45, -1, 47, 48, 49,
50, -1, -1, -1, -1, 55, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, -1,
-1, -1, 39, 40, -1, -1, -1, 44, 45, -1,
47, 48, 49, 50, 4, 5, 6, -1, 55, -1,
10, 11, 12, -1, -1, -1, -1, -1, -1, -1,
-1, 54, 55, 56, 57, 58, 59, -1, -1, 62,
63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4, 5, 6, -1, -1, 81, 10,
11, 12, -1, -1, -1, -1, -1, -1, -1, 92,
93, -1, 95, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, -1, -1, -1, -1, -1,
-1, -1, -1, 44, 45, -1, 47, 48, 49, 50,
4, 5, 6, -1, 55, -1, 10, 11, 12, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, -1, -1, -1, 86, -1, -1, -1, -1,
44, 45, -1, 47, 48, 49, 50, -1, -1, -1,
-1, 55, -1, -1, -1, -1, -1, -1, -1, 0,
-1, -1, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 86, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, -1, 39, 40,
41, -1, -1, 44, 45, -1, 47, 48, 49, 50,
-1, -1, -1, -1, 55, 3, 4, 5, 6, 7,
8, 9, 10, 11, 12, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
-1, 39, 40, 41, -1, -1, 44, 45, -1, 47,
48, 49, 50, 4, 5, 6, -1, 55, -1, 10,
11, 12, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, -1, -1, -1, -1, -1,
-1, -1, -1, 44, 45, -1, 47, 48, 49, 50,
10, 11, 12, -1, 55, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 24, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, -1, -1,
-1, -1, -1, -1, 44, 45, -1, 47, 48, 49,
50, 10, 11, 12, -1, 55, -1, -1, -1, -1,
50, 10, 11, 12, 54, 55, -1, -1, -1, 59,
-1, -1, -1, -1, -1, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, -1, -1, -1,
-1, -1, -1, -1, -1, 44, 45, -1, 47, 48,
49, 50, 10, 11, 12, 54, 55, -1, -1, -1,
59, -1, -1, -1, -1, -1, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, -1, -1,
-1, -1, -1, -1, -1, -1, 44, 45, -1, 47,
48, 49, 50, -1, -1, -1, -1, 55
49, 50, -1, -1, -1, -1, 55
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
......@@ -1270,35 +1271,36 @@ static const yytype_uint8 yystos[] =
{
0, 3, 4, 5, 6, 7, 8, 9, 10, 11,
12, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 39, 40, 44, 45, 47, 48, 49,
50, 55, 135, 136, 137, 138, 139, 144, 145, 146,
147, 148, 149, 150, 151, 152, 184, 185, 186, 40,
54, 149, 54, 85, 91, 187, 82, 88, 3, 36,
37, 38, 141, 142, 147, 88, 91, 54, 148, 150,
83, 0, 185, 150, 85, 154, 85, 170, 141, 140,
143, 148, 142, 54, 81, 83, 90, 54, 56, 57,
58, 59, 62, 63, 81, 92, 93, 95, 106, 107,
108, 110, 111, 112, 113, 114, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
129, 130, 134, 151, 91, 153, 148, 155, 156, 13,
14, 15, 17, 18, 19, 20, 46, 85, 86, 91,
117, 130, 131, 133, 135, 136, 151, 160, 161, 162,
163, 171, 172, 173, 176, 183, 54, 140, 143, 83,
90, 84, 134, 131, 159, 117, 117, 133, 62, 63,
83, 87, 82, 82, 88, 45, 131, 81, 117, 96,
97, 93, 95, 64, 65, 99, 100, 66, 67, 68,
70, 69, 104, 84, 155, 54, 157, 158, 86, 156,
91, 91, 178, 81, 81, 91, 91, 133, 81, 86,
164, 71, 72, 73, 80, 90, 132, 88, 91, 86,
161, 83, 84, 134, 159, 84, 82, 109, 133, 54,
59, 112, 131, 117, 117, 119, 119, 121, 121, 121,
121, 122, 122, 126, 127, 128, 133, 86, 83, 88,
91, 167, 168, 169, 179, 133, 91, 177, 171, 131,
131, 134, 84, 84, 89, 134, 158, 46, 170, 162,
160, 172, 180, 82, 133, 146, 175, 165, 84, 131,
84, 81, 175, 181, 182, 167, 174, 54, 82, 86,
133, 91, 82, 16, 90, 162, 166, 170, 82, 133,
166, 167, 159, 91
33, 34, 35, 36, 37, 39, 40, 41, 44, 45,
47, 48, 49, 50, 55, 135, 136, 137, 138, 139,
144, 145, 146, 148, 149, 150, 151, 152, 153, 154,
186, 187, 188, 40, 54, 151, 36, 37, 54, 85,
91, 189, 82, 88, 9, 36, 37, 38, 141, 142,
147, 88, 91, 54, 150, 152, 83, 0, 187, 152,
85, 156, 85, 172, 141, 140, 143, 150, 142, 54,
81, 83, 90, 54, 56, 57, 58, 59, 62, 63,
81, 92, 93, 95, 106, 107, 108, 110, 111, 112,
113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 134, 153,
91, 155, 150, 157, 158, 13, 14, 15, 17, 18,
19, 20, 46, 85, 86, 91, 117, 130, 131, 133,
135, 136, 153, 162, 163, 164, 165, 173, 174, 175,
178, 185, 54, 140, 143, 83, 90, 84, 134, 131,
161, 117, 117, 133, 62, 63, 83, 87, 82, 82,
88, 45, 131, 81, 117, 96, 97, 93, 95, 64,
65, 99, 100, 66, 67, 68, 70, 69, 104, 84,
157, 54, 159, 160, 86, 158, 91, 91, 180, 81,
81, 91, 91, 133, 81, 86, 166, 71, 72, 73,
80, 90, 132, 88, 91, 86, 163, 83, 84, 134,
161, 84, 82, 109, 133, 54, 59, 112, 131, 117,
117, 119, 119, 121, 121, 121, 121, 122, 122, 126,
127, 128, 133, 86, 83, 88, 91, 169, 170, 171,
181, 133, 91, 179, 173, 131, 131, 134, 84, 84,
89, 134, 160, 46, 172, 164, 162, 174, 182, 82,
3, 133, 146, 177, 167, 84, 131, 84, 81, 177,
183, 184, 169, 176, 54, 82, 86, 133, 91, 82,
16, 90, 164, 168, 172, 82, 133, 168, 169, 161,
91
};
#define yyerrok (yyerrstatus = 0)
......@@ -3305,7 +3307,7 @@ yyreduce:
{
(yyval.interm) = (yyvsp[(3) - (3)].interm);
if (context->paramErrorCheck((yyvsp[(3) - (3)].interm).line, (yyvsp[(1) - (3)].interm.type).qualifier, (yyvsp[(2) - (3)].interm.qualifier), (yyval.interm).param.type))
if (context->paramErrorCheck((yyvsp[(3) - (3)].interm).line, (yyvsp[(1) - (3)].interm.qualifier), (yyvsp[(2) - (3)].interm.qualifier), (yyval.interm).param.type))
context->recover();
}
break;
......@@ -3325,7 +3327,7 @@ yyreduce:
{
(yyval.interm) = (yyvsp[(3) - (3)].interm);
if (context->paramErrorCheck((yyvsp[(3) - (3)].interm).line, (yyvsp[(1) - (3)].interm.type).qualifier, (yyvsp[(2) - (3)].interm.qualifier), (yyval.interm).param.type))
if (context->paramErrorCheck((yyvsp[(3) - (3)].interm).line, (yyvsp[(1) - (3)].interm.qualifier), (yyvsp[(2) - (3)].interm.qualifier), (yyval.interm).param.type))
context->recover();
}
break;
......@@ -3648,7 +3650,7 @@ yyreduce:
case 104:
{
(yyval.interm.type).setBasic(EbtVoid, EvqConst, (yyvsp[(1) - (1)].lex).line);
(yyval.interm.qualifier) = EvqConst;
}
break;
......@@ -3692,13 +3694,67 @@ yyreduce:
case 108:
{
(yyval.interm.type).setBasic(EbtVoid, (yyvsp[(1) - (1)].interm.type).qualifier, (yyvsp[(1) - (1)].interm.type).line);
}
break;
case 109:
{
(yyval.interm.type).qualifier = EvqConst;
(yyval.interm.type).line = (yyvsp[(1) - (1)].lex).line;
}
break;
case 110:
{
ES3_ONLY("in", (yyvsp[(1) - (1)].lex).line);
(yyval.interm.type).qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqVaryingIn : EvqAttribute;
(yyval.interm.type).line = (yyvsp[(1) - (1)].lex).line;
}
break;
case 111:
{
ES3_ONLY("out", (yyvsp[(1) - (1)].lex).line);
(yyval.interm.type).qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqFragColor : EvqVaryingOut;
(yyval.interm.type).line = (yyvsp[(1) - (1)].lex).line;
}
break;
case 112:
{
ES3_ONLY("in", (yyvsp[(1) - (2)].lex).line);
// FIXME: Handle centroid qualifier
(yyval.interm.type).qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqVaryingIn : EvqAttribute;
(yyval.interm.type).line = (yyvsp[(2) - (2)].lex).line;
}
break;
case 113:
{
ES3_ONLY("out", (yyvsp[(1) - (2)].lex).line);
// FIXME: Handle centroid qualifier
(yyval.interm.type).qualifier = (context->shaderType == SH_FRAGMENT_SHADER) ? EvqFragColor : EvqVaryingOut;
(yyval.interm.type).line = (yyvsp[(2) - (2)].lex).line;
}
break;
case 114:
{
if (context->globalErrorCheck((yyvsp[(1) - (1)].lex).line, context->symbolTable.atGlobalLevel(), "uniform"))
context->recover();
(yyval.interm.type).setBasic(EbtVoid, EvqUniform, (yyvsp[(1) - (1)].lex).line);
(yyval.interm.type).qualifier = EvqUniform;
(yyval.interm.type).line = (yyvsp[(1) - (1)].lex).line;
}
break;
case 109:
case 115:
{
(yyval.interm.type) = (yyvsp[(1) - (1)].interm.type);
......@@ -3712,7 +3768,7 @@ yyreduce:
}
break;
case 110:
case 116:
{
(yyval.interm.type) = (yyvsp[(2) - (2)].interm.type);
......@@ -3720,35 +3776,35 @@ yyreduce:
}
break;
case 111:
case 117:
{
(yyval.interm.precision) = EbpHigh;
}
break;
case 112:
case 118:
{
(yyval.interm.precision) = EbpMedium;
}
break;
case 113:
case 119:
{
(yyval.interm.precision) = EbpLow;
}
break;
case 114:
case 120:
{
(yyval.interm.type) = (yyvsp[(1) - (1)].interm.type);
}
break;
case 115:
case 121:
{
(yyval.interm.type) = (yyvsp[(1) - (4)].interm.type);
......@@ -3764,7 +3820,7 @@ yyreduce:
}
break;
case 116:
case 122:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3772,7 +3828,7 @@ yyreduce:
}
break;
case 117:
case 123:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3780,7 +3836,7 @@ yyreduce:
}
break;
case 118:
case 124:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3788,7 +3844,7 @@ yyreduce:
}
break;
case 119:
case 125:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3796,7 +3852,7 @@ yyreduce:
}
break;
case 120:
case 126:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3805,7 +3861,7 @@ yyreduce:
}
break;
case 121:
case 127:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3814,7 +3870,7 @@ yyreduce:
}
break;
case 122:
case 128:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3823,7 +3879,7 @@ yyreduce:
}
break;
case 123:
case 129:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3832,7 +3888,7 @@ yyreduce:
}
break;
case 124:
case 130:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3841,7 +3897,7 @@ yyreduce:
}
break;
case 125:
case 131:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3850,7 +3906,7 @@ yyreduce:
}
break;
case 126:
case 132:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3859,7 +3915,7 @@ yyreduce:
}
break;
case 127:
case 133:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3868,7 +3924,7 @@ yyreduce:
}
break;
case 128:
case 134:
{
TQualifier qual = context->symbolTable.atGlobalLevel() ? EvqGlobal : EvqTemporary;
......@@ -3877,7 +3933,7 @@ yyreduce:
}
break;
case 129:
case 135:
{
FRAG_VERT_ONLY("mat2", (yyvsp[(1) - (1)].lex).line);
......@@ -3887,7 +3943,7 @@ yyreduce:
}
break;
case 130:
case 136:
{
FRAG_VERT_ONLY("mat3", (yyvsp[(1) - (1)].lex).line);
......@@ -3897,7 +3953,7 @@ yyreduce:
}
break;
case 131:
case 137:
{
FRAG_VERT_ONLY("mat4", (yyvsp[(1) - (1)].lex).line);
......@@ -3907,7 +3963,7 @@ yyreduce:
}
break;
case 132:
case 138:
{
FRAG_VERT_ONLY("sampler2D", (yyvsp[(1) - (1)].lex).line);
......@@ -3916,7 +3972,7 @@ yyreduce:
}
break;
case 133:
case 139:
{
FRAG_VERT_ONLY("samplerCube", (yyvsp[(1) - (1)].lex).line);
......@@ -3925,7 +3981,7 @@ yyreduce:
}
break;
case 134:
case 140:
{
if (!context->supportsExtension("GL_OES_EGL_image_external")) {
......@@ -3938,7 +3994,7 @@ yyreduce:
}
break;
case 135:
case 141:
{
if (!context->supportsExtension("GL_ARB_texture_rectangle")) {
......@@ -3951,7 +4007,7 @@ yyreduce:
}
break;
case 136:
case 142:
{
FRAG_VERT_ONLY("struct", (yyvsp[(1) - (1)].interm.type).line);
......@@ -3960,7 +4016,7 @@ yyreduce:
}
break;
case 137:
case 143:
{
//
......@@ -3974,12 +4030,12 @@ yyreduce:
}
break;
case 138:
case 144:
{ if (context->enterStructDeclaration((yyvsp[(2) - (3)].lex).line, *(yyvsp[(2) - (3)].lex).string)) context->recover(); }
break;
case 139:
case 145:
{
if (context->reservedErrorCheck((yyvsp[(2) - (6)].lex).line, *(yyvsp[(2) - (6)].lex).string))
......@@ -3997,12 +4053,12 @@ yyreduce:
}
break;
case 140:
case 146:
{ if (context->enterStructDeclaration((yyvsp[(2) - (2)].lex).line, *(yyvsp[(2) - (2)].lex).string)) context->recover(); }
break;
case 141:
case 147:
{
TType* structure = new TType((yyvsp[(4) - (5)].interm.typeList), TString(""));
......@@ -4012,14 +4068,14 @@ yyreduce:
}
break;
case 142:
case 148:
{
(yyval.interm.typeList) = (yyvsp[(1) - (1)].interm.typeList);
}
break;
case 143:
case 149:
{
(yyval.interm.typeList) = (yyvsp[(1) - (2)].interm.typeList);
......@@ -4035,7 +4091,7 @@ yyreduce:
}
break;
case 144:
case 150:
{
(yyval.interm.typeList) = (yyvsp[(2) - (3)].interm.typeList);
......@@ -4072,7 +4128,7 @@ yyreduce:
}
break;
case 145:
case 151:
{
(yyval.interm.typeList) = NewPoolTTypeList();
......@@ -4080,14 +4136,14 @@ yyreduce:
}
break;
case 146:
case 152:
{
(yyval.interm.typeList)->push_back((yyvsp[(3) - (3)].interm.typeLine));
}
break;
case 147:
case 153:
{
if (context->reservedErrorCheck((yyvsp[(1) - (1)].lex).line, *(yyvsp[(1) - (1)].lex).string))
......@@ -4099,7 +4155,7 @@ yyreduce:
}
break;
case 148:
case 154:
{
if (context->reservedErrorCheck((yyvsp[(1) - (4)].lex).line, *(yyvsp[(1) - (4)].lex).string))
......@@ -4116,67 +4172,67 @@ yyreduce:
}
break;
case 149:
case 155:
{ (yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode); }
break;
case 150:
case 156:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 151:
case 157:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermAggregate); }
break;
case 152:
case 158:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 153:
case 159:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 154:
case 160:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 155:
case 161:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 156:
case 162:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 157:
case 163:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 158:
case 164:
{ (yyval.interm.intermAggregate) = 0; }
break;
case 159:
case 165:
{ context->symbolTable.push(); }
break;
case 160:
case 166:
{ context->symbolTable.pop(); }
break;
case 161:
case 167:
{
if ((yyvsp[(3) - (5)].interm.intermAggregate) != 0) {
......@@ -4187,44 +4243,44 @@ yyreduce:
}
break;
case 162:
case 168:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 163:
case 169:
{ (yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode); }
break;
case 164:
case 170:
{ context->symbolTable.push(); }
break;
case 165:
case 171:
{ context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
break;
case 166:
case 172:
{ context->symbolTable.push(); }
break;
case 167:
case 173:
{ context->symbolTable.pop(); (yyval.interm.intermNode) = (yyvsp[(2) - (2)].interm.intermNode); }
break;
case 168:
case 174:
{
(yyval.interm.intermNode) = 0;
}
break;
case 169:
case 175:
{
if ((yyvsp[(2) - (3)].interm.intermAggregate)) {
......@@ -4235,31 +4291,31 @@ yyreduce:
}
break;
case 170:
case 176:
{
(yyval.interm.intermAggregate) = context->intermediate.makeAggregate((yyvsp[(1) - (1)].interm.intermNode), 0);
}
break;
case 171:
case 177:
{
(yyval.interm.intermAggregate) = context->intermediate.growAggregate((yyvsp[(1) - (2)].interm.intermAggregate), (yyvsp[(2) - (2)].interm.intermNode), 0);
}
break;
case 172:
case 178:
{ (yyval.interm.intermNode) = 0; }
break;
case 173:
case 179:
{ (yyval.interm.intermNode) = static_cast<TIntermNode*>((yyvsp[(1) - (2)].interm.intermTypedNode)); }
break;
case 174:
case 180:
{
if (context->boolErrorCheck((yyvsp[(1) - (5)].lex).line, (yyvsp[(3) - (5)].interm.intermTypedNode)))
......@@ -4268,7 +4324,7 @@ yyreduce:
}
break;
case 175:
case 181:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (3)].interm.intermNode);
......@@ -4276,7 +4332,7 @@ yyreduce:
}
break;
case 176:
case 182:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (1)].interm.intermNode);
......@@ -4284,7 +4340,7 @@ yyreduce:
}
break;
case 177:
case 183:
{
(yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
......@@ -4293,7 +4349,7 @@ yyreduce:
}
break;
case 178:
case 184:
{
TIntermNode* intermNode;
......@@ -4311,12 +4367,12 @@ yyreduce:
}
break;
case 179:
case 185:
{ context->symbolTable.push(); ++context->loopNestingLevel; }
break;
case 180:
case 186:
{
context->symbolTable.pop();
......@@ -4325,12 +4381,12 @@ yyreduce:
}
break;
case 181:
case 187:
{ ++context->loopNestingLevel; }
break;
case 182:
case 188:
{
if (context->boolErrorCheck((yyvsp[(8) - (8)].lex).line, (yyvsp[(6) - (8)].interm.intermTypedNode)))
......@@ -4341,12 +4397,12 @@ yyreduce:
}
break;
case 183:
case 189:
{ context->symbolTable.push(); ++context->loopNestingLevel; }
break;
case 184:
case 190:
{
context->symbolTable.pop();
......@@ -4355,35 +4411,35 @@ yyreduce:
}
break;
case 185:
case 191:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 186:
case 192:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 187:
case 193:
{
(yyval.interm.intermTypedNode) = (yyvsp[(1) - (1)].interm.intermTypedNode);
}
break;
case 188:
case 194:
{
(yyval.interm.intermTypedNode) = 0;
}
break;
case 189:
case 195:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (2)].interm.intermTypedNode);
......@@ -4391,7 +4447,7 @@ yyreduce:
}
break;
case 190:
case 196:
{
(yyval.interm.nodePair).node1 = (yyvsp[(1) - (3)].interm.intermTypedNode);
......@@ -4399,7 +4455,7 @@ yyreduce:
}
break;
case 191:
case 197:
{
if (context->loopNestingLevel <= 0) {
......@@ -4410,7 +4466,7 @@ yyreduce:
}
break;
case 192:
case 198:
{
if (context->loopNestingLevel <= 0) {
......@@ -4421,7 +4477,7 @@ yyreduce:
}
break;
case 193:
case 199:
{
(yyval.interm.intermNode) = context->intermediate.addBranch(EOpReturn, (yyvsp[(1) - (2)].lex).line);
......@@ -4432,7 +4488,7 @@ yyreduce:
}
break;
case 194:
case 200:
{
(yyval.interm.intermNode) = context->intermediate.addBranch(EOpReturn, (yyvsp[(2) - (3)].interm.intermTypedNode), (yyvsp[(1) - (3)].lex).line);
......@@ -4447,7 +4503,7 @@ yyreduce:
}
break;
case 195:
case 201:
{
FRAG_ONLY("discard", (yyvsp[(1) - (2)].lex).line);
......@@ -4455,7 +4511,7 @@ yyreduce:
}
break;
case 196:
case 202:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
......@@ -4463,7 +4519,7 @@ yyreduce:
}
break;
case 197:
case 203:
{
(yyval.interm.intermNode) = context->intermediate.growAggregate((yyvsp[(1) - (2)].interm.intermNode), (yyvsp[(2) - (2)].interm.intermNode), 0);
......@@ -4471,21 +4527,21 @@ yyreduce:
}
break;
case 198:
case 204:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 199:
case 205:
{
(yyval.interm.intermNode) = (yyvsp[(1) - (1)].interm.intermNode);
}
break;
case 200:
case 206:
{
TFunction* function = (yyvsp[(1) - (1)].interm).function;
......@@ -4574,7 +4630,7 @@ yyreduce:
}
break;
case 201:
case 207:
{
//?? Check that all paths return a value if return type != void ?
......
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