1 /* A Bison parser, made by GNU Bison 3.3.2.  */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation,
6    Inc.
7 
8    This program is free software: you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation, either version 3 of the License, or
11    (at your option) any later version.
12 
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17 
18    You should have received a copy of the GNU General Public License
19    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20 
21 /* As a special exception, you may create a larger work that contains
22    part or all of the Bison parser skeleton and distribute that work
23    under terms of your choice, so long as that work isn't itself a
24    parser generator using the skeleton or a modified version thereof
25    as a parser skeleton.  Alternatively, if you modify or redistribute
26    the parser skeleton itself, you may (at your option) remove this
27    special exception, which will cause the skeleton and the resulting
28    Bison output files to be licensed under the GNU General Public
29    License without this special exception.
30 
31    This special exception was added by the Free Software Foundation in
32    version 2.2 of Bison.  */
33 
34 /* Undocumented macros, especially those whose name start with YY_,
35    are private implementation details.  Do not rely on them.  */
36 
37 #ifndef YY_BASE_YY_PREPROC_H_INCLUDED
38 # define YY_BASE_YY_PREPROC_H_INCLUDED
39 /* Debug traces.  */
40 #ifndef YYDEBUG
41 # define YYDEBUG 0
42 #endif
43 #if YYDEBUG
44 extern int base_yydebug;
45 #endif
46 
47 /* Token type.  */
48 #ifndef YYTOKENTYPE
49 # define YYTOKENTYPE
50   enum yytokentype
51   {
52     SQL_ALLOCATE = 258,
53     SQL_AUTOCOMMIT = 259,
54     SQL_BOOL = 260,
55     SQL_BREAK = 261,
56     SQL_CARDINALITY = 262,
57     SQL_CONNECT = 263,
58     SQL_COUNT = 264,
59     SQL_DATETIME_INTERVAL_CODE = 265,
60     SQL_DATETIME_INTERVAL_PRECISION = 266,
61     SQL_DESCRIBE = 267,
62     SQL_DESCRIPTOR = 268,
63     SQL_DISCONNECT = 269,
64     SQL_FOUND = 270,
65     SQL_FREE = 271,
66     SQL_GET = 272,
67     SQL_GO = 273,
68     SQL_GOTO = 274,
69     SQL_IDENTIFIED = 275,
70     SQL_INDICATOR = 276,
71     SQL_KEY_MEMBER = 277,
72     SQL_LENGTH = 278,
73     SQL_LONG = 279,
74     SQL_NULLABLE = 280,
75     SQL_OCTET_LENGTH = 281,
76     SQL_OPEN = 282,
77     SQL_OUTPUT = 283,
78     SQL_REFERENCE = 284,
79     SQL_RETURNED_LENGTH = 285,
80     SQL_RETURNED_OCTET_LENGTH = 286,
81     SQL_SCALE = 287,
82     SQL_SECTION = 288,
83     SQL_SHORT = 289,
84     SQL_SIGNED = 290,
85     SQL_SQLERROR = 291,
86     SQL_SQLPRINT = 292,
87     SQL_SQLWARNING = 293,
88     SQL_START = 294,
89     SQL_STOP = 295,
90     SQL_STRUCT = 296,
91     SQL_UNSIGNED = 297,
92     SQL_VAR = 298,
93     SQL_WHENEVER = 299,
94     S_ADD = 300,
95     S_AND = 301,
96     S_ANYTHING = 302,
97     S_AUTO = 303,
98     S_CONST = 304,
99     S_DEC = 305,
100     S_DIV = 306,
101     S_DOTPOINT = 307,
102     S_EQUAL = 308,
103     S_EXTERN = 309,
104     S_INC = 310,
105     S_LSHIFT = 311,
106     S_MEMPOINT = 312,
107     S_MEMBER = 313,
108     S_MOD = 314,
109     S_MUL = 315,
110     S_NEQUAL = 316,
111     S_OR = 317,
112     S_REGISTER = 318,
113     S_RSHIFT = 319,
114     S_STATIC = 320,
115     S_SUB = 321,
116     S_VOLATILE = 322,
117     S_TYPEDEF = 323,
118     CSTRING = 324,
119     CVARIABLE = 325,
120     CPP_LINE = 326,
121     IP = 327,
122     IDENT = 328,
123     UIDENT = 329,
124     FCONST = 330,
125     SCONST = 331,
126     USCONST = 332,
127     BCONST = 333,
128     XCONST = 334,
129     Op = 335,
130     ICONST = 336,
131     PARAM = 337,
132     TYPECAST = 338,
133     DOT_DOT = 339,
134     COLON_EQUALS = 340,
135     EQUALS_GREATER = 341,
136     LESS_EQUALS = 342,
137     GREATER_EQUALS = 343,
138     NOT_EQUALS = 344,
139     ABORT_P = 345,
140     ABSOLUTE_P = 346,
141     ACCESS = 347,
142     ACTION = 348,
143     ADD_P = 349,
144     ADMIN = 350,
145     AFTER = 351,
146     AGGREGATE = 352,
147     ALL = 353,
148     ALSO = 354,
149     ALTER = 355,
150     ALWAYS = 356,
151     ANALYSE = 357,
152     ANALYZE = 358,
153     AND = 359,
154     ANY = 360,
155     ARRAY = 361,
156     AS = 362,
157     ASC = 363,
158     ASSERTION = 364,
159     ASSIGNMENT = 365,
160     ASYMMETRIC = 366,
161     AT = 367,
162     ATTACH = 368,
163     ATTRIBUTE = 369,
164     AUTHORIZATION = 370,
165     BACKWARD = 371,
166     BEFORE = 372,
167     BEGIN_P = 373,
168     BETWEEN = 374,
169     BIGINT = 375,
170     BINARY = 376,
171     BIT = 377,
172     BOOLEAN_P = 378,
173     BOTH = 379,
174     BY = 380,
175     CACHE = 381,
176     CALL = 382,
177     CALLED = 383,
178     CASCADE = 384,
179     CASCADED = 385,
180     CASE = 386,
181     CAST = 387,
182     CATALOG_P = 388,
183     CHAIN = 389,
184     CHAR_P = 390,
185     CHARACTER = 391,
186     CHARACTERISTICS = 392,
187     CHECK = 393,
188     CHECKPOINT = 394,
189     CLASS = 395,
190     CLOSE = 396,
191     CLUSTER = 397,
192     COALESCE = 398,
193     COLLATE = 399,
194     COLLATION = 400,
195     COLUMN = 401,
196     COLUMNS = 402,
197     COMMENT = 403,
198     COMMENTS = 404,
199     COMMIT = 405,
200     COMMITTED = 406,
201     CONCURRENTLY = 407,
202     CONFIGURATION = 408,
203     CONFLICT = 409,
204     CONNECTION = 410,
205     CONSTRAINT = 411,
206     CONSTRAINTS = 412,
207     CONTENT_P = 413,
208     CONTINUE_P = 414,
209     CONVERSION_P = 415,
210     COPY = 416,
211     COST = 417,
212     CREATE = 418,
213     CROSS = 419,
214     CSV = 420,
215     CUBE = 421,
216     CURRENT_P = 422,
217     CURRENT_CATALOG = 423,
218     CURRENT_DATE = 424,
219     CURRENT_ROLE = 425,
220     CURRENT_SCHEMA = 426,
221     CURRENT_TIME = 427,
222     CURRENT_TIMESTAMP = 428,
223     CURRENT_USER = 429,
224     CURSOR = 430,
225     CYCLE = 431,
226     DATA_P = 432,
227     DATABASE = 433,
228     DAY_P = 434,
229     DEALLOCATE = 435,
230     DEC = 436,
231     DECIMAL_P = 437,
232     DECLARE = 438,
233     DEFAULT = 439,
234     DEFAULTS = 440,
235     DEFERRABLE = 441,
236     DEFERRED = 442,
237     DEFINER = 443,
238     DELETE_P = 444,
239     DELIMITER = 445,
240     DELIMITERS = 446,
241     DEPENDS = 447,
242     DESC = 448,
243     DETACH = 449,
244     DICTIONARY = 450,
245     DISABLE_P = 451,
246     DISCARD = 452,
247     DISTINCT = 453,
248     DO = 454,
249     DOCUMENT_P = 455,
250     DOMAIN_P = 456,
251     DOUBLE_P = 457,
252     DROP = 458,
253     EACH = 459,
254     ELSE = 460,
255     ENABLE_P = 461,
256     ENCODING = 462,
257     ENCRYPTED = 463,
258     END_P = 464,
259     ENUM_P = 465,
260     ESCAPE = 466,
261     EVENT = 467,
262     EXCEPT = 468,
263     EXCLUDE = 469,
264     EXCLUDING = 470,
265     EXCLUSIVE = 471,
266     EXECUTE = 472,
267     EXISTS = 473,
268     EXPLAIN = 474,
269     EXPRESSION = 475,
270     EXTENSION = 476,
271     EXTERNAL = 477,
272     EXTRACT = 478,
273     FALSE_P = 479,
274     FAMILY = 480,
275     FETCH = 481,
276     FILTER = 482,
277     FIRST_P = 483,
278     FLOAT_P = 484,
279     FOLLOWING = 485,
280     FOR = 486,
281     FORCE = 487,
282     FOREIGN = 488,
283     FORWARD = 489,
284     FREEZE = 490,
285     FROM = 491,
286     FULL = 492,
287     FUNCTION = 493,
288     FUNCTIONS = 494,
289     GENERATED = 495,
290     GLOBAL = 496,
291     GRANT = 497,
292     GRANTED = 498,
293     GREATEST = 499,
294     GROUP_P = 500,
295     GROUPING = 501,
296     GROUPS = 502,
297     HANDLER = 503,
298     HAVING = 504,
299     HEADER_P = 505,
300     HOLD = 506,
301     HOUR_P = 507,
302     IDENTITY_P = 508,
303     IF_P = 509,
304     ILIKE = 510,
305     IMMEDIATE = 511,
306     IMMUTABLE = 512,
307     IMPLICIT_P = 513,
308     IMPORT_P = 514,
309     IN_P = 515,
310     INCLUDE = 516,
311     INCLUDING = 517,
312     INCREMENT = 518,
313     INDEX = 519,
314     INDEXES = 520,
315     INHERIT = 521,
316     INHERITS = 522,
317     INITIALLY = 523,
318     INLINE_P = 524,
319     INNER_P = 525,
320     INOUT = 526,
321     INPUT_P = 527,
322     INSENSITIVE = 528,
323     INSERT = 529,
324     INSTEAD = 530,
325     INT_P = 531,
326     INTEGER = 532,
327     INTERSECT = 533,
328     INTERVAL = 534,
329     INTO = 535,
330     INVOKER = 536,
331     IS = 537,
332     ISNULL = 538,
333     ISOLATION = 539,
334     JOIN = 540,
335     KEY = 541,
336     LABEL = 542,
337     LANGUAGE = 543,
338     LARGE_P = 544,
339     LAST_P = 545,
340     LATERAL_P = 546,
341     LEADING = 547,
342     LEAKPROOF = 548,
343     LEAST = 549,
344     LEFT = 550,
345     LEVEL = 551,
346     LIKE = 552,
347     LIMIT = 553,
348     LISTEN = 554,
349     LOAD = 555,
350     LOCAL = 556,
351     LOCALTIME = 557,
352     LOCALTIMESTAMP = 558,
353     LOCATION = 559,
354     LOCK_P = 560,
355     LOCKED = 561,
356     LOGGED = 562,
357     MAPPING = 563,
358     MATCH = 564,
359     MATERIALIZED = 565,
360     MAXVALUE = 566,
361     METHOD = 567,
362     MINUTE_P = 568,
363     MINVALUE = 569,
364     MODE = 570,
365     MONTH_P = 571,
366     MOVE = 572,
367     NAME_P = 573,
368     NAMES = 574,
369     NATIONAL = 575,
370     NATURAL = 576,
371     NCHAR = 577,
372     NEW = 578,
373     NEXT = 579,
374     NFC = 580,
375     NFD = 581,
376     NFKC = 582,
377     NFKD = 583,
378     NO = 584,
379     NONE = 585,
380     NORMALIZE = 586,
381     NORMALIZED = 587,
382     NOT = 588,
383     NOTHING = 589,
384     NOTIFY = 590,
385     NOTNULL = 591,
386     NOWAIT = 592,
387     NULL_P = 593,
388     NULLIF = 594,
389     NULLS_P = 595,
390     NUMERIC = 596,
391     OBJECT_P = 597,
392     OF = 598,
393     OFF = 599,
394     OFFSET = 600,
395     OIDS = 601,
396     OLD = 602,
397     ON = 603,
398     ONLY = 604,
399     OPERATOR = 605,
400     OPTION = 606,
401     OPTIONS = 607,
402     OR = 608,
403     ORDER = 609,
404     ORDINALITY = 610,
405     OTHERS = 611,
406     OUT_P = 612,
407     OUTER_P = 613,
408     OVER = 614,
409     OVERLAPS = 615,
410     OVERLAY = 616,
411     OVERRIDING = 617,
412     OWNED = 618,
413     OWNER = 619,
414     PARALLEL = 620,
415     PARSER = 621,
416     PARTIAL = 622,
417     PARTITION = 623,
418     PASSING = 624,
419     PASSWORD = 625,
420     PLACING = 626,
421     PLANS = 627,
422     POLICY = 628,
423     POSITION = 629,
424     PRECEDING = 630,
425     PRECISION = 631,
426     PRESERVE = 632,
427     PREPARE = 633,
428     PREPARED = 634,
429     PRIMARY = 635,
430     PRIOR = 636,
431     PRIVILEGES = 637,
432     PROCEDURAL = 638,
433     PROCEDURE = 639,
434     PROCEDURES = 640,
435     PROGRAM = 641,
436     PUBLICATION = 642,
437     QUOTE = 643,
438     RANGE = 644,
439     READ = 645,
440     REAL = 646,
441     REASSIGN = 647,
442     RECHECK = 648,
443     RECURSIVE = 649,
444     REF = 650,
445     REFERENCES = 651,
446     REFERENCING = 652,
447     REFRESH = 653,
448     REINDEX = 654,
449     RELATIVE_P = 655,
450     RELEASE = 656,
451     RENAME = 657,
452     REPEATABLE = 658,
453     REPLACE = 659,
454     REPLICA = 660,
455     RESET = 661,
456     RESTART = 662,
457     RESTRICT = 663,
458     RETURNING = 664,
459     RETURNS = 665,
460     REVOKE = 666,
461     RIGHT = 667,
462     ROLE = 668,
463     ROLLBACK = 669,
464     ROLLUP = 670,
465     ROUTINE = 671,
466     ROUTINES = 672,
467     ROW = 673,
468     ROWS = 674,
469     RULE = 675,
470     SAVEPOINT = 676,
471     SCHEMA = 677,
472     SCHEMAS = 678,
473     SCROLL = 679,
474     SEARCH = 680,
475     SECOND_P = 681,
476     SECURITY = 682,
477     SELECT = 683,
478     SEQUENCE = 684,
479     SEQUENCES = 685,
480     SERIALIZABLE = 686,
481     SERVER = 687,
482     SESSION = 688,
483     SESSION_USER = 689,
484     SET = 690,
485     SETS = 691,
486     SETOF = 692,
487     SHARE = 693,
488     SHOW = 694,
489     SIMILAR = 695,
490     SIMPLE = 696,
491     SKIP = 697,
492     SMALLINT = 698,
493     SNAPSHOT = 699,
494     SOME = 700,
495     SQL_P = 701,
496     STABLE = 702,
497     STANDALONE_P = 703,
498     START = 704,
499     STATEMENT = 705,
500     STATISTICS = 706,
501     STDIN = 707,
502     STDOUT = 708,
503     STORAGE = 709,
504     STORED = 710,
505     STRICT_P = 711,
506     STRIP_P = 712,
507     SUBSCRIPTION = 713,
508     SUBSTRING = 714,
509     SUPPORT = 715,
510     SYMMETRIC = 716,
511     SYSID = 717,
512     SYSTEM_P = 718,
513     TABLE = 719,
514     TABLES = 720,
515     TABLESAMPLE = 721,
516     TABLESPACE = 722,
517     TEMP = 723,
518     TEMPLATE = 724,
519     TEMPORARY = 725,
520     TEXT_P = 726,
521     THEN = 727,
522     TIES = 728,
523     TIME = 729,
524     TIMESTAMP = 730,
525     TO = 731,
526     TRAILING = 732,
527     TRANSACTION = 733,
528     TRANSFORM = 734,
529     TREAT = 735,
530     TRIGGER = 736,
531     TRIM = 737,
532     TRUE_P = 738,
533     TRUNCATE = 739,
534     TRUSTED = 740,
535     TYPE_P = 741,
536     TYPES_P = 742,
537     UESCAPE = 743,
538     UNBOUNDED = 744,
539     UNCOMMITTED = 745,
540     UNENCRYPTED = 746,
541     UNION = 747,
542     UNIQUE = 748,
543     UNKNOWN = 749,
544     UNLISTEN = 750,
545     UNLOGGED = 751,
546     UNTIL = 752,
547     UPDATE = 753,
548     USER = 754,
549     USING = 755,
550     VACUUM = 756,
551     VALID = 757,
552     VALIDATE = 758,
553     VALIDATOR = 759,
554     VALUE_P = 760,
555     VALUES = 761,
556     VARCHAR = 762,
557     VARIADIC = 763,
558     VARYING = 764,
559     VERBOSE = 765,
560     VERSION_P = 766,
561     VIEW = 767,
562     VIEWS = 768,
563     VOLATILE = 769,
564     WHEN = 770,
565     WHERE = 771,
566     WHITESPACE_P = 772,
567     WINDOW = 773,
568     WITH = 774,
569     WITHIN = 775,
570     WITHOUT = 776,
571     WORK = 777,
572     WRAPPER = 778,
573     WRITE = 779,
574     XML_P = 780,
575     XMLATTRIBUTES = 781,
576     XMLCONCAT = 782,
577     XMLELEMENT = 783,
578     XMLEXISTS = 784,
579     XMLFOREST = 785,
580     XMLNAMESPACES = 786,
581     XMLPARSE = 787,
582     XMLPI = 788,
583     XMLROOT = 789,
584     XMLSERIALIZE = 790,
585     XMLTABLE = 791,
586     YEAR_P = 792,
587     YES_P = 793,
588     ZONE = 794,
589     NOT_LA = 795,
590     NULLS_LA = 796,
591     WITH_LA = 797,
592     POSTFIXOP = 798,
593     UMINUS = 799
594   };
595 #endif
596 
597 /* Value type.  */
598 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
599 
600 union YYSTYPE
601 {
602 #line 586 "preproc.y" /* yacc.c:1921  */
603 
604 	double	dval;
605 	char	*str;
606 	int		ival;
607 	struct	when		action;
608 	struct	index		index;
609 	int		tagname;
610 	struct	this_type	type;
611 	enum	ECPGttype	type_enum;
612 	enum	ECPGdtype	dtype_enum;
613 	struct	fetch_desc	descriptor;
614 	struct  su_symbol	struct_union;
615 	struct	prep		prep;
616 	struct	exec		exec;
617 
618 #line 619 "preproc.h" /* yacc.c:1921  */
619 };
620 
621 typedef union YYSTYPE YYSTYPE;
622 # define YYSTYPE_IS_TRIVIAL 1
623 # define YYSTYPE_IS_DECLARED 1
624 #endif
625 
626 /* Location type.  */
627 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
628 typedef struct YYLTYPE YYLTYPE;
629 struct YYLTYPE
630 {
631   int first_line;
632   int first_column;
633   int last_line;
634   int last_column;
635 };
636 # define YYLTYPE_IS_DECLARED 1
637 # define YYLTYPE_IS_TRIVIAL 1
638 #endif
639 
640 
641 extern YYSTYPE base_yylval;
642 extern YYLTYPE base_yylloc;
643 int base_yyparse (void);
644 
645 #endif /* !YY_BASE_YY_PREPROC_H_INCLUDED  */
646