Commit be6eaf9a authored by osku's avatar osku

SQL parser: Modify syntax so that the only valid top-level statement is a

procedure definition, since it's the only the one that actually works.
parent e41eec23
...@@ -397,14 +397,14 @@ union yyalloc ...@@ -397,14 +397,14 @@ union yyalloc
#endif #endif
/* YYFINAL -- State number of the termination state. */ /* YYFINAL -- State number of the termination state. */
#define YYFINAL 99 #define YYFINAL 5
/* YYLAST -- Last index in YYTABLE. */ /* YYLAST -- Last index in YYTABLE. */
#define YYLAST 706 #define YYLAST 752
/* YYNTOKENS -- Number of terminals. */ /* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 111 #define YYNTOKENS 111
/* YYNNTS -- Number of nonterminals. */ /* YYNNTS -- Number of nonterminals. */
#define YYNNTS 69 #define YYNNTS 70
/* YYNRULES -- Number of rules. */ /* YYNRULES -- Number of rules. */
#define YYNRULES 175 #define YYNRULES 175
/* YYNRULES -- Number of states. */ /* YYNRULES -- Number of states. */
...@@ -486,85 +486,85 @@ static const unsigned short int yyprhs[] = ...@@ -486,85 +486,85 @@ static const unsigned short int yyprhs[] =
/* YYRHS -- A `-1'-separated list of the rules' RHS. */ /* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const short int yyrhs[] = static const short int yyrhs[] =
{ {
112, 0, -1, 179, 104, -1, 117, -1, 118, 104, 112, 0, -1, 180, 104, -1, 118, -1, 119, 104,
-1, 150, 104, -1, 151, 104, -1, 152, 104, -1, -1, 151, 104, -1, 152, 104, -1, 153, 104, -1,
149, 104, -1, 153, 104, -1, 145, 104, -1, 132, 150, 104, -1, 154, 104, -1, 146, 104, -1, 133,
104, -1, 134, 104, -1, 144, 104, -1, 142, 104, 104, -1, 135, 104, -1, 145, 104, -1, 143, 104,
-1, 143, 104, -1, 139, 104, -1, 140, 104, -1, -1, 144, 104, -1, 140, 104, -1, 141, 104, -1,
154, 104, -1, 156, 104, -1, 155, 104, -1, 168, 155, 104, -1, 157, 104, -1, 156, 104, -1, 169,
104, -1, 169, 104, -1, 163, 104, -1, 167, 104, 104, -1, 170, 104, -1, 164, 104, -1, 168, 104,
-1, 112, -1, 113, 112, -1, 9, -1, 115, 105, -1, 113, -1, 114, 113, -1, 9, -1, 116, 105,
123, 106, -1, 3, -1, 4, -1, 5, -1, 6, 124, 106, -1, 3, -1, 4, -1, 5, -1, 6,
-1, 7, -1, 8, -1, 66, -1, 114, 99, 114, -1, 7, -1, 8, -1, 66, -1, 115, 99, 115,
-1, 114, 98, 114, -1, 114, 100, 114, -1, 114, -1, 115, 98, 115, -1, 115, 100, 115, -1, 115,
101, 114, -1, 98, 114, -1, 105, 114, 106, -1, 101, 115, -1, 98, 115, -1, 105, 115, 106, -1,
114, 95, 114, -1, 114, 96, 114, -1, 114, 97, 115, 95, 115, -1, 115, 96, 115, -1, 115, 97,
114, -1, 114, 13, 114, -1, 114, 14, 114, -1, 115, -1, 115, 13, 115, -1, 115, 14, 115, -1,
114, 15, 114, -1, 114, 10, 114, -1, 114, 11, 115, 15, 115, -1, 115, 10, 115, -1, 115, 11,
114, -1, 12, 114, -1, 9, 103, 70, -1, 66, 115, -1, 12, 115, -1, 9, 103, 70, -1, 66,
103, 70, -1, 71, -1, 72, -1, 73, -1, 74, 103, 70, -1, 71, -1, 72, -1, 73, -1, 74,
-1, 75, -1, 77, -1, 78, -1, 79, -1, 80, -1, 75, -1, 77, -1, 78, -1, 79, -1, 80,
-1, 83, -1, 84, -1, -1, 107, -1, 116, 108, -1, 83, -1, 84, -1, -1, 107, -1, 117, 108,
107, -1, 109, 9, 105, 116, 106, 110, -1, 119, 107, -1, 109, 9, 105, 117, 106, 110, -1, 120,
105, 123, 106, -1, 76, -1, 81, -1, 82, -1, 105, 124, 106, -1, 76, -1, 81, -1, 82, -1,
9, 105, 106, -1, 9, -1, 121, 108, 9, -1, 9, 105, 106, -1, 9, -1, 122, 108, 9, -1,
-1, 9, -1, 122, 108, 9, -1, -1, 114, -1, -1, 9, -1, 123, 108, 9, -1, -1, 115, -1,
123, 108, 114, -1, 114, -1, 37, 105, 100, 106, 124, 108, 115, -1, 115, -1, 37, 105, 100, 106,
-1, 37, 105, 38, 9, 106, -1, 36, 105, 114, -1, 37, 105, 38, 9, 106, -1, 36, 105, 115,
106, -1, -1, 124, -1, 125, 108, 124, -1, 100, 106, -1, -1, 125, -1, 126, 108, 125, -1, 100,
-1, 125, 49, 122, -1, 125, -1, -1, 40, 114, -1, 126, 49, 123, -1, 126, -1, -1, 40, 115,
-1, -1, 41, 51, -1, -1, 92, 17, 93, 94, -1, -1, 41, 51, -1, -1, 92, 17, 93, 94,
-1, -1, 46, -1, 47, -1, -1, 44, 45, 9, -1, -1, 46, -1, 47, -1, -1, 44, 45, 9,
130, -1, 35, 126, 39, 121, 127, 128, 129, 131, 131, -1, 35, 127, 39, 122, 128, 129, 130, 132,
-1, 48, 49, 9, -1, 133, 50, 105, 123, 106, -1, 48, 49, 9, -1, 134, 50, 105, 124, 106,
-1, 133, 132, -1, 9, 95, 114, -1, 135, -1, -1, 134, 133, -1, 9, 95, 115, -1, 136, -1,
136, 108, 135, -1, 40, 54, 55, 9, -1, 51, 137, 108, 136, -1, 40, 54, 55, 9, -1, 51,
9, 52, 136, -1, 138, 127, -1, 138, 137, -1, 9, 52, 137, -1, 139, 128, -1, 139, 138, -1,
53, 39, 9, -1, 141, 127, -1, 141, 137, -1, 53, 39, 9, -1, 142, 128, -1, 142, 138, -1,
85, 132, -1, 9, 63, 114, -1, 31, 114, 29, 85, 133, -1, 9, 63, 115, -1, 31, 115, 29,
113, -1, 146, -1, 147, 146, -1, -1, 30, 113, 114, -1, 147, -1, 148, 147, -1, -1, 30, 114,
-1, 147, -1, 28, 114, 29, 113, 148, 27, 28, -1, 148, -1, 28, 115, 29, 114, 149, 27, 28,
-1, 33, 114, 32, 113, 27, 32, -1, 41, 9, -1, 33, 115, 32, 114, 27, 32, -1, 41, 9,
17, 114, 42, 114, 32, 113, 27, 32, -1, 90, 17, 115, 42, 115, 32, 114, 27, 32, -1, 90,
-1, 34, -1, 67, 9, -1, 69, 9, -1, 68, -1, 34, -1, 67, 9, -1, 69, 9, -1, 68,
9, 49, 122, -1, 68, 9, 49, 120, -1, 9, 9, 49, 123, -1, 68, 9, 49, 121, -1, 9,
170, 159, 160, 161, -1, 157, -1, 158, 108, 157, 171, 160, 161, 162, -1, 158, -1, 159, 108, 158,
-1, -1, 105, 3, 106, -1, -1, 89, -1, -1, -1, -1, 105, 3, 106, -1, -1, 89, -1, -1,
12, 8, -1, -1, 61, -1, 56, 57, 9, 105, 12, 8, -1, -1, 61, -1, 56, 57, 9, 105,
158, 106, 162, -1, 9, -1, 164, 108, 9, -1, 159, 106, 163, -1, 9, -1, 165, 108, 9, -1,
-1, 59, -1, -1, 60, -1, 56, 165, 166, 58, -1, 59, -1, -1, 60, -1, 56, 166, 167, 58,
9, 62, 9, 105, 164, 106, -1, 86, 88, -1, 9, 62, 9, 105, 165, 106, -1, 86, 88, -1,
87, 88, -1, 21, -1, 22, -1, 24, -1, 19, 87, 88, -1, 21, -1, 22, -1, 24, -1, 19,
-1, 20, -1, 9, 17, 170, -1, 9, 18, 170, -1, 20, -1, 9, 17, 171, -1, 9, 18, 171,
-1, -1, 171, -1, 172, 108, 171, -1, 9, 170, -1, -1, 172, -1, 173, 108, 172, -1, 9, 171,
104, -1, -1, 173, -1, 174, 173, -1, 64, 65, 104, -1, -1, 174, -1, 175, 174, -1, 64, 65,
9, 25, 132, 104, -1, 64, 91, 9, 104, -1, 9, 25, 133, 104, -1, 64, 91, 9, 104, -1,
175, -1, 176, -1, -1, 177, -1, 178, 177, -1, 176, -1, 177, -1, -1, 178, -1, 179, 178, -1,
16, 9, 105, 172, 106, 25, 174, 178, 26, 113, 16, 9, 105, 173, 106, 25, 175, 179, 26, 114,
27, -1 27, -1
}; };
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const unsigned short int yyrline[] = static const unsigned short int yyrline[] =
{ {
0, 138, 138, 139, 140, 141, 142, 143, 144, 145, 0, 138, 138, 141, 142, 143, 144, 145, 146, 147,
146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
156, 157, 158, 159, 160, 164, 165, 170, 171, 173, 158, 159, 160, 161, 162, 166, 167, 172, 173, 175,
174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
194, 195, 197, 202, 203, 204, 205, 207, 208, 209, 196, 197, 199, 204, 205, 206, 207, 209, 210, 211,
210, 211, 212, 213, 216, 218, 219, 223, 228, 233, 212, 213, 214, 215, 218, 220, 221, 225, 230, 235,
234, 235, 239, 243, 244, 249, 250, 251, 256, 257, 236, 237, 241, 245, 246, 251, 252, 253, 258, 259,
258, 262, 263, 268, 274, 281, 282, 283, 288, 290, 260, 264, 265, 270, 276, 283, 284, 285, 290, 292,
292, 296, 297, 301, 302, 307, 308, 313, 314, 315, 294, 298, 299, 303, 304, 309, 310, 315, 316, 317,
319, 320, 325, 335, 340, 342, 347, 351, 352, 357, 321, 322, 327, 337, 342, 344, 349, 353, 354, 359,
363, 370, 375, 380, 386, 391, 396, 401, 406, 412, 365, 372, 377, 382, 388, 393, 398, 403, 408, 414,
413, 418, 419, 421, 425, 432, 438, 446, 450, 454, 415, 420, 421, 423, 427, 434, 440, 448, 452, 456,
460, 466, 468, 473, 478, 479, 484, 485, 490, 491, 462, 468, 470, 475, 480, 481, 486, 487, 492, 493,
497, 498, 504, 505, 511, 517, 518, 523, 524, 528, 499, 500, 506, 507, 513, 519, 520, 525, 526, 530,
529, 533, 541, 546, 551, 552, 553, 554, 555, 559, 531, 535, 543, 548, 553, 554, 555, 556, 557, 561,
562, 568, 569, 570, 575, 579, 581, 582, 586, 592, 564, 570, 571, 572, 577, 581, 583, 584, 588, 594,
597, 598, 601, 603, 604, 608 599, 600, 603, 605, 606, 610
}; };
#endif #endif
...@@ -604,29 +604,30 @@ static const char *const yytname[] = ...@@ -604,29 +604,30 @@ static const char *const yytname[] =
"PARS_UNSIGNED_TOKEN", "PARS_EXIT_TOKEN", "PARS_FUNCTION_TOKEN", "PARS_UNSIGNED_TOKEN", "PARS_EXIT_TOKEN", "PARS_FUNCTION_TOKEN",
"PARS_LOCK_TOKEN", "PARS_SHARE_TOKEN", "PARS_MODE_TOKEN", "'='", "'<'", "PARS_LOCK_TOKEN", "PARS_SHARE_TOKEN", "PARS_MODE_TOKEN", "'='", "'<'",
"'>'", "'-'", "'+'", "'*'", "'/'", "NEG", "'%'", "';'", "'('", "')'", "'>'", "'-'", "'+'", "'*'", "'/'", "NEG", "'%'", "';'", "'('", "')'",
"'?'", "','", "'{'", "'}'", "$accept", "statement", "statement_list", "'?'", "','", "'{'", "'}'", "$accept", "top_statement", "statement",
"exp", "function_name", "question_mark_list", "stored_procedure_call", "statement_list", "exp", "function_name", "question_mark_list",
"predefined_procedure_call", "predefined_procedure_name", "stored_procedure_call", "predefined_procedure_call",
"user_function_call", "table_list", "variable_list", "exp_list", "predefined_procedure_name", "user_function_call", "table_list",
"select_item", "select_item_list", "select_list", "search_condition", "variable_list", "exp_list", "select_item", "select_item_list",
"for_update_clause", "lock_shared_clause", "order_direction", "select_list", "search_condition", "for_update_clause",
"order_by_clause", "select_statement", "insert_statement_start", "lock_shared_clause", "order_direction", "order_by_clause",
"insert_statement", "column_assignment", "column_assignment_list", "select_statement", "insert_statement_start", "insert_statement",
"cursor_positioned", "update_statement_start", "column_assignment", "column_assignment_list", "cursor_positioned",
"update_statement_searched", "update_statement_positioned", "update_statement_start", "update_statement_searched",
"delete_statement_start", "delete_statement_searched", "update_statement_positioned", "delete_statement_start",
"delete_statement_positioned", "row_printf_statement", "delete_statement_searched", "delete_statement_positioned",
"assignment_statement", "elsif_element", "elsif_list", "else_part", "row_printf_statement", "assignment_statement", "elsif_element",
"if_statement", "while_statement", "for_statement", "exit_statement", "elsif_list", "else_part", "if_statement", "while_statement",
"return_statement", "open_cursor_statement", "close_cursor_statement", "for_statement", "exit_statement", "return_statement",
"fetch_statement", "column_def", "column_def_list", "opt_column_len", "open_cursor_statement", "close_cursor_statement", "fetch_statement",
"opt_unsigned", "opt_not_null", "not_fit_in_memory", "create_table", "column_def", "column_def_list", "opt_column_len", "opt_unsigned",
"column_list", "unique_def", "clustered_def", "create_index", "opt_not_null", "not_fit_in_memory", "create_table", "column_list",
"commit_statement", "rollback_statement", "type_name", "unique_def", "clustered_def", "create_index", "commit_statement",
"parameter_declaration", "parameter_declaration_list", "rollback_statement", "type_name", "parameter_declaration",
"variable_declaration", "variable_declaration_list", "parameter_declaration_list", "variable_declaration",
"cursor_declaration", "function_declaration", "declaration", "variable_declaration_list", "cursor_declaration",
"declaration_list", "procedure_definition", 0 "function_declaration", "declaration", "declaration_list",
"procedure_definition", 0
}; };
#endif #endif
...@@ -653,24 +654,24 @@ static const unsigned short int yytoknum[] = ...@@ -653,24 +654,24 @@ static const unsigned short int yytoknum[] =
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const unsigned char yyr1[] = static const unsigned char yyr1[] =
{ {
0, 111, 112, 112, 112, 112, 112, 112, 112, 112, 0, 111, 112, 113, 113, 113, 113, 113, 113, 113,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113,
112, 112, 112, 112, 112, 113, 113, 114, 114, 114, 113, 113, 113, 113, 113, 114, 114, 115, 115, 115,
114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
114, 114, 114, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 116, 116, 116, 116, 116, 116, 116,
115, 115, 115, 115, 116, 116, 116, 117, 118, 119, 116, 116, 116, 116, 117, 117, 117, 118, 119, 120,
119, 119, 120, 121, 121, 122, 122, 122, 123, 123, 120, 120, 121, 122, 122, 123, 123, 123, 124, 124,
123, 124, 124, 124, 124, 125, 125, 125, 126, 126, 124, 125, 125, 125, 125, 126, 126, 126, 127, 127,
126, 127, 127, 128, 128, 129, 129, 130, 130, 130, 127, 128, 128, 129, 129, 130, 130, 131, 131, 131,
131, 131, 132, 133, 134, 134, 135, 136, 136, 137, 132, 132, 133, 134, 135, 135, 136, 137, 137, 138,
138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
147, 148, 148, 148, 149, 150, 151, 152, 153, 154, 148, 149, 149, 149, 150, 151, 152, 153, 154, 155,
155, 156, 156, 157, 158, 158, 159, 159, 160, 160, 156, 157, 157, 158, 159, 159, 160, 160, 161, 161,
161, 161, 162, 162, 163, 164, 164, 165, 165, 166, 162, 162, 163, 163, 164, 165, 165, 166, 166, 167,
166, 167, 168, 169, 170, 170, 170, 170, 170, 171, 167, 168, 169, 170, 171, 171, 171, 171, 171, 172,
171, 172, 172, 172, 173, 174, 174, 174, 175, 176, 172, 173, 173, 173, 174, 175, 175, 175, 176, 177,
177, 177, 178, 178, 178, 179 178, 178, 179, 179, 179, 180
}; };
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
...@@ -701,105 +702,105 @@ static const unsigned char yyr2[] = ...@@ -701,105 +702,105 @@ static const unsigned char yyr2[] =
means the default is an error. */ means the default is an error. */
static const unsigned char yydefact[] = static const unsigned char yydefact[] =
{ {
0, 0, 0, 0, 0, 128, 85, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 161, 0, 162,
0, 147, 0, 0, 0, 69, 70, 71, 0, 0, 0, 0, 0, 0, 0, 157, 158, 154, 155, 156,
0, 127, 0, 0, 3, 0, 0, 0, 0, 0, 159, 160, 165, 163, 0, 166, 172, 0, 0, 167,
170, 171, 173, 0, 164, 0, 0, 0, 174, 0,
0, 0, 0, 0, 128, 85, 0, 0, 0, 0,
147, 0, 0, 0, 69, 70, 71, 0, 0, 0,
127, 0, 25, 0, 3, 0, 0, 0, 0, 0,
91, 0, 0, 91, 0, 0, 0, 0, 0, 0, 91, 0, 0, 91, 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, 29, 30, 31, 32, 33, 34, 27, 0, 169, 0, 29, 30, 31, 32, 33, 34, 27,
0, 35, 53, 54, 55, 56, 57, 58, 59, 60, 0, 35, 53, 54, 55, 56, 57, 58, 59, 60,
61, 62, 63, 0, 0, 0, 0, 0, 0, 0, 61, 62, 63, 0, 0, 0, 0, 0, 0, 0,
88, 81, 86, 90, 0, 0, 0, 0, 0, 0, 88, 81, 86, 90, 0, 0, 0, 0, 0, 0,
148, 149, 129, 0, 130, 116, 152, 153, 0, 1, 148, 149, 129, 0, 130, 116, 152, 153, 0, 175,
4, 78, 11, 0, 105, 12, 0, 111, 112, 16, 26, 4, 78, 11, 0, 105, 12, 0, 111, 112,
17, 114, 115, 14, 15, 13, 10, 8, 5, 6, 16, 17, 114, 115, 14, 15, 13, 10, 8, 5,
7, 9, 18, 20, 19, 23, 24, 21, 22, 2, 6, 7, 9, 18, 20, 19, 23, 24, 21, 22,
117, 161, 0, 50, 0, 40, 0, 0, 0, 0, 0, 117, 0, 50, 0, 40, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
78, 0, 0, 0, 75, 0, 0, 0, 103, 0, 78, 0, 0, 0, 75, 0, 0, 0, 103, 0,
113, 0, 150, 0, 75, 64, 79, 0, 78, 0, 113, 0, 150, 0, 75, 64, 79, 0, 78, 0,
92, 0, 162, 0, 51, 52, 41, 48, 49, 45, 92, 168, 51, 52, 41, 48, 49, 45, 46, 47,
46, 47, 25, 121, 42, 43, 44, 37, 36, 38, 121, 42, 43, 44, 37, 36, 38, 39, 0, 0,
39, 0, 0, 0, 0, 0, 76, 89, 87, 73, 0, 0, 0, 76, 89, 87, 73, 91, 0, 0,
91, 0, 0, 107, 110, 0, 0, 76, 132, 131, 107, 110, 0, 0, 76, 132, 131, 65, 0, 68,
65, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 119, 123, 0, 28, 0,
0, 0, 26, 119, 123, 0, 28, 0, 84, 0, 84, 0, 82, 0, 0, 0, 93, 0, 0, 0,
82, 0, 0, 0, 93, 0, 0, 0, 0, 134, 0, 134, 0, 0, 0, 0, 0, 80, 104, 109,
0, 0, 0, 0, 0, 80, 104, 109, 157, 158, 122, 0, 120, 0, 125, 83, 77, 74, 0, 95,
154, 155, 156, 159, 160, 165, 163, 122, 0, 120, 0, 106, 108, 136, 142, 0, 0, 72, 67, 66,
0, 125, 83, 77, 74, 0, 95, 0, 106, 108,
136, 142, 0, 0, 72, 67, 66, 0, 166, 172,
0, 124, 94, 0, 100, 0, 0, 138, 143, 144, 0, 124, 94, 0, 100, 0, 0, 138, 143, 144,
135, 0, 0, 0, 167, 170, 171, 173, 0, 118, 135, 0, 118, 0, 0, 102, 0, 0, 139, 140,
0, 0, 102, 0, 0, 139, 140, 0, 164, 0, 0, 0, 0, 0, 137, 0, 133, 145, 0, 96,
0, 0, 174, 0, 0, 0, 137, 0, 133, 145, 97, 126, 141, 151, 0, 98, 99, 101, 146
0, 0, 0, 0, 96, 97, 126, 141, 151, 0,
0, 169, 175, 98, 99, 101, 146, 0, 168
}; };
/* YYDEFGOTO[NTERM-NUM]. */ /* YYDEFGOTO[NTERM-NUM]. */
static const short int yydefgoto[] = static const short int yydefgoto[] =
{ {
-1, 182, 183, 166, 76, 211, 24, 25, 26, 208, -1, 2, 62, 63, 206, 116, 248, 64, 65, 66,
200, 197, 167, 82, 83, 84, 107, 266, 284, 335, 245, 237, 234, 207, 122, 123, 124, 148, 289, 304,
302, 27, 28, 29, 203, 204, 108, 30, 31, 32, 337, 315, 67, 68, 69, 240, 241, 149, 70, 71,
33, 34, 35, 36, 37, 223, 224, 225, 38, 39, 72, 73, 74, 75, 76, 77, 255, 256, 257, 78,
40, 41, 42, 43, 44, 45, 239, 240, 287, 306, 79, 80, 81, 82, 83, 84, 85, 271, 272, 307,
318, 289, 46, 320, 91, 163, 47, 48, 49, 253, 319, 326, 309, 86, 328, 131, 203, 87, 88, 89,
172, 173, 278, 279, 295, 296, 297, 298, 50 20, 9, 10, 25, 26, 30, 31, 32, 33, 3
}; };
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */ STATE-NUM. */
#define YYPACT_NINF -208 #define YYPACT_NINF -177
static const short int yypact[] = static const short int yypact[] =
{ {
541, -51, 8, 210, 210, -208, 20, 13, 22, 39, 28, 38, 54, -46, -29, -177, -177, 56, 50, -177,
23, -39, 57, 69, 73, -208, -208, -208, 40, -5, -75, 8, 8, 46, 56, -177, -177, -177, -177, -177,
-4, -208, 76, 87, -208, -15, -9, 2, -16, 3, -177, -177, 63, -177, 8, -177, 2, -26, -51, -177,
48, 5, 6, 48, 7, 19, 29, 30, 45, 49, -177, -177, -177, -13, -177, 71, 72, 587, -177, 57,
53, 54, 64, 65, 80, 81, 82, 83, 84, 86, -21, 26, 272, 272, -177, 13, 91, 55, 96, 67,
89, 210, 12, -208, -208, -208, -208, -208, -208, 9, -22, 99, 100, 103, -177, -177, -177, 75, 29, 35,
210, 16, -208, -208, -208, -208, -208, -208, -208, -208, -177, 116, -177, 396, -177, 22, 23, 27, -9, 30,
-208, -208, -208, 210, 210, 315, 36, 443, 47, 75, 87, 31, 32, 87, 47, 49, 52, 58, 59, 60,
-208, 605, -208, -41, 85, 91, 112, 70, 161, 182, 61, 62, 65, 66, 74, 77, 78, 86, 89, 102,
-208, 139, -208, 155, -208, -208, -208, -208, 100, -208, 75, -177, 272, -177, -177, -177, -177, -177, -177, 39,
-208, 210, -208, 103, -208, -208, 170, -208, -208, -208, 272, 51, -177, -177, -177, -177, -177, -177, -177, -177,
-208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -177, -177, -177, 272, 272, 361, 25, 489, 45, 90,
-208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -177, 651, -177, -39, 93, 142, 124, 108, 152, 170,
605, 200, 140, 557, 141, 208, 66, 210, 210, 210, -177, 131, -177, 143, -177, -177, -177, -177, 98, -177,
210, 210, 541, 210, 210, 210, 210, 210, 210, 210, -177, -177, 272, -177, 110, -177, -177, 256, -177, -177,
210, 541, 210, -31, 216, 123, 217, 210, -208, 218, -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
-208, 124, -208, 172, 223, 126, 605, -66, 210, 183, -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
605, 37, -208, -63, -208, -208, -208, 557, 557, 15, 112, 651, 137, 101, 147, 204, 88, 272, 272, 272,
15, 605, -208, 286, 15, 15, 15, 1, 1, 208, 272, 272, 587, 272, 272, 272, 272, 272, 272, 272,
208, -62, 350, 250, 228, 133, -208, 132, -208, -208, 272, 587, 272, -30, 211, 168, 212, 272, -177, 213,
-34, 538, 151, -208, 143, 243, 246, 153, -208, 132, -177, 118, -177, 167, 217, 122, 651, -63, 272, 175,
-208, -59, -208, 210, -55, 247, 17, 17, 234, 200, 651, -177, -177, -177, -177, 101, 101, 21, 21, 651,
541, 210, -208, -208, 231, 239, -208, 235, -208, 163, 332, 21, 21, 21, -6, -6, 204, 204, -60, 460,
-208, 261, 210, 262, 232, 210, 210, 218, 17, -208, 198, 222, 126, -177, 125, -177, -177, -33, 584, 140,
-48, 212, 166, 167, 171, 605, -208, -208, -208, -208, -177, 128, 228, 229, 139, -177, 125, -177, -53, -177,
-208, -208, -208, -208, -208, 270, -208, 541, 585, -208, 272, -49, 240, 587, 272, -177, 224, 226, -177, 225,
252, -208, -208, -208, -208, 240, 194, 592, 605, -208, -177, 150, -177, 258, 272, 260, 230, 272, 272, 213,
187, 236, 243, 287, -208, -208, -208, 17, -208, 4, 8, -177, -45, 208, 166, 164, 176, 651, -177, -177,
541, -208, -208, 281, 256, 541, 298, 215, -208, -208, 587, 631, -177, 254, -177, -177, -177, -177, 234, 194,
-208, 201, 203, -56, -208, -208, -208, -208, -12, 541, 638, 651, -177, 182, 227, 228, 280, -177, -177, -177,
219, 260, -208, 414, 204, -208, 297, 302, -208, 309, 587, -177, -177, 273, 247, 587, 289, 214, -177, -177,
313, 541, -208, 230, 322, 300, -208, 325, -208, -208, -177, 195, 587, 209, 261, -177, 524, 199, -177, 295,
-45, 310, 237, 478, -208, 18, -208, -208, -208, 327, 292, 215, 299, 279, -177, 304, -177, -177, -44, -177,
40, -208, -208, -208, -208, -208, -208, 248, -208 -8, -177, -177, -177, 305, -177, -177, -177, -177
}; };
/* YYPGOTO[NTERM-NUM]. */ /* YYPGOTO[NTERM-NUM]. */
static const short int yypgoto[] = static const short int yypgoto[] =
{ {
-208, 0, -130, -1, -208, -208, -208, -208, -208, -208, -177, -177, -62, -176, -40, -177, -177, -177, -177, -177,
-208, 174, -135, 185, -208, -208, -29, -208, -208, -208, -177, -177, 109, -166, 120, -177, -177, -69, -177, -177,
-208, -17, -208, -208, 106, -208, 324, -208, -208, -208, -177, -177, -34, -177, -177, 48, -177, 243, -177, -177,
-208, -208, -208, -208, -208, 134, -208, -208, -208, -208, -177, -177, -177, -177, -177, -177, 64, -177, -177, -177,
-208, -208, -208, -208, -208, -208, 88, -208, -208, -208, -177, -177, -177, -177, -177, -177, -177, 24, -177, -177,
-208, -208, -208, -208, -208, -208, -208, -208, -208, -207, -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
142, -208, 90, -208, -208, -208, 67, -208, -208 -12, 307, -177, 297, -177, -177, -177, 285, -177, -177
}; };
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
...@@ -809,192 +810,202 @@ static const short int yypgoto[] = ...@@ -809,192 +810,202 @@ static const short int yypgoto[] =
#define YYTABLE_NINF -1 #define YYTABLE_NINF -1
static const unsigned short int yytable[] = static const unsigned short int yytable[] =
{ {
23, 95, 75, 77, 111, 81, 232, 194, 154, 309, 21, 140, 115, 117, 152, 121, 220, 264, 231, 181,
254, 104, 51, 277, 311, 191, 141, 52, 89, 6, 194, 24, 27, 37, 35, 229, 93, 94, 95, 96,
90, 192, 85, 53, 54, 55, 56, 57, 58, 59, 97, 98, 99, 135, 228, 100, 45, 15, 16, 17,
141, 270, 60, 214, 103, 310, 248, 249, 250, 251, 18, 13, 19, 14, 145, 129, 181, 130, 335, 336,
212, 252, 213, 218, 226, 219, 213, 243, 87, 244, 36, 144, 251, 249, 1, 250, 258, 4, 250, 118,
130, 246, 293, 213, 216, 217, 78, 79, 271, 133, 119, 28, 171, 275, 5, 276, 170, 278, 6, 250,
272, 328, 88, 329, 333, 334, 92, 155, 293, 195, 173, 294, 333, 295, 334, 8, 28, 11, 12, 195,
292, 86, 135, 136, 233, 6, 137, 138, 93, 139, 232, 22, 24, 175, 176, 265, 7, 280, 34, 101,
140, 141, 94, 96, 97, 98, 61, 99, 106, 100, 39, 40, 90, 91, 102, 103, 104, 105, 106, 92,
257, 62, 63, 64, 65, 66, 101, 67, 68, 69, 107, 108, 109, 110, 188, 189, 111, 112, 177, 178,
70, 148, 149, 71, 72, 170, 102, 105, 157, 109, 125, 179, 180, 181, 126, 127, 128, 210, 132, 133,
110, 113, 132, 146, 147, 148, 149, 131, 73, 134, 45, 113, 134, 120, 179, 180, 181, 136, 114, 186,
80, 158, 159, 114, 156, 74, 53, 54, 55, 56, 187, 188, 189, 137, 312, 138, 141, 147, 142, 316,
57, 58, 59, 115, 116, 60, 177, 178, 179, 180, 190, 143, 196, 198, 146, 150, 151, 215, 216, 217,
181, 150, 184, 185, 186, 187, 188, 189, 190, 117, 218, 219, 172, 221, 222, 223, 224, 225, 226, 227,
299, 193, 152, 118, 81, 303, 201, 119, 120, 78, 192, 154, 230, 155, 174, 121, 156, 238, 140, 197,
79, 143, 144, 145, 146, 147, 148, 149, 121, 122, 199, 200, 157, 158, 159, 160, 161, 140, 266, 162,
160, 234, 176, 53, 54, 55, 56, 57, 58, 59, 163, 93, 94, 95, 96, 97, 98, 99, 164, 201,
153, 323, 60, 222, 123, 124, 125, 126, 127, 61, 100, 165, 166, 183, 184, 185, 186, 187, 188, 189,
128, 161, 222, 129, 62, 63, 64, 65, 66, 162, 167, 202, 204, 168, 214, 193, 183, 184, 185, 186,
67, 68, 69, 70, 164, 165, 71, 72, 168, 171, 187, 188, 189, 205, 118, 119, 169, 212, 177, 178,
174, 175, 245, 53, 54, 55, 56, 57, 58, 59, 277, 179, 180, 181, 281, 208, 211, 213, 140, 181,
258, 73, 60, 141, 169, 196, 199, 202, 74, 205, 233, 236, 239, 242, 210, 243, 244, 290, 291, 247,
206, 170, 207, 210, 267, 268, 61, 229, 215, 230, 252, 261, 262, 263, 101, 268, 269, 270, 273, 102,
231, 62, 63, 64, 65, 66, 236, 67, 68, 69, 103, 104, 105, 106, 274, 107, 108, 109, 110, 279,
70, 237, 238, 71, 72, 241, 247, 222, 242, 255, 140, 111, 112, 283, 140, 254, 285, 284, 293, 93,
137, 138, 221, 139, 140, 141, 260, 261, 73, 262, 94, 95, 96, 97, 98, 99, 113, 286, 100, 287,
263, 264, 274, 265, 273, 74, 61, 275, 276, 277, 296, 288, 297, 114, 298, 93, 94, 95, 96, 97,
281, 62, 63, 64, 65, 66, 283, 67, 68, 69, 98, 99, 301, 299, 100, 302, 303, 306, 308, 311,
70, 282, 286, 71, 72, 1, 291, 288, 300, 222, 313, 314, 317, 183, 184, 185, 186, 187, 188, 189,
301, 304, 2, 222, 305, 314, 307, 308, 73, 317, 320, 327, 321, 318, 260, 324, 322, 325, 330, 329,
316, 319, 313, 337, 3, 74, 220, 221, 321, 4, 209, 331, 332, 246, 338, 235, 153, 292, 38, 310,
5, 6, 322, 222, 324, 137, 138, 7, 139, 140, 282, 23, 101, 29, 0, 0, 0, 102, 103, 104,
141, 325, 326, 327, 8, 330, 336, 9, 209, 10, 105, 106, 0, 107, 108, 109, 110, 0, 101, 111,
198, 331, 11, 269, 142, 143, 144, 145, 146, 147, 112, 41, 0, 102, 103, 104, 105, 106, 0, 107,
148, 149, 338, 12, 13, 14, 228, 112, 259, 1, 108, 109, 110, 0, 113, 111, 112, 0, 0, 0,
290, 256, 15, 0, 0, 312, 2, 16, 17, 294, 42, 114, 253, 254, 0, 43, 44, 45, 0, 0,
0, 18, 19, 20, 0, 0, 21, 227, 3, 0, 113, 177, 178, 46, 179, 180, 181, 114, 0, 0,
0, 0, 0, 4, 5, 6, 0, 0, 0, 0, 47, 0, 0, 48, 0, 49, 0, 0, 50, 0,
0, 7, 0, 0, 0, 22, 0, 0, 8, 0, 182, 0, 0, 0, 0, 0, 0, 0, 0, 51,
0, 9, 0, 10, 0, 0, 11, 0, 0, 0, 52, 53, 0, 0, 0, 41, 0, 0, 54, 0,
143, 144, 145, 146, 147, 148, 149, 12, 13, 14, 0, 0, 0, 55, 56, 0, 0, 57, 58, 59,
0, 0, 0, 1, 0, 0, 15, 0, 0, 0, 0, 0, 60, 139, 42, 0, 0, 0, 0, 43,
2, 16, 17, 0, 0, 18, 19, 20, 0, 0, 44, 45, 0, 0, 0, 0, 0, 46, 0, 0,
21, 315, 3, 0, 0, 0, 0, 4, 5, 6, 0, 61, 0, 0, 47, 0, 0, 48, 0, 49,
0, 0, 0, 137, 138, 7, 139, 140, 141, 22, 0, 0, 50, 0, 0, 0, 183, 184, 185, 186,
0, 0, 8, 0, 0, 9, 0, 10, 0, 0, 187, 188, 189, 51, 52, 53, 0, 0, 0, 41,
11, 0, 0, 0, 0, 151, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 0, 55, 56, 0,
0, 12, 13, 14, 0, 0, 0, 1, 0, 0, 0, 57, 58, 59, 0, 0, 60, 259, 42, 0,
15, 0, 0, 0, 2, 16, 17, 0, 0, 18, 0, 0, 0, 43, 44, 45, 0, 0, 0, 177,
19, 20, 0, 0, 21, 332, 3, 0, 0, 0, 178, 46, 179, 180, 181, 61, 0, 0, 47, 0,
0, 4, 5, 6, 0, 0, 0, 0, 0, 7, 0, 48, 0, 49, 0, 0, 50, 0, 0, 0,
0, 0, 0, 22, 0, 0, 8, 0, 0, 9, 0, 191, 0, 0, 0, 0, 0, 51, 52, 53,
0, 10, 0, 0, 11, 0, 0, 0, 143, 144, 0, 0, 0, 41, 0, 0, 54, 0, 0, 0,
145, 146, 147, 148, 149, 12, 13, 14, 137, 138, 0, 55, 56, 0, 0, 57, 58, 59, 0, 0,
1, 139, 140, 141, 15, 0, 0, 2, 0, 16, 60, 323, 42, 0, 0, 0, 0, 43, 44, 45,
17, 0, 0, 18, 19, 20, 0, 0, 21, 3, 0, 0, 0, 0, 0, 46, 0, 0, 0, 61,
139, 140, 141, 0, 4, 5, 6, 0, 0, 0, 0, 0, 47, 0, 0, 48, 0, 49, 0, 0,
235, 0, 7, 0, 0, 0, 0, 22, 0, 8, 50, 0, 0, 0, 183, 184, 185, 186, 187, 188,
0, 0, 9, 0, 10, 137, 138, 11, 139, 140, 189, 51, 52, 53, 177, 178, 41, 179, 180, 181,
141, 0, 137, 138, 0, 139, 140, 141, 12, 13, 54, 0, 0, 0, 0, 55, 56, 0, 0, 57,
14, 0, 0, 0, 280, 137, 138, 15, 139, 140, 58, 59, 0, 0, 60, 42, 0, 0, 0, 0,
141, 0, 16, 17, 285, 0, 18, 19, 20, 0, 43, 44, 45, 0, 0, 0, 267, 0, 46, 0,
0, 21, 0, 143, 144, 145, 146, 147, 148, 149, 0, 0, 0, 61, 0, 47, 0, 0, 48, 0,
49, 177, 178, 50, 179, 180, 181, 0, 177, 178,
0, 179, 180, 181, 51, 52, 53, 0, 0, 0,
300, 177, 178, 54, 179, 180, 181, 0, 55, 56,
305, 0, 57, 58, 59, 0, 0, 60, 0, 183,
184, 185, 186, 187, 188, 189, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 61, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
22, 0, 143, 144, 145, 146, 147, 148, 149, 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, 183, 184, 185, 186,
143, 144, 145, 146, 147, 148, 149, 143, 144, 145, 187, 188, 189, 183, 184, 185, 186, 187, 188, 189,
146, 147, 148, 149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 183, 184, 185, 186,
143, 144, 145, 146, 147, 148, 149 187, 188, 189
}; };
static const short int yycheck[] = static const short int yycheck[] =
{ {
0, 18, 3, 4, 33, 6, 40, 38, 49, 65, 12, 63, 42, 43, 73, 45, 182, 40, 38, 15,
217, 28, 63, 9, 26, 150, 15, 9, 57, 35, 49, 9, 24, 26, 65, 191, 3, 4, 5, 6,
59, 151, 9, 3, 4, 5, 6, 7, 8, 9, 7, 8, 9, 57, 190, 12, 35, 19, 20, 21,
15, 238, 12, 168, 50, 91, 19, 20, 21, 22, 22, 106, 24, 108, 68, 57, 15, 59, 46, 47,
106, 24, 108, 106, 106, 108, 108, 106, 9, 108, 91, 50, 208, 106, 16, 108, 106, 9, 108, 36,
51, 106, 64, 108, 17, 18, 36, 37, 106, 60, 37, 64, 92, 106, 0, 108, 90, 106, 104, 108,
108, 106, 39, 108, 46, 47, 9, 108, 64, 100, 100, 106, 106, 108, 108, 9, 64, 17, 18, 108,
277, 49, 73, 74, 108, 35, 10, 11, 9, 13, 100, 25, 9, 113, 114, 108, 105, 253, 104, 66,
14, 15, 9, 88, 88, 9, 66, 0, 40, 104, 9, 9, 25, 104, 71, 72, 73, 74, 75, 63,
220, 71, 72, 73, 74, 75, 105, 77, 78, 79, 77, 78, 79, 80, 100, 101, 83, 84, 10, 11,
80, 100, 101, 83, 84, 106, 104, 104, 17, 104, 9, 13, 14, 15, 49, 9, 39, 147, 9, 9,
104, 104, 103, 98, 99, 100, 101, 105, 98, 103, 35, 98, 9, 100, 13, 14, 15, 88, 105, 98,
100, 9, 52, 104, 39, 105, 3, 4, 5, 6, 99, 100, 101, 88, 300, 9, 104, 40, 105, 305,
7, 8, 9, 104, 104, 12, 137, 138, 139, 140, 105, 104, 39, 9, 104, 104, 104, 177, 178, 179,
141, 105, 143, 144, 145, 146, 147, 148, 149, 104, 180, 181, 103, 183, 184, 185, 186, 187, 188, 189,
280, 152, 105, 104, 155, 285, 157, 104, 104, 36, 105, 104, 192, 104, 103, 195, 104, 197, 220, 17,
37, 95, 96, 97, 98, 99, 100, 101, 104, 104, 52, 9, 104, 104, 104, 104, 104, 229, 237, 104,
9, 200, 106, 3, 4, 5, 6, 7, 8, 9, 104, 3, 4, 5, 6, 7, 8, 9, 104, 9,
105, 311, 12, 183, 104, 104, 104, 104, 104, 66, 12, 104, 104, 95, 96, 97, 98, 99, 100, 101,
104, 9, 192, 104, 71, 72, 73, 74, 75, 60, 104, 60, 49, 104, 106, 105, 95, 96, 97, 98,
77, 78, 79, 80, 49, 105, 83, 84, 105, 9, 99, 100, 101, 105, 36, 37, 104, 70, 10, 11,
70, 70, 213, 3, 4, 5, 6, 7, 8, 9, 250, 13, 14, 15, 254, 105, 104, 70, 280, 15,
221, 98, 12, 15, 54, 9, 9, 9, 105, 105, 9, 9, 9, 105, 264, 58, 9, 267, 268, 107,
58, 232, 9, 107, 235, 236, 66, 9, 55, 106, 55, 9, 106, 108, 66, 95, 108, 9, 9, 71,
108, 71, 72, 73, 74, 75, 95, 77, 78, 79, 72, 73, 74, 75, 105, 77, 78, 79, 80, 9,
80, 108, 9, 83, 84, 9, 9, 257, 105, 25, 312, 83, 84, 27, 316, 31, 106, 32, 270, 3,
10, 11, 31, 13, 14, 15, 27, 32, 98, 106, 4, 5, 6, 7, 8, 9, 98, 9, 12, 9,
9, 9, 106, 41, 62, 105, 66, 110, 107, 9, 62, 41, 106, 105, 110, 3, 4, 5, 6, 7,
28, 71, 72, 73, 74, 75, 92, 77, 78, 79, 8, 9, 28, 107, 12, 51, 92, 105, 61, 9,
80, 51, 105, 83, 84, 9, 9, 61, 17, 299, 17, 44, 3, 95, 96, 97, 98, 99, 100, 101,
44, 3, 16, 303, 89, 45, 105, 104, 98, 12, 105, 9, 93, 89, 106, 106, 45, 12, 9, 94,
106, 9, 93, 330, 28, 105, 30, 31, 9, 33, 54, 32, 8, 204, 9, 195, 73, 269, 33, 295,
34, 35, 9, 323, 94, 10, 11, 41, 13, 14, 256, 14, 66, 26, -1, -1, -1, 71, 72, 73,
15, 9, 32, 8, 48, 25, 9, 51, 164, 53, 74, 75, -1, 77, 78, 79, 80, -1, 66, 83,
155, 104, 56, 237, 29, 95, 96, 97, 98, 99, 84, 9, -1, 71, 72, 73, 74, 75, -1, 77,
100, 101, 104, 67, 68, 69, 106, 33, 224, 9, 78, 79, 80, -1, 98, 83, 84, -1, -1, -1,
272, 219, 76, -1, -1, 298, 16, 81, 82, 279, 28, 105, 30, 31, -1, 33, 34, 35, -1, -1,
98, 10, 11, 41, 13, 14, 15, 105, -1, -1,
48, -1, -1, 51, -1, 53, -1, -1, 56, -1,
29, -1, -1, -1, -1, -1, -1, -1, -1, 67,
68, 69, -1, -1, -1, 9, -1, -1, 76, -1,
-1, -1, -1, 81, 82, -1, -1, 85, 86, 87,
-1, -1, 90, 27, 28, -1, -1, -1, -1, 33,
34, 35, -1, -1, -1, -1, -1, 41, -1, -1,
-1, 109, -1, -1, 48, -1, -1, 51, -1, 53,
-1, -1, 56, -1, -1, -1, 95, 96, 97, 98,
99, 100, 101, 67, 68, 69, -1, -1, -1, 9,
-1, -1, 76, -1, -1, -1, -1, 81, 82, -1,
-1, 85, 86, 87, -1, -1, 90, 27, 28, -1, -1, 85, 86, 87, -1, -1, 90, 27, 28, -1,
-1, -1, -1, 33, 34, 35, -1, -1, -1, -1, -1, -1, -1, 33, 34, 35, -1, -1, -1, 10,
-1, 41, -1, -1, -1, 109, -1, -1, 48, -1, 11, 41, 13, 14, 15, 109, -1, -1, 48, -1,
-1, 51, -1, 53, -1, -1, 56, -1, -1, -1, -1, 51, -1, 53, -1, -1, 56, -1, -1, -1,
95, 96, 97, 98, 99, 100, 101, 67, 68, 69, -1, 32, -1, -1, -1, -1, -1, 67, 68, 69,
-1, -1, -1, 9, -1, -1, 76, -1, -1, -1, -1, -1, -1, 9, -1, -1, 76, -1, -1, -1,
16, 81, 82, -1, -1, 85, 86, 87, -1, -1, -1, 81, 82, -1, -1, 85, 86, 87, -1, -1,
90, 27, 28, -1, -1, -1, -1, 33, 34, 35, 90, 27, 28, -1, -1, -1, -1, 33, 34, 35,
-1, -1, -1, 10, 11, 41, 13, 14, 15, 109, -1, -1, -1, -1, -1, 41, -1, -1, -1, 109,
-1, -1, 48, -1, -1, 51, -1, 53, -1, -1, -1, -1, 48, -1, -1, 51, -1, 53, -1, -1,
56, -1, -1, -1, -1, 32, -1, -1, -1, -1, 56, -1, -1, -1, 95, 96, 97, 98, 99, 100,
-1, 67, 68, 69, -1, -1, -1, 9, -1, -1, 101, 67, 68, 69, 10, 11, 9, 13, 14, 15,
76, -1, -1, -1, 16, 81, 82, -1, -1, 85, 76, -1, -1, -1, -1, 81, 82, -1, -1, 85,
86, 87, -1, -1, 90, 27, 28, -1, -1, -1, 86, 87, -1, -1, 90, 28, -1, -1, -1, -1,
-1, 33, 34, 35, -1, -1, -1, -1, -1, 41, 33, 34, 35, -1, -1, -1, 42, -1, 41, -1,
-1, -1, -1, 109, -1, -1, 48, -1, -1, 51, -1, -1, -1, 109, -1, 48, -1, -1, 51, -1,
-1, 53, -1, -1, 56, -1, -1, -1, 95, 96, 53, 10, 11, 56, 13, 14, 15, -1, 10, 11,
97, 98, 99, 100, 101, 67, 68, 69, 10, 11, -1, 13, 14, 15, 67, 68, 69, -1, -1, -1,
9, 13, 14, 15, 76, -1, -1, 16, -1, 81, 29, 10, 11, 76, 13, 14, 15, -1, 81, 82,
82, -1, -1, 85, 86, 87, -1, -1, 90, 28, 32, -1, 85, 86, 87, -1, -1, 90, -1, 95,
13, 14, 15, -1, 33, 34, 35, -1, -1, -1, 96, 97, 98, 99, 100, 101, -1, -1, -1, -1,
42, -1, 41, -1, -1, -1, -1, 109, -1, 48, -1, -1, -1, -1, -1, -1, 109, -1, -1, -1,
-1, -1, 51, -1, 53, 10, 11, 56, 13, 14,
15, -1, 10, 11, -1, 13, 14, 15, 67, 68,
69, -1, -1, -1, 29, 10, 11, 76, 13, 14,
15, -1, 81, 82, 32, -1, 85, 86, 87, -1,
-1, 90, -1, 95, 96, 97, 98, 99, 100, 101,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
109, -1, 95, 96, 97, 98, 99, 100, 101, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
95, 96, 97, 98, 99, 100, 101, 95, 96, 97, -1, -1, -1, -1, -1, -1, 95, 96, 97, 98,
98, 99, 100, 101, -1, -1, -1, -1, -1, -1, 99, 100, 101, 95, 96, 97, 98, 99, 100, 101,
95, 96, 97, 98, 99, 100, 101 -1, -1, -1, -1, -1, -1, 95, 96, 97, 98,
99, 100, 101
}; };
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */ symbol of state STATE-NUM. */
static const unsigned char yystos[] = static const unsigned char yystos[] =
{ {
0, 9, 16, 28, 33, 34, 35, 41, 48, 51, 0, 16, 112, 180, 9, 0, 104, 105, 9, 172,
53, 56, 67, 68, 69, 76, 81, 82, 85, 86, 173, 17, 18, 106, 108, 19, 20, 21, 22, 24,
87, 90, 109, 112, 117, 118, 119, 132, 133, 134, 171, 171, 25, 172, 9, 174, 175, 171, 64, 174,
138, 139, 140, 141, 142, 143, 144, 145, 149, 150, 176, 177, 178, 179, 104, 65, 91, 26, 178, 9,
151, 152, 153, 154, 155, 156, 163, 167, 168, 169, 9, 9, 28, 33, 34, 35, 41, 48, 51, 53,
179, 63, 9, 3, 4, 5, 6, 7, 8, 9, 56, 67, 68, 69, 76, 81, 82, 85, 86, 87,
90, 109, 113, 114, 118, 119, 120, 133, 134, 135,
139, 140, 141, 142, 143, 144, 145, 146, 150, 151,
152, 153, 154, 155, 156, 157, 164, 168, 169, 170,
25, 104, 63, 3, 4, 5, 6, 7, 8, 9,
12, 66, 71, 72, 73, 74, 75, 77, 78, 79, 12, 66, 71, 72, 73, 74, 75, 77, 78, 79,
80, 83, 84, 98, 105, 114, 115, 114, 36, 37, 80, 83, 84, 98, 105, 115, 116, 115, 36, 37,
100, 114, 124, 125, 126, 9, 49, 9, 39, 57, 100, 115, 125, 126, 127, 9, 49, 9, 39, 57,
59, 165, 9, 9, 9, 132, 88, 88, 9, 0, 59, 166, 9, 9, 9, 133, 88, 88, 9, 27,
104, 105, 104, 50, 132, 104, 40, 127, 137, 104, 113, 104, 105, 104, 50, 133, 104, 40, 128, 138,
104, 127, 137, 104, 104, 104, 104, 104, 104, 104, 104, 104, 128, 138, 104, 104, 104, 104, 104, 104,
104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
114, 105, 103, 114, 103, 114, 114, 10, 11, 13, 133, 115, 103, 115, 103, 115, 115, 10, 11, 13,
14, 15, 29, 95, 96, 97, 98, 99, 100, 101, 14, 15, 29, 95, 96, 97, 98, 99, 100, 101,
105, 32, 105, 105, 49, 108, 39, 17, 9, 52, 105, 32, 105, 105, 49, 108, 39, 17, 9, 52,
9, 9, 60, 166, 49, 105, 114, 123, 105, 54, 9, 9, 60, 167, 49, 105, 115, 124, 105, 54,
114, 9, 171, 172, 70, 70, 106, 114, 114, 114, 115, 104, 70, 70, 106, 115, 115, 115, 115, 115,
114, 114, 112, 113, 114, 114, 114, 114, 114, 114, 114, 115, 115, 115, 115, 115, 115, 115, 124, 114,
114, 123, 113, 114, 38, 100, 9, 122, 124, 9, 115, 38, 100, 9, 123, 125, 9, 122, 115, 9,
121, 114, 9, 135, 136, 105, 58, 9, 120, 122, 136, 137, 105, 58, 9, 121, 123, 107, 117, 106,
107, 116, 106, 108, 123, 55, 17, 18, 106, 108, 108, 124, 55, 30, 31, 147, 148, 149, 106, 27,
30, 31, 112, 146, 147, 148, 106, 27, 106, 9, 106, 9, 106, 108, 40, 108, 128, 42, 95, 108,
106, 108, 40, 108, 127, 42, 95, 108, 9, 157, 9, 158, 159, 9, 105, 106, 108, 115, 106, 9,
158, 9, 105, 106, 108, 114, 106, 9, 19, 20, 114, 115, 147, 27, 32, 106, 9, 9, 41, 129,
21, 22, 24, 170, 170, 25, 171, 113, 114, 146, 115, 115, 136, 171, 106, 108, 62, 106, 110, 107,
27, 32, 106, 9, 9, 41, 128, 114, 114, 135, 29, 28, 51, 92, 130, 32, 105, 160, 61, 163,
170, 106, 108, 62, 106, 110, 107, 9, 173, 174, 158, 9, 114, 17, 44, 132, 114, 3, 89, 161,
29, 28, 51, 92, 129, 32, 105, 159, 61, 162, 105, 93, 45, 27, 106, 12, 162, 9, 165, 94,
157, 9, 170, 64, 173, 175, 176, 177, 178, 113, 9, 32, 8, 106, 108, 46, 47, 131, 9
17, 44, 131, 113, 3, 89, 160, 105, 104, 65,
91, 26, 177, 93, 45, 27, 106, 12, 161, 9,
164, 9, 9, 113, 94, 9, 32, 8, 106, 108,
25, 104, 27, 46, 47, 130, 9, 132, 104
}; };
#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
...@@ -1606,277 +1617,277 @@ yyparse () ...@@ -1606,277 +1617,277 @@ yyparse ()
switch (yyn) switch (yyn)
{ {
case 25: case 25:
#line 164 "pars0grm.y" #line 166 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 26: case 26:
#line 166 "pars0grm.y" #line 168 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-1], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-1], yyvsp[0]); ;}
break; break;
case 27: case 27:
#line 170 "pars0grm.y" #line 172 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 28: case 28:
#line 172 "pars0grm.y" #line 174 "pars0grm.y"
{ yyval = pars_func(yyvsp[-3], yyvsp[-1]); ;} { yyval = pars_func(yyvsp[-3], yyvsp[-1]); ;}
break; break;
case 29: case 29:
#line 173 "pars0grm.y" #line 175 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 30: case 30:
#line 174 "pars0grm.y" #line 176 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 31: case 31:
#line 175 "pars0grm.y" #line 177 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 32: case 32:
#line 176 "pars0grm.y" #line 178 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 33: case 33:
#line 177 "pars0grm.y" #line 179 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 34: case 34:
#line 178 "pars0grm.y" #line 180 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 35: case 35:
#line 179 "pars0grm.y" #line 181 "pars0grm.y"
{ yyval = yyvsp[0];;} { yyval = yyvsp[0];;}
break; break;
case 36: case 36:
#line 180 "pars0grm.y" #line 182 "pars0grm.y"
{ yyval = pars_op('+', yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op('+', yyvsp[-2], yyvsp[0]); ;}
break; break;
case 37: case 37:
#line 181 "pars0grm.y" #line 183 "pars0grm.y"
{ yyval = pars_op('-', yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op('-', yyvsp[-2], yyvsp[0]); ;}
break; break;
case 38: case 38:
#line 182 "pars0grm.y" #line 184 "pars0grm.y"
{ yyval = pars_op('*', yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op('*', yyvsp[-2], yyvsp[0]); ;}
break; break;
case 39: case 39:
#line 183 "pars0grm.y" #line 185 "pars0grm.y"
{ yyval = pars_op('/', yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op('/', yyvsp[-2], yyvsp[0]); ;}
break; break;
case 40: case 40:
#line 184 "pars0grm.y" #line 186 "pars0grm.y"
{ yyval = pars_op('-', yyvsp[0], NULL); ;} { yyval = pars_op('-', yyvsp[0], NULL); ;}
break; break;
case 41: case 41:
#line 185 "pars0grm.y" #line 187 "pars0grm.y"
{ yyval = yyvsp[-1]; ;} { yyval = yyvsp[-1]; ;}
break; break;
case 42: case 42:
#line 186 "pars0grm.y" #line 188 "pars0grm.y"
{ yyval = pars_op('=', yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op('=', yyvsp[-2], yyvsp[0]); ;}
break; break;
case 43: case 43:
#line 187 "pars0grm.y" #line 189 "pars0grm.y"
{ yyval = pars_op('<', yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op('<', yyvsp[-2], yyvsp[0]); ;}
break; break;
case 44: case 44:
#line 188 "pars0grm.y" #line 190 "pars0grm.y"
{ yyval = pars_op('>', yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op('>', yyvsp[-2], yyvsp[0]); ;}
break; break;
case 45: case 45:
#line 189 "pars0grm.y" #line 191 "pars0grm.y"
{ yyval = pars_op(PARS_GE_TOKEN, yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op(PARS_GE_TOKEN, yyvsp[-2], yyvsp[0]); ;}
break; break;
case 46: case 46:
#line 190 "pars0grm.y" #line 192 "pars0grm.y"
{ yyval = pars_op(PARS_LE_TOKEN, yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op(PARS_LE_TOKEN, yyvsp[-2], yyvsp[0]); ;}
break; break;
case 47: case 47:
#line 191 "pars0grm.y" #line 193 "pars0grm.y"
{ yyval = pars_op(PARS_NE_TOKEN, yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op(PARS_NE_TOKEN, yyvsp[-2], yyvsp[0]); ;}
break; break;
case 48: case 48:
#line 192 "pars0grm.y" #line 194 "pars0grm.y"
{ yyval = pars_op(PARS_AND_TOKEN, yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op(PARS_AND_TOKEN, yyvsp[-2], yyvsp[0]); ;}
break; break;
case 49: case 49:
#line 193 "pars0grm.y" #line 195 "pars0grm.y"
{ yyval = pars_op(PARS_OR_TOKEN, yyvsp[-2], yyvsp[0]); ;} { yyval = pars_op(PARS_OR_TOKEN, yyvsp[-2], yyvsp[0]); ;}
break; break;
case 50: case 50:
#line 194 "pars0grm.y" #line 196 "pars0grm.y"
{ yyval = pars_op(PARS_NOT_TOKEN, yyvsp[0], NULL); ;} { yyval = pars_op(PARS_NOT_TOKEN, yyvsp[0], NULL); ;}
break; break;
case 51: case 51:
#line 196 "pars0grm.y" #line 198 "pars0grm.y"
{ yyval = pars_op(PARS_NOTFOUND_TOKEN, yyvsp[-2], NULL); ;} { yyval = pars_op(PARS_NOTFOUND_TOKEN, yyvsp[-2], NULL); ;}
break; break;
case 52: case 52:
#line 198 "pars0grm.y" #line 200 "pars0grm.y"
{ yyval = pars_op(PARS_NOTFOUND_TOKEN, yyvsp[-2], NULL); ;} { yyval = pars_op(PARS_NOTFOUND_TOKEN, yyvsp[-2], NULL); ;}
break; break;
case 53: case 53:
#line 202 "pars0grm.y" #line 204 "pars0grm.y"
{ yyval = &pars_to_char_token; ;} { yyval = &pars_to_char_token; ;}
break; break;
case 54: case 54:
#line 203 "pars0grm.y" #line 205 "pars0grm.y"
{ yyval = &pars_to_number_token; ;} { yyval = &pars_to_number_token; ;}
break; break;
case 55: case 55:
#line 204 "pars0grm.y" #line 206 "pars0grm.y"
{ yyval = &pars_to_binary_token; ;} { yyval = &pars_to_binary_token; ;}
break; break;
case 56: case 56:
#line 206 "pars0grm.y" #line 208 "pars0grm.y"
{ yyval = &pars_binary_to_number_token; ;} { yyval = &pars_binary_to_number_token; ;}
break; break;
case 57: case 57:
#line 207 "pars0grm.y" #line 209 "pars0grm.y"
{ yyval = &pars_substr_token; ;} { yyval = &pars_substr_token; ;}
break; break;
case 58: case 58:
#line 208 "pars0grm.y" #line 210 "pars0grm.y"
{ yyval = &pars_concat_token; ;} { yyval = &pars_concat_token; ;}
break; break;
case 59: case 59:
#line 209 "pars0grm.y" #line 211 "pars0grm.y"
{ yyval = &pars_instr_token; ;} { yyval = &pars_instr_token; ;}
break; break;
case 60: case 60:
#line 210 "pars0grm.y" #line 212 "pars0grm.y"
{ yyval = &pars_length_token; ;} { yyval = &pars_length_token; ;}
break; break;
case 61: case 61:
#line 211 "pars0grm.y" #line 213 "pars0grm.y"
{ yyval = &pars_sysdate_token; ;} { yyval = &pars_sysdate_token; ;}
break; break;
case 62: case 62:
#line 212 "pars0grm.y" #line 214 "pars0grm.y"
{ yyval = &pars_rnd_token; ;} { yyval = &pars_rnd_token; ;}
break; break;
case 63: case 63:
#line 213 "pars0grm.y" #line 215 "pars0grm.y"
{ yyval = &pars_rnd_str_token; ;} { yyval = &pars_rnd_str_token; ;}
break; break;
case 67: case 67:
#line 224 "pars0grm.y" #line 226 "pars0grm.y"
{ yyval = pars_stored_procedure_call(yyvsp[-4]); ;} { yyval = pars_stored_procedure_call(yyvsp[-4]); ;}
break; break;
case 68: case 68:
#line 229 "pars0grm.y" #line 231 "pars0grm.y"
{ yyval = pars_procedure_call(yyvsp[-3], yyvsp[-1]); ;} { yyval = pars_procedure_call(yyvsp[-3], yyvsp[-1]); ;}
break; break;
case 69: case 69:
#line 233 "pars0grm.y" #line 235 "pars0grm.y"
{ yyval = &pars_replstr_token; ;} { yyval = &pars_replstr_token; ;}
break; break;
case 70: case 70:
#line 234 "pars0grm.y" #line 236 "pars0grm.y"
{ yyval = &pars_printf_token; ;} { yyval = &pars_printf_token; ;}
break; break;
case 71: case 71:
#line 235 "pars0grm.y" #line 237 "pars0grm.y"
{ yyval = &pars_assert_token; ;} { yyval = &pars_assert_token; ;}
break; break;
case 72: case 72:
#line 239 "pars0grm.y" #line 241 "pars0grm.y"
{ yyval = yyvsp[-2]; ;} { yyval = yyvsp[-2]; ;}
break; break;
case 73: case 73:
#line 243 "pars0grm.y" #line 245 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 74: case 74:
#line 245 "pars0grm.y" #line 247 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 75: case 75:
#line 249 "pars0grm.y" #line 251 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 76: case 76:
#line 250 "pars0grm.y" #line 252 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 77: case 77:
#line 252 "pars0grm.y" #line 254 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 78: case 78:
#line 256 "pars0grm.y" #line 258 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 79: case 79:
#line 257 "pars0grm.y" #line 259 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]);;} { yyval = que_node_list_add_last(NULL, yyvsp[0]);;}
break; break;
case 80: case 80:
#line 258 "pars0grm.y" #line 260 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 81: case 81:
#line 262 "pars0grm.y" #line 264 "pars0grm.y"
{ yyval = yyvsp[0]; ;} { yyval = yyvsp[0]; ;}
break; break;
case 82: case 82:
#line 264 "pars0grm.y" #line 266 "pars0grm.y"
{ yyval = pars_func(&pars_count_token, { yyval = pars_func(&pars_count_token,
que_node_list_add_last(NULL, que_node_list_add_last(NULL,
sym_tab_add_int_lit( sym_tab_add_int_lit(
...@@ -1884,7 +1895,7 @@ yyparse () ...@@ -1884,7 +1895,7 @@ yyparse ()
break; break;
case 83: case 83:
#line 269 "pars0grm.y" #line 271 "pars0grm.y"
{ yyval = pars_func(&pars_count_token, { yyval = pars_func(&pars_count_token,
que_node_list_add_last(NULL, que_node_list_add_last(NULL,
pars_func(&pars_distinct_token, pars_func(&pars_distinct_token,
...@@ -1893,435 +1904,435 @@ yyparse () ...@@ -1893,435 +1904,435 @@ yyparse ()
break; break;
case 84: case 84:
#line 275 "pars0grm.y" #line 277 "pars0grm.y"
{ yyval = pars_func(&pars_sum_token, { yyval = pars_func(&pars_sum_token,
que_node_list_add_last(NULL, que_node_list_add_last(NULL,
yyvsp[-1])); ;} yyvsp[-1])); ;}
break; break;
case 85: case 85:
#line 281 "pars0grm.y" #line 283 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 86: case 86:
#line 282 "pars0grm.y" #line 284 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 87: case 87:
#line 284 "pars0grm.y" #line 286 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 88: case 88:
#line 288 "pars0grm.y" #line 290 "pars0grm.y"
{ yyval = pars_select_list(&pars_star_denoter, { yyval = pars_select_list(&pars_star_denoter,
NULL); ;} NULL); ;}
break; break;
case 89: case 89:
#line 291 "pars0grm.y" #line 293 "pars0grm.y"
{ yyval = pars_select_list(yyvsp[-2], yyvsp[0]); ;} { yyval = pars_select_list(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 90: case 90:
#line 292 "pars0grm.y" #line 294 "pars0grm.y"
{ yyval = pars_select_list(yyvsp[0], NULL); ;} { yyval = pars_select_list(yyvsp[0], NULL); ;}
break; break;
case 91: case 91:
#line 296 "pars0grm.y" #line 298 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 92: case 92:
#line 297 "pars0grm.y" #line 299 "pars0grm.y"
{ yyval = yyvsp[0]; ;} { yyval = yyvsp[0]; ;}
break; break;
case 93: case 93:
#line 301 "pars0grm.y" #line 303 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 94: case 94:
#line 303 "pars0grm.y" #line 305 "pars0grm.y"
{ yyval = &pars_update_token; ;} { yyval = &pars_update_token; ;}
break; break;
case 95: case 95:
#line 307 "pars0grm.y" #line 309 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 96: case 96:
#line 309 "pars0grm.y" #line 311 "pars0grm.y"
{ yyval = &pars_share_token; ;} { yyval = &pars_share_token; ;}
break; break;
case 97: case 97:
#line 313 "pars0grm.y" #line 315 "pars0grm.y"
{ yyval = &pars_asc_token; ;} { yyval = &pars_asc_token; ;}
break; break;
case 98: case 98:
#line 314 "pars0grm.y" #line 316 "pars0grm.y"
{ yyval = &pars_asc_token; ;} { yyval = &pars_asc_token; ;}
break; break;
case 99: case 99:
#line 315 "pars0grm.y" #line 317 "pars0grm.y"
{ yyval = &pars_desc_token; ;} { yyval = &pars_desc_token; ;}
break; break;
case 100: case 100:
#line 319 "pars0grm.y" #line 321 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 101: case 101:
#line 321 "pars0grm.y" #line 323 "pars0grm.y"
{ yyval = pars_order_by(yyvsp[-1], yyvsp[0]); ;} { yyval = pars_order_by(yyvsp[-1], yyvsp[0]); ;}
break; break;
case 102: case 102:
#line 330 "pars0grm.y" #line 332 "pars0grm.y"
{ yyval = pars_select_statement(yyvsp[-6], yyvsp[-4], yyvsp[-3], { yyval = pars_select_statement(yyvsp[-6], yyvsp[-4], yyvsp[-3],
yyvsp[-2], yyvsp[-1], yyvsp[0]); ;} yyvsp[-2], yyvsp[-1], yyvsp[0]); ;}
break; break;
case 103: case 103:
#line 336 "pars0grm.y" #line 338 "pars0grm.y"
{ yyval = yyvsp[0]; ;} { yyval = yyvsp[0]; ;}
break; break;
case 104: case 104:
#line 341 "pars0grm.y" #line 343 "pars0grm.y"
{ yyval = pars_insert_statement(yyvsp[-4], yyvsp[-1], NULL); ;} { yyval = pars_insert_statement(yyvsp[-4], yyvsp[-1], NULL); ;}
break; break;
case 105: case 105:
#line 343 "pars0grm.y" #line 345 "pars0grm.y"
{ yyval = pars_insert_statement(yyvsp[-1], NULL, yyvsp[0]); ;} { yyval = pars_insert_statement(yyvsp[-1], NULL, yyvsp[0]); ;}
break; break;
case 106: case 106:
#line 347 "pars0grm.y" #line 349 "pars0grm.y"
{ yyval = pars_column_assignment(yyvsp[-2], yyvsp[0]); ;} { yyval = pars_column_assignment(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 107: case 107:
#line 351 "pars0grm.y" #line 353 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 108: case 108:
#line 353 "pars0grm.y" #line 355 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 109: case 109:
#line 359 "pars0grm.y" #line 361 "pars0grm.y"
{ yyval = yyvsp[0]; ;} { yyval = yyvsp[0]; ;}
break; break;
case 110: case 110:
#line 365 "pars0grm.y" #line 367 "pars0grm.y"
{ yyval = pars_update_statement_start(FALSE, { yyval = pars_update_statement_start(FALSE,
yyvsp[-2], yyvsp[0]); ;} yyvsp[-2], yyvsp[0]); ;}
break; break;
case 111: case 111:
#line 371 "pars0grm.y" #line 373 "pars0grm.y"
{ yyval = pars_update_statement(yyvsp[-1], NULL, yyvsp[0]); ;} { yyval = pars_update_statement(yyvsp[-1], NULL, yyvsp[0]); ;}
break; break;
case 112: case 112:
#line 376 "pars0grm.y" #line 378 "pars0grm.y"
{ yyval = pars_update_statement(yyvsp[-1], yyvsp[0], NULL); ;} { yyval = pars_update_statement(yyvsp[-1], yyvsp[0], NULL); ;}
break; break;
case 113: case 113:
#line 381 "pars0grm.y" #line 383 "pars0grm.y"
{ yyval = pars_update_statement_start(TRUE, { yyval = pars_update_statement_start(TRUE,
yyvsp[0], NULL); ;} yyvsp[0], NULL); ;}
break; break;
case 114: case 114:
#line 387 "pars0grm.y" #line 389 "pars0grm.y"
{ yyval = pars_update_statement(yyvsp[-1], NULL, yyvsp[0]); ;} { yyval = pars_update_statement(yyvsp[-1], NULL, yyvsp[0]); ;}
break; break;
case 115: case 115:
#line 392 "pars0grm.y" #line 394 "pars0grm.y"
{ yyval = pars_update_statement(yyvsp[-1], yyvsp[0], NULL); ;} { yyval = pars_update_statement(yyvsp[-1], yyvsp[0], NULL); ;}
break; break;
case 116: case 116:
#line 397 "pars0grm.y" #line 399 "pars0grm.y"
{ yyval = pars_row_printf_statement(yyvsp[0]); ;} { yyval = pars_row_printf_statement(yyvsp[0]); ;}
break; break;
case 117: case 117:
#line 402 "pars0grm.y" #line 404 "pars0grm.y"
{ yyval = pars_assignment_statement(yyvsp[-2], yyvsp[0]); ;} { yyval = pars_assignment_statement(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 118: case 118:
#line 408 "pars0grm.y" #line 410 "pars0grm.y"
{ yyval = pars_elsif_element(yyvsp[-2], yyvsp[0]); ;} { yyval = pars_elsif_element(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 119: case 119:
#line 412 "pars0grm.y" #line 414 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 120: case 120:
#line 414 "pars0grm.y" #line 416 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-1], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-1], yyvsp[0]); ;}
break; break;
case 121: case 121:
#line 418 "pars0grm.y" #line 420 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 122: case 122:
#line 420 "pars0grm.y" #line 422 "pars0grm.y"
{ yyval = yyvsp[0]; ;} { yyval = yyvsp[0]; ;}
break; break;
case 123: case 123:
#line 421 "pars0grm.y" #line 423 "pars0grm.y"
{ yyval = yyvsp[0]; ;} { yyval = yyvsp[0]; ;}
break; break;
case 124: case 124:
#line 428 "pars0grm.y" #line 430 "pars0grm.y"
{ yyval = pars_if_statement(yyvsp[-5], yyvsp[-3], yyvsp[-2]); ;} { yyval = pars_if_statement(yyvsp[-5], yyvsp[-3], yyvsp[-2]); ;}
break; break;
case 125: case 125:
#line 434 "pars0grm.y" #line 436 "pars0grm.y"
{ yyval = pars_while_statement(yyvsp[-4], yyvsp[-2]); ;} { yyval = pars_while_statement(yyvsp[-4], yyvsp[-2]); ;}
break; break;
case 126: case 126:
#line 442 "pars0grm.y" #line 444 "pars0grm.y"
{ yyval = pars_for_statement(yyvsp[-8], yyvsp[-6], yyvsp[-4], yyvsp[-2]); ;} { yyval = pars_for_statement(yyvsp[-8], yyvsp[-6], yyvsp[-4], yyvsp[-2]); ;}
break; break;
case 127: case 127:
#line 446 "pars0grm.y" #line 448 "pars0grm.y"
{ yyval = pars_exit_statement(); ;} { yyval = pars_exit_statement(); ;}
break; break;
case 128: case 128:
#line 450 "pars0grm.y" #line 452 "pars0grm.y"
{ yyval = pars_return_statement(); ;} { yyval = pars_return_statement(); ;}
break; break;
case 129: case 129:
#line 455 "pars0grm.y" #line 457 "pars0grm.y"
{ yyval = pars_open_statement( { yyval = pars_open_statement(
ROW_SEL_OPEN_CURSOR, yyvsp[0]); ;} ROW_SEL_OPEN_CURSOR, yyvsp[0]); ;}
break; break;
case 130: case 130:
#line 461 "pars0grm.y" #line 463 "pars0grm.y"
{ yyval = pars_open_statement( { yyval = pars_open_statement(
ROW_SEL_CLOSE_CURSOR, yyvsp[0]); ;} ROW_SEL_CLOSE_CURSOR, yyvsp[0]); ;}
break; break;
case 131: case 131:
#line 467 "pars0grm.y" #line 469 "pars0grm.y"
{ yyval = pars_fetch_statement(yyvsp[-2], yyvsp[0], NULL); ;} { yyval = pars_fetch_statement(yyvsp[-2], yyvsp[0], NULL); ;}
break; break;
case 132: case 132:
#line 469 "pars0grm.y" #line 471 "pars0grm.y"
{ yyval = pars_fetch_statement(yyvsp[-2], NULL, yyvsp[0]); ;} { yyval = pars_fetch_statement(yyvsp[-2], NULL, yyvsp[0]); ;}
break; break;
case 133: case 133:
#line 474 "pars0grm.y" #line 476 "pars0grm.y"
{ yyval = pars_column_def(yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;} { yyval = pars_column_def(yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;}
break; break;
case 134: case 134:
#line 478 "pars0grm.y" #line 480 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 135: case 135:
#line 480 "pars0grm.y" #line 482 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 136: case 136:
#line 484 "pars0grm.y" #line 486 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 137: case 137:
#line 486 "pars0grm.y" #line 488 "pars0grm.y"
{ yyval = yyvsp[-1]; ;} { yyval = yyvsp[-1]; ;}
break; break;
case 138: case 138:
#line 490 "pars0grm.y" #line 492 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 139: case 139:
#line 492 "pars0grm.y" #line 494 "pars0grm.y"
{ yyval = &pars_int_token; { yyval = &pars_int_token;
/* pass any non-NULL pointer */ ;} /* pass any non-NULL pointer */ ;}
break; break;
case 140: case 140:
#line 497 "pars0grm.y" #line 499 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 141: case 141:
#line 499 "pars0grm.y" #line 501 "pars0grm.y"
{ yyval = &pars_int_token; { yyval = &pars_int_token;
/* pass any non-NULL pointer */ ;} /* pass any non-NULL pointer */ ;}
break; break;
case 142: case 142:
#line 504 "pars0grm.y" #line 506 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 143: case 143:
#line 506 "pars0grm.y" #line 508 "pars0grm.y"
{ yyval = &pars_int_token; { yyval = &pars_int_token;
/* pass any non-NULL pointer */ ;} /* pass any non-NULL pointer */ ;}
break; break;
case 144: case 144:
#line 513 "pars0grm.y" #line 515 "pars0grm.y"
{ yyval = pars_create_table(yyvsp[-4], yyvsp[-2], yyvsp[0]); ;} { yyval = pars_create_table(yyvsp[-4], yyvsp[-2], yyvsp[0]); ;}
break; break;
case 145: case 145:
#line 517 "pars0grm.y" #line 519 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 146: case 146:
#line 519 "pars0grm.y" #line 521 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 147: case 147:
#line 523 "pars0grm.y" #line 525 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 148: case 148:
#line 524 "pars0grm.y" #line 526 "pars0grm.y"
{ yyval = &pars_unique_token; ;} { yyval = &pars_unique_token; ;}
break; break;
case 149: case 149:
#line 528 "pars0grm.y" #line 530 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 150: case 150:
#line 529 "pars0grm.y" #line 531 "pars0grm.y"
{ yyval = &pars_clustered_token; ;} { yyval = &pars_clustered_token; ;}
break; break;
case 151: case 151:
#line 537 "pars0grm.y" #line 539 "pars0grm.y"
{ yyval = pars_create_index(yyvsp[-8], yyvsp[-7], yyvsp[-5], yyvsp[-3], yyvsp[-1]); ;} { yyval = pars_create_index(yyvsp[-8], yyvsp[-7], yyvsp[-5], yyvsp[-3], yyvsp[-1]); ;}
break; break;
case 152: case 152:
#line 542 "pars0grm.y" #line 544 "pars0grm.y"
{ yyval = pars_commit_statement(); ;} { yyval = pars_commit_statement(); ;}
break; break;
case 153: case 153:
#line 547 "pars0grm.y" #line 549 "pars0grm.y"
{ yyval = pars_rollback_statement(); ;} { yyval = pars_rollback_statement(); ;}
break; break;
case 154: case 154:
#line 551 "pars0grm.y" #line 553 "pars0grm.y"
{ yyval = &pars_int_token; ;} { yyval = &pars_int_token; ;}
break; break;
case 155: case 155:
#line 552 "pars0grm.y" #line 554 "pars0grm.y"
{ yyval = &pars_int_token; ;} { yyval = &pars_int_token; ;}
break; break;
case 156: case 156:
#line 553 "pars0grm.y" #line 555 "pars0grm.y"
{ yyval = &pars_char_token; ;} { yyval = &pars_char_token; ;}
break; break;
case 157: case 157:
#line 554 "pars0grm.y" #line 556 "pars0grm.y"
{ yyval = &pars_binary_token; ;} { yyval = &pars_binary_token; ;}
break; break;
case 158: case 158:
#line 555 "pars0grm.y" #line 557 "pars0grm.y"
{ yyval = &pars_blob_token; ;} { yyval = &pars_blob_token; ;}
break; break;
case 159: case 159:
#line 560 "pars0grm.y" #line 562 "pars0grm.y"
{ yyval = pars_parameter_declaration(yyvsp[-2], { yyval = pars_parameter_declaration(yyvsp[-2],
PARS_INPUT, yyvsp[0]); ;} PARS_INPUT, yyvsp[0]); ;}
break; break;
case 160: case 160:
#line 563 "pars0grm.y" #line 565 "pars0grm.y"
{ yyval = pars_parameter_declaration(yyvsp[-2], { yyval = pars_parameter_declaration(yyvsp[-2],
PARS_OUTPUT, yyvsp[0]); ;} PARS_OUTPUT, yyvsp[0]); ;}
break; break;
case 161: case 161:
#line 568 "pars0grm.y" #line 570 "pars0grm.y"
{ yyval = NULL; ;} { yyval = NULL; ;}
break; break;
case 162: case 162:
#line 569 "pars0grm.y" #line 571 "pars0grm.y"
{ yyval = que_node_list_add_last(NULL, yyvsp[0]); ;} { yyval = que_node_list_add_last(NULL, yyvsp[0]); ;}
break; break;
case 163: case 163:
#line 571 "pars0grm.y" #line 573 "pars0grm.y"
{ yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;} { yyval = que_node_list_add_last(yyvsp[-2], yyvsp[0]); ;}
break; break;
case 164: case 164:
#line 576 "pars0grm.y" #line 578 "pars0grm.y"
{ yyval = pars_variable_declaration(yyvsp[-2], yyvsp[-1]); ;} { yyval = pars_variable_declaration(yyvsp[-2], yyvsp[-1]); ;}
break; break;
case 168: case 168:
#line 588 "pars0grm.y" #line 590 "pars0grm.y"
{ yyval = pars_cursor_declaration(yyvsp[-3], yyvsp[-1]); ;} { yyval = pars_cursor_declaration(yyvsp[-3], yyvsp[-1]); ;}
break; break;
case 169: case 169:
#line 593 "pars0grm.y" #line 595 "pars0grm.y"
{ yyval = pars_function_declaration(yyvsp[-1]); ;} { yyval = pars_function_declaration(yyvsp[-1]); ;}
break; break;
case 175: case 175:
#line 614 "pars0grm.y" #line 616 "pars0grm.y"
{ yyval = pars_procedure_definition(yyvsp[-9], yyvsp[-7], { yyval = pars_procedure_definition(yyvsp[-9], yyvsp[-7],
yyvsp[-1]); ;} yyvsp[-1]); ;}
break; break;
...@@ -2330,7 +2341,7 @@ yyparse () ...@@ -2330,7 +2341,7 @@ yyparse ()
} }
/* Line 1010 of yacc.c. */ /* Line 1010 of yacc.c. */
#line 2334 "pars0grm.tab.c" #line 2345 "pars0grm.tab.c"
yyvsp -= yylen; yyvsp -= yylen;
yyssp -= yylen; yyssp -= yylen;
...@@ -2555,6 +2566,6 @@ yyparse () ...@@ -2555,6 +2566,6 @@ yyparse ()
} }
#line 618 "pars0grm.y" #line 620 "pars0grm.y"
...@@ -134,9 +134,11 @@ yylex(void); ...@@ -134,9 +134,11 @@ yylex(void);
/* Grammar follows */ /* Grammar follows */
%% %%
statement: top_statement:
procedure_definition ';' procedure_definition ';'
| stored_procedure_call
statement:
stored_procedure_call
| predefined_procedure_call ';' | predefined_procedure_call ';'
| while_statement ';' | while_statement ';'
| for_statement ';' | for_statement ';'
......
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