/* A Bison parser, made by GNU Bison 1.875c. */ /* Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. This special exception was added by the Free Software Foundation in version 1.24 of Bison. */ /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE /* Put the tokens into the symbol table, so that GDB and other debuggers know about them. */ enum yytokentype { END_OF_INPUT = 258, EQ = 259, EQUAL_SYM = 260, GE = 261, GT_SYM = 262, LE = 263, LT = 264, NE = 265, IS = 266, SHIFT_LEFT = 267, SHIFT_RIGHT = 268, SET_VAR = 269, AVG_SYM = 270, COUNT_SYM = 271, MAX_SYM = 272, MIN_SYM = 273, SUM_SYM = 274, STD_SYM = 275, ADD = 276, ALTER = 277, AFTER_SYM = 278, ANALYZE_SYM = 279, BEGIN_SYM = 280, CHANGE = 281, COMMENT_SYM = 282, COMMIT_SYM = 283, CREATE = 284, CROSS = 285, DELETE_SYM = 286, DO_SYM = 287, DROP = 288, INSERT = 289, FLUSH_SYM = 290, SELECT_SYM = 291, MASTER_SYM = 292, REPAIR = 293, RESET_SYM = 294, PURGE = 295, SLAVE = 296, START_SYM = 297, STOP_SYM = 298, TRUNCATE_SYM = 299, ROLLBACK_SYM = 300, OPTIMIZE = 301, SHOW = 302, UPDATE_SYM = 303, KILL_SYM = 304, LOAD = 305, LOCK_SYM = 306, LOCKS_SYM = 307, UNLOCK_SYM = 308, ACTION = 309, AGGREGATE_SYM = 310, ALL = 311, AND = 312, AS = 313, ASC = 314, AUTO_INC = 315, AUTOCOMMIT = 316, AVG_ROW_LENGTH = 317, BACKUP_SYM = 318, BERKELEY_DB_SYM = 319, BINARY = 320, BIT_SYM = 321, BOOL_SYM = 322, BOTH = 323, BY = 324, CASCADE = 325, CHECKSUM_SYM = 326, CHECK_SYM = 327, COMMITTED_SYM = 328, COLUMNS = 329, COLUMN_SYM = 330, CONCURRENT = 331, CONSTRAINT = 332, DATABASES = 333, DATA_SYM = 334, DEFAULT = 335, DELAYED_SYM = 336, DELAY_KEY_WRITE_SYM = 337, DESC = 338, DESCRIBE = 339, DISTINCT = 340, DYNAMIC_SYM = 341, ENCLOSED = 342, ESCAPED = 343, ESCAPE_SYM = 344, EXISTS = 345, EXTENDED_SYM = 346, FILE_SYM = 347, FIRST_SYM = 348, FIXED_SYM = 349, FLOAT_NUM = 350, FOREIGN = 351, FROM = 352, FULL = 353, FULLTEXT_SYM = 354, GEMINI_SYM = 355, GEMINI_SPIN_RETRIES = 356, GLOBAL_SYM = 357, GRANT = 358, GRANTS = 359, GREATEST_SYM = 360, GROUP = 361, HAVING = 362, HEAP_SYM = 363, HEX_NUM = 364, HIGH_PRIORITY = 365, HOSTS_SYM = 366, IDENT = 367, IGNORE_SYM = 368, INDEX = 369, INFILE = 370, INNER_SYM = 371, INNOBASE_SYM = 372, INTO = 373, IN_SYM = 374, ISOLATION = 375, ISAM_SYM = 376, JOIN_SYM = 377, KEYS = 378, KEY_SYM = 379, LEADING = 380, LEAST_SYM = 381, LEVEL_SYM = 382, LEX_HOSTNAME = 383, LIKE = 384, LINES = 385, LOCAL_SYM = 386, LOGS_SYM = 387, LONG_NUM = 388, LONG_SYM = 389, LOW_PRIORITY = 390, MASTER_HOST_SYM = 391, MASTER_USER_SYM = 392, MASTER_LOG_FILE_SYM = 393, MASTER_LOG_POS_SYM = 394, MASTER_PASSWORD_SYM = 395, MASTER_PORT_SYM = 396, MASTER_CONNECT_RETRY_SYM = 397, MATCH = 398, MAX_ROWS = 399, MEDIUM_SYM = 400, MERGE_SYM = 401, MIN_ROWS = 402, MYISAM_SYM = 403, NATIONAL_SYM = 404, NATURAL = 405, NCHAR_SYM = 406, NOT = 407, FOREIGN_KEY_CHECKS = 408, NO_SYM = 409, NULL_SYM = 410, NUM = 411, ON = 412, OPEN_SYM = 413, OPTION = 414, OPTIONALLY = 415, OR = 416, OR_OR_CONCAT = 417, ORDER_SYM = 418, OUTER = 419, OUTFILE = 420, DUMPFILE = 421, PACK_KEYS_SYM = 422, PARTIAL = 423, PRIMARY_SYM = 424, PRIVILEGES = 425, PROCESS = 426, PROCESSLIST_SYM = 427, RAID_0_SYM = 428, RAID_STRIPED_SYM = 429, RAID_TYPE = 430, RAID_CHUNKS = 431, RAID_CHUNKSIZE = 432, READ_SYM = 433, REAL_NUM = 434, REFERENCES = 435, REGEXP = 436, RELOAD = 437, RENAME = 438, REPEATABLE_SYM = 439, RESTORE_SYM = 440, RESTRICT = 441, REVOKE = 442, ROWS_SYM = 443, ROW_FORMAT_SYM = 444, ROW_SYM = 445, SET = 446, SERIALIZABLE_SYM = 447, SESSION_SYM = 448, SHUTDOWN = 449, STARTING = 450, STATUS_SYM = 451, STRAIGHT_JOIN = 452, TABLES = 453, TABLE_SYM = 454, TEMPORARY = 455, TERMINATED = 456, TEXT_STRING = 457, TO_SYM = 458, TRAILING = 459, TRANSACTION_SYM = 460, TYPE_SYM = 461, FUNC_ARG0 = 462, FUNC_ARG1 = 463, FUNC_ARG2 = 464, FUNC_ARG3 = 465, UDF_RETURNS_SYM = 466, UDF_SONAME_SYM = 467, UDF_SYM = 468, UNCOMMITTED_SYM = 469, UNION_SYM = 470, UNIQUE_SYM = 471, UNIQUE_CHECKS = 472, USAGE = 473, USE_SYM = 474, USING = 475, VALUES = 476, VARIABLES = 477, WHERE = 478, WITH = 479, WRITE_SYM = 480, COMPRESSED_SYM = 481, BIGINT = 482, BLOB_SYM = 483, CHAR_SYM = 484, CHANGED = 485, COALESCE = 486, DATETIME = 487, DATE_SYM = 488, DECIMAL_SYM = 489, DOUBLE_SYM = 490, ENUM = 491, FAST_SYM = 492, FLOAT_SYM = 493, INT_SYM = 494, LIMIT = 495, LONGBLOB = 496, LONGTEXT = 497, MEDIUMBLOB = 498, MEDIUMINT = 499, MEDIUMTEXT = 500, NUMERIC_SYM = 501, PRECISION = 502, QUICK = 503, REAL = 504, SMALLINT = 505, STRING_SYM = 506, TEXT_SYM = 507, TIMESTAMP = 508, TIME_SYM = 509, TINYBLOB = 510, TINYINT = 511, TINYTEXT = 512, UNSIGNED = 513, VARBINARY = 514, VARCHAR = 515, VARYING = 516, ZEROFILL = 517, AGAINST = 518, ATAN = 519, BETWEEN_SYM = 520, BIT_AND = 521, BIT_OR = 522, CASE_SYM = 523, CONCAT = 524, CONCAT_WS = 525, CURDATE = 526, CURTIME = 527, DATABASE = 528, DATE_ADD_INTERVAL = 529, DATE_SUB_INTERVAL = 530, DAY_HOUR_SYM = 531, DAY_MINUTE_SYM = 532, DAY_SECOND_SYM = 533, DAY_SYM = 534, DECODE_SYM = 535, ELSE = 536, ELT_FUNC = 537, ENCODE_SYM = 538, ENCRYPT = 539, EXPORT_SET = 540, EXTRACT_SYM = 541, FIELD_FUNC = 542, FORMAT_SYM = 543, FOR_SYM = 544, FROM_UNIXTIME = 545, GROUP_UNIQUE_USERS = 546, HOUR_MINUTE_SYM = 547, HOUR_SECOND_SYM = 548, HOUR_SYM = 549, IDENTIFIED_SYM = 550, IF = 551, INSERT_ID = 552, INTERVAL_SYM = 553, LAST_INSERT_ID = 554, LEFT = 555, LOCATE = 556, MAKE_SET_SYM = 557, MINUTE_SECOND_SYM = 558, MINUTE_SYM = 559, MODE_SYM = 560, MODIFY_SYM = 561, MONTH_SYM = 562, NOW_SYM = 563, PASSWORD = 564, POSITION_SYM = 565, PROCEDURE = 566, RAND = 567, REPLACE = 568, RIGHT = 569, ROUND = 570, SECOND_SYM = 571, SHARE_SYM = 572, SUBSTRING = 573, SUBSTRING_INDEX = 574, TRIM = 575, UDA_CHAR_SUM = 576, UDA_FLOAT_SUM = 577, UDA_INT_SUM = 578, UDF_CHAR_FUNC = 579, UDF_FLOAT_FUNC = 580, UDF_INT_FUNC = 581, UNIQUE_USERS = 582, UNIX_TIMESTAMP = 583, USER = 584, WEEK_SYM = 585, WHEN_SYM = 586, WORK_SYM = 587, YEAR_MONTH_SYM = 588, YEAR_SYM = 589, YEARWEEK = 590, BENCHMARK_SYM = 591, END = 592, THEN_SYM = 593, SQL_BIG_TABLES = 594, SQL_BIG_SELECTS = 595, SQL_SELECT_LIMIT = 596, SQL_MAX_JOIN_SIZE = 597, SQL_LOG_BIN = 598, SQL_LOG_OFF = 599, SQL_LOG_UPDATE = 600, SQL_LOW_PRIORITY_UPDATES = 601, SQL_SMALL_RESULT = 602, SQL_BIG_RESULT = 603, SQL_BUFFER_RESULT = 604, SQL_WARNINGS = 605, SQL_AUTO_IS_NULL = 606, SQL_SAFE_UPDATES = 607, SQL_QUOTE_SHOW_CREATE = 608, SQL_SLAVE_SKIP_COUNTER = 609, NEG = 610 }; #endif #define END_OF_INPUT 258 #define EQ 259 #define EQUAL_SYM 260 #define GE 261 #define GT_SYM 262 #define LE 263 #define LT 264 #define NE 265 #define IS 266 #define SHIFT_LEFT 267 #define SHIFT_RIGHT 268 #define SET_VAR 269 #define AVG_SYM 270 #define COUNT_SYM 271 #define MAX_SYM 272 #define MIN_SYM 273 #define SUM_SYM 274 #define STD_SYM 275 #define ADD 276 #define ALTER 277 #define AFTER_SYM 278 #define ANALYZE_SYM 279 #define BEGIN_SYM 280 #define CHANGE 281 #define COMMENT_SYM 282 #define COMMIT_SYM 283 #define CREATE 284 #define CROSS 285 #define DELETE_SYM 286 #define DO_SYM 287 #define DROP 288 #define INSERT 289 #define FLUSH_SYM 290 #define SELECT_SYM 291 #define MASTER_SYM 292 #define REPAIR 293 #define RESET_SYM 294 #define PURGE 295 #define SLAVE 296 #define START_SYM 297 #define STOP_SYM 298 #define TRUNCATE_SYM 299 #define ROLLBACK_SYM 300 #define OPTIMIZE 301 #define SHOW 302 #define UPDATE_SYM 303 #define KILL_SYM 304 #define LOAD 305 #define LOCK_SYM 306 #define LOCKS_SYM 307 #define UNLOCK_SYM 308 #define ACTION 309 #define AGGREGATE_SYM 310 #define ALL 311 #define AND 312 #define AS 313 #define ASC 314 #define AUTO_INC 315 #define AUTOCOMMIT 316 #define AVG_ROW_LENGTH 317 #define BACKUP_SYM 318 #define BERKELEY_DB_SYM 319 #define BINARY 320 #define BIT_SYM 321 #define BOOL_SYM 322 #define BOTH 323 #define BY 324 #define CASCADE 325 #define CHECKSUM_SYM 326 #define CHECK_SYM 327 #define COMMITTED_SYM 328 #define COLUMNS 329 #define COLUMN_SYM 330 #define CONCURRENT 331 #define CONSTRAINT 332 #define DATABASES 333 #define DATA_SYM 334 #define DEFAULT 335 #define DELAYED_SYM 336 #define DELAY_KEY_WRITE_SYM 337 #define DESC 338 #define DESCRIBE 339 #define DISTINCT 340 #define DYNAMIC_SYM 341 #define ENCLOSED 342 #define ESCAPED 343 #define ESCAPE_SYM 344 #define EXISTS 345 #define EXTENDED_SYM 346 #define FILE_SYM 347 #define FIRST_SYM 348 #define FIXED_SYM 349 #define FLOAT_NUM 350 #define FOREIGN 351 #define FROM 352 #define FULL 353 #define FULLTEXT_SYM 354 #define GEMINI_SYM 355 #define GEMINI_SPIN_RETRIES 356 #define GLOBAL_SYM 357 #define GRANT 358 #define GRANTS 359 #define GREATEST_SYM 360 #define GROUP 361 #define HAVING 362 #define HEAP_SYM 363 #define HEX_NUM 364 #define HIGH_PRIORITY 365 #define HOSTS_SYM 366 #define IDENT 367 #define IGNORE_SYM 368 #define INDEX 369 #define INFILE 370 #define INNER_SYM 371 #define INNOBASE_SYM 372 #define INTO 373 #define IN_SYM 374 #define ISOLATION 375 #define ISAM_SYM 376 #define JOIN_SYM 377 #define KEYS 378 #define KEY_SYM 379 #define LEADING 380 #define LEAST_SYM 381 #define LEVEL_SYM 382 #define LEX_HOSTNAME 383 #define LIKE 384 #define LINES 385 #define LOCAL_SYM 386 #define LOGS_SYM 387 #define LONG_NUM 388 #define LONG_SYM 389 #define LOW_PRIORITY 390 #define MASTER_HOST_SYM 391 #define MASTER_USER_SYM 392 #define MASTER_LOG_FILE_SYM 393 #define MASTER_LOG_POS_SYM 394 #define MASTER_PASSWORD_SYM 395 #define MASTER_PORT_SYM 396 #define MASTER_CONNECT_RETRY_SYM 397 #define MATCH 398 #define MAX_ROWS 399 #define MEDIUM_SYM 400 #define MERGE_SYM 401 #define MIN_ROWS 402 #define MYISAM_SYM 403 #define NATIONAL_SYM 404 #define NATURAL 405 #define NCHAR_SYM 406 #define NOT 407 #define FOREIGN_KEY_CHECKS 408 #define NO_SYM 409 #define NULL_SYM 410 #define NUM 411 #define ON 412 #define OPEN_SYM 413 #define OPTION 414 #define OPTIONALLY 415 #define OR 416 #define OR_OR_CONCAT 417 #define ORDER_SYM 418 #define OUTER 419 #define OUTFILE 420 #define DUMPFILE 421 #define PACK_KEYS_SYM 422 #define PARTIAL 423 #define PRIMARY_SYM 424 #define PRIVILEGES 425 #define PROCESS 426 #define PROCESSLIST_SYM 427 #define RAID_0_SYM 428 #define RAID_STRIPED_SYM 429 #define RAID_TYPE 430 #define RAID_CHUNKS 431 #define RAID_CHUNKSIZE 432 #define READ_SYM 433 #define REAL_NUM 434 #define REFERENCES 435 #define REGEXP 436 #define RELOAD 437 #define RENAME 438 #define REPEATABLE_SYM 439 #define RESTORE_SYM 440 #define RESTRICT 441 #define REVOKE 442 #define ROWS_SYM 443 #define ROW_FORMAT_SYM 444 #define ROW_SYM 445 #define SET 446 #define SERIALIZABLE_SYM 447 #define SESSION_SYM 448 #define SHUTDOWN 449 #define STARTING 450 #define STATUS_SYM 451 #define STRAIGHT_JOIN 452 #define TABLES 453 #define TABLE_SYM 454 #define TEMPORARY 455 #define TERMINATED 456 #define TEXT_STRING 457 #define TO_SYM 458 #define TRAILING 459 #define TRANSACTION_SYM 460 #define TYPE_SYM 461 #define FUNC_ARG0 462 #define FUNC_ARG1 463 #define FUNC_ARG2 464 #define FUNC_ARG3 465 #define UDF_RETURNS_SYM 466 #define UDF_SONAME_SYM 467 #define UDF_SYM 468 #define UNCOMMITTED_SYM 469 #define UNION_SYM 470 #define UNIQUE_SYM 471 #define UNIQUE_CHECKS 472 #define USAGE 473 #define USE_SYM 474 #define USING 475 #define VALUES 476 #define VARIABLES 477 #define WHERE 478 #define WITH 479 #define WRITE_SYM 480 #define COMPRESSED_SYM 481 #define BIGINT 482 #define BLOB_SYM 483 #define CHAR_SYM 484 #define CHANGED 485 #define COALESCE 486 #define DATETIME 487 #define DATE_SYM 488 #define DECIMAL_SYM 489 #define DOUBLE_SYM 490 #define ENUM 491 #define FAST_SYM 492 #define FLOAT_SYM 493 #define INT_SYM 494 #define LIMIT 495 #define LONGBLOB 496 #define LONGTEXT 497 #define MEDIUMBLOB 498 #define MEDIUMINT 499 #define MEDIUMTEXT 500 #define NUMERIC_SYM 501 #define PRECISION 502 #define QUICK 503 #define REAL 504 #define SMALLINT 505 #define STRING_SYM 506 #define TEXT_SYM 507 #define TIMESTAMP 508 #define TIME_SYM 509 #define TINYBLOB 510 #define TINYINT 511 #define TINYTEXT 512 #define UNSIGNED 513 #define VARBINARY 514 #define VARCHAR 515 #define VARYING 516 #define ZEROFILL 517 #define AGAINST 518 #define ATAN 519 #define BETWEEN_SYM 520 #define BIT_AND 521 #define BIT_OR 522 #define CASE_SYM 523 #define CONCAT 524 #define CONCAT_WS 525 #define CURDATE 526 #define CURTIME 527 #define DATABASE 528 #define DATE_ADD_INTERVAL 529 #define DATE_SUB_INTERVAL 530 #define DAY_HOUR_SYM 531 #define DAY_MINUTE_SYM 532 #define DAY_SECOND_SYM 533 #define DAY_SYM 534 #define DECODE_SYM 535 #define ELSE 536 #define ELT_FUNC 537 #define ENCODE_SYM 538 #define ENCRYPT 539 #define EXPORT_SET 540 #define EXTRACT_SYM 541 #define FIELD_FUNC 542 #define FORMAT_SYM 543 #define FOR_SYM 544 #define FROM_UNIXTIME 545 #define GROUP_UNIQUE_USERS 546 #define HOUR_MINUTE_SYM 547 #define HOUR_SECOND_SYM 548 #define HOUR_SYM 549 #define IDENTIFIED_SYM 550 #define IF 551 #define INSERT_ID 552 #define INTERVAL_SYM 553 #define LAST_INSERT_ID 554 #define LEFT 555 #define LOCATE 556 #define MAKE_SET_SYM 557 #define MINUTE_SECOND_SYM 558 #define MINUTE_SYM 559 #define MODE_SYM 560 #define MODIFY_SYM 561 #define MONTH_SYM 562 #define NOW_SYM 563 #define PASSWORD 564 #define POSITION_SYM 565 #define PROCEDURE 566 #define RAND 567 #define REPLACE 568 #define RIGHT 569 #define ROUND 570 #define SECOND_SYM 571 #define SHARE_SYM 572 #define SUBSTRING 573 #define SUBSTRING_INDEX 574 #define TRIM 575 #define UDA_CHAR_SUM 576 #define UDA_FLOAT_SUM 577 #define UDA_INT_SUM 578 #define UDF_CHAR_FUNC 579 #define UDF_FLOAT_FUNC 580 #define UDF_INT_FUNC 581 #define UNIQUE_USERS 582 #define UNIX_TIMESTAMP 583 #define USER 584 #define WEEK_SYM 585 #define WHEN_SYM 586 #define WORK_SYM 587 #define YEAR_MONTH_SYM 588 #define YEAR_SYM 589 #define YEARWEEK 590 #define BENCHMARK_SYM 591 #define END 592 #define THEN_SYM 593 #define SQL_BIG_TABLES 594 #define SQL_BIG_SELECTS 595 #define SQL_SELECT_LIMIT 596 #define SQL_MAX_JOIN_SIZE 597 #define SQL_LOG_BIN 598 #define SQL_LOG_OFF 599 #define SQL_LOG_UPDATE 600 #define SQL_LOW_PRIORITY_UPDATES 601 #define SQL_SMALL_RESULT 602 #define SQL_BIG_RESULT 603 #define SQL_BUFFER_RESULT 604 #define SQL_WARNINGS 605 #define SQL_AUTO_IS_NULL 606 #define SQL_SAFE_UPDATES 607 #define SQL_QUOTE_SHOW_CREATE 608 #define SQL_SLAVE_SKIP_COUNTER 609 #define NEG 610 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 42 "sql_yacc.yy" typedef union YYSTYPE { int num; ulong ulong_num; ulonglong ulonglong_num; LEX_STRING lex_str; LEX_STRING *lex_str_ptr; LEX_SYMBOL symbol; Table_ident *table; char *simple_string; Item *item; List *item_list; List *string_list; Key::Keytype key_type; enum db_type db_type; enum row_type row_type; enum enum_tx_isolation tx_isolation; String *string; key_part_spec *key_part; TABLE_LIST *table_list; udf_func *udf; interval_type interval; LEX_USER *lex_user; enum Item_udftype udf_type; } YYSTYPE; /* Line 1275 of yacc.c. */ #line 772 "y.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif