preproc.c
上传用户:blenddy
上传日期:2007-01-07
资源大小:6495k
文件大小:764k
源码类别:

数据库系统

开发平台:

Unix_Linux

  1.    211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
  2.    221,   222,   223,   224,   225,   226,   227,   228,   229,   230,
  3.    231,   232,   233,   234,   235,   236,   237,   238,   239,    -1,
  4.    241,    -1,   243,   244,   245,   246,   247,   248,   249,   250,
  5.    251,   252,   253,   254,    -1,   256,    -1,   258,   259,   260,
  6.    261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
  7.    271,   272,   273,   274,   275,   276,    -1,   278,   279,   280,
  8.    281,   282,    -1,     3,   285,     5,     6,     7,     8,    -1,
  9.     10,    11,    12,    -1,    14,    -1,    16,    17,    18,    19,
  10.     20,    21,    22,    23,    24,    25,    26,    -1,    28,    29,
  11.     30,    31,    32,    33,    -1,    35,    36,    37,    38,    39,
  12.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  13.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  14.     -1,    61,    62,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  15.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    77,    78,    -1,
  16.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  17.     -1,    -1,    -1,    -1,    94,    95,    -1,    -1,    -1,    -1,
  18.     -1,   101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  19.     -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  20.    120,    -1,    -1,   123,    -1,    -1,    -1,    -1,    -1,    -1,
  21.     -1,   131,   132,    -1,    -1,    -1,    -1,    -1,   138,   139,
  22.    140,    -1,   142,    -1,   144,   145,    -1,    -1,    -1,    -1,
  23.    150,   151,    -1,   153,   154,    -1,    -1,    -1,    -1,    -1,
  24.     -1,    -1,   162,   163,    -1,    -1,   166,    -1,   168,    -1,
  25.     -1,    -1,   172,   173,    -1,    -1,    -1,    -1,    -1,    -1,
  26.     -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
  27.     -1,    -1,    -1,    -1,    -1,    -1,   196,    -1,    -1,    -1,
  28.     -1,    -1,    -1,   203,   204,   205,   206,   207,   208,    -1,
  29.    210,   211,   212,    -1,   214,   215,    -1,   217,    -1,    -1,
  30.    220,   221,   222,   223,   224,    -1,   226,   227,   228,    -1,
  31.     -1,   231,   232,   233,   234,   235,   236,   237,   238,   239,
  32.     -1,    -1,    -1,    -1,   244,    -1,   246,   247,   248,    -1,
  33.     -1,   251,   252,    -1,   254,    -1,   256,    -1,   258,   259,
  34.    260,   261,   262,    -1,   264,   265,   266,   267,   268,    -1,
  35.    270,    -1,   272,   273,   274,   275,   276,    -1,    -1,   279,
  36.     -1,   281,   282,    -1,     3,   285,     5,     6,     7,     8,
  37.     -1,    10,    11,    12,    -1,    14,    -1,    16,    17,    18,
  38.     19,    20,    21,    22,    23,    24,    25,    26,    -1,    28,
  39.     29,    30,    31,    32,    33,    -1,    35,    36,    37,    38,
  40.     39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  41.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  42.     -1,    -1,    61,    62,    -1,    -1,    -1,    -1,    -1,    -1,
  43.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  44.     79,    -1,    -1,    -1,    -1,    -1,    85,    -1,    -1,    -1,
  45.     -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,
  46.     -1,    -1,   101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  47.     -1,    -1,    -1,    -1,   113,    -1,    -1,    -1,    -1,    -1,
  48.     -1,   120,    -1,    -1,   123,    -1,    -1,    -1,    -1,    -1,
  49.     -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,   138,
  50.    139,   140,    -1,    -1,    -1,    -1,   145,    -1,    -1,    -1,
  51.     -1,    -1,   151,    -1,   153,   154,    -1,    -1,    -1,    -1,
  52.     -1,    -1,   161,   162,   163,    -1,    -1,   166,    -1,   168,
  53.     -1,    -1,    -1,   172,   173,    -1,    -1,    -1,    -1,    -1,
  54.     -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
  55.     -1,    -1,   191,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  56.     -1,    -1,    -1,    -1,   203,   204,   205,   206,   207,   208,
  57.     -1,   210,   211,   212,    -1,   214,   215,    -1,   217,    -1,
  58.     -1,   220,   221,   222,   223,   224,    -1,   226,   227,   228,
  59.     -1,    -1,   231,   232,   233,   234,   235,   236,   237,   238,
  60.    239,    -1,    -1,    -1,    -1,   244,    -1,   246,   247,   248,
  61.     -1,    -1,   251,   252,    -1,   254,    -1,   256,    -1,   258,
  62.    259,   260,   261,   262,    -1,   264,   265,   266,   267,   268,
  63.     -1,   270,    -1,   272,   273,   274,   275,   276,    -1,    -1,
  64.    279,    -1,   281,   282,    -1,    -1,   285,     3,     4,     5,
  65.      6,     7,     8,     9,    10,    11,    12,    -1,    14,    -1,
  66.     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
  67.     26,    -1,    28,    29,    30,    31,    32,    33,    -1,    35,
  68.     36,    37,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,
  69.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  70.     -1,    -1,    -1,    -1,    -1,    61,    62,    -1,    -1,    -1,
  71.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  72.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  73.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
  74.     -1,    -1,    -1,    -1,    -1,   101,    -1,    -1,    -1,    -1,
  75.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  76.     -1,    -1,    -1,    -1,   120,    -1,    -1,   123,    -1,    -1,
  77.     -1,    -1,    -1,    -1,    -1,   131,   132,    -1,    -1,    -1,
  78.     -1,    -1,   138,   139,   140,   141,    -1,    -1,    -1,   145,
  79.     -1,    -1,    -1,    -1,    -1,   151,    -1,   153,   154,    -1,
  80.     -1,    -1,    -1,    -1,    -1,    -1,   162,   163,    -1,    -1,
  81.    166,    -1,   168,    -1,    -1,    -1,   172,   173,    -1,    -1,
  82.     -1,    -1,    -1,    -1,    -1,   181,   182,   183,   184,    -1,
  83.     -1,   187,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  84.     -1,    -1,    -1,    -1,    -1,    -1,    -1,   203,   204,   205,
  85.    206,   207,   208,    -1,   210,   211,   212,    -1,   214,   215,
  86.     -1,   217,    -1,    -1,   220,   221,   222,   223,   224,    -1,
  87.    226,   227,   228,    -1,    -1,   231,   232,   233,   234,   235,
  88.    236,   237,   238,   239,    -1,    -1,    -1,    -1,   244,    -1,
  89.    246,   247,   248,    -1,    -1,   251,   252,    -1,   254,    -1,
  90.    256,    -1,   258,   259,   260,   261,   262,    -1,   264,   265,
  91.    266,   267,   268,    -1,   270,    -1,   272,   273,   274,   275,
  92.    276,    -1,    -1,   279,    -1,   281,   282,    -1,     3,   285,
  93.      5,     6,     7,     8,    -1,    10,    11,    12,    -1,    14,
  94.     -1,    16,    17,    18,    19,    20,    21,    22,    23,    24,
  95.     25,    26,    -1,    28,    29,    30,    31,    32,    33,    -1,
  96.     35,    36,    37,    38,    39,    -1,    -1,    -1,    -1,    -1,
  97.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  98.     -1,    -1,    -1,    -1,    -1,    -1,    61,    62,    -1,    -1,
  99.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  100.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  101.     -1,    -1,    -1,    88,    -1,    -1,    -1,    -1,    -1,    94,
  102.     -1,    -1,    -1,    -1,    -1,    -1,   101,    -1,    -1,    -1,
  103.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  104.     -1,    -1,    -1,    -1,    -1,   120,    -1,    -1,   123,    -1,
  105.     -1,    -1,    -1,    -1,    -1,    -1,   131,   132,    -1,    -1,
  106.     -1,    -1,    -1,   138,   139,   140,    -1,    -1,    -1,    -1,
  107.    145,    -1,    -1,    -1,    -1,    -1,   151,    -1,   153,   154,
  108.     -1,    -1,    -1,    -1,    -1,    -1,    -1,   162,   163,    -1,
  109.     -1,   166,    -1,   168,    -1,    -1,    -1,   172,   173,    -1,
  110.     -1,    -1,    -1,    -1,    -1,    -1,   181,   182,   183,   184,
  111.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  112.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   203,   204,
  113.    205,   206,   207,   208,    -1,   210,   211,   212,    -1,   214,
  114.    215,    -1,   217,    -1,    -1,   220,   221,   222,   223,   224,
  115.     -1,   226,   227,   228,    -1,    -1,   231,   232,   233,   234,
  116.    235,   236,   237,   238,   239,    -1,    -1,    -1,    -1,   244,
  117.     -1,   246,   247,   248,    -1,   250,   251,   252,    -1,   254,
  118.     -1,   256,    -1,   258,   259,   260,   261,   262,    -1,   264,
  119.    265,   266,   267,   268,    -1,   270,    -1,   272,   273,   274,
  120.    275,   276,    -1,    -1,   279,    -1,   281,   282,    -1,     3,
  121.    285,     5,     6,     7,     8,    -1,    10,    11,    12,    -1,
  122.     14,    -1,    16,    17,    18,    19,    20,    21,    22,    23,
  123.     24,    25,    26,    -1,    28,    29,    30,    31,    32,    33,
  124.     -1,    35,    36,    37,    38,    39,    -1,    -1,    -1,    -1,
  125.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  126.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    61,    62,    -1,
  127.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  128.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  129.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  130.     94,    -1,    -1,    -1,    -1,    -1,    -1,   101,    -1,    -1,
  131.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  132.     -1,    -1,    -1,    -1,   118,    -1,   120,    -1,    -1,   123,
  133.     -1,    -1,    -1,    -1,    -1,    -1,    -1,   131,   132,    -1,
  134.     -1,    -1,    -1,    -1,   138,   139,   140,    -1,    -1,    -1,
  135.     -1,   145,    -1,    -1,    -1,    -1,    -1,   151,    -1,   153,
  136.    154,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   162,   163,
  137.     -1,   165,   166,    -1,   168,    -1,    -1,    -1,   172,   173,
  138.     -1,    -1,    -1,    -1,    -1,    -1,    -1,   181,   182,   183,
  139.    184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  140.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   203,
  141.    204,   205,   206,   207,   208,    -1,   210,   211,   212,    -1,
  142.    214,   215,    -1,   217,    -1,    -1,   220,   221,   222,   223,
  143.    224,    -1,   226,   227,   228,    -1,    -1,   231,   232,   233,
  144.    234,   235,   236,   237,   238,   239,    -1,    -1,    -1,    -1,
  145.    244,    -1,   246,   247,   248,    -1,    -1,   251,   252,    -1,
  146.    254,    -1,   256,    -1,   258,   259,   260,   261,   262,    -1,
  147.    264,   265,   266,   267,   268,    -1,   270,    -1,   272,   273,
  148.    274,   275,   276,    -1,    -1,   279,    -1,   281,   282,    -1,
  149.      3,   285,     5,     6,     7,     8,    -1,    10,    11,    12,
  150.     -1,    14,    -1,    16,    17,    18,    19,    20,    21,    22,
  151.     23,    24,    25,    26,    -1,    28,    29,    30,    31,    32,
  152.     33,    -1,    35,    36,    37,    38,    39,    -1,    -1,    -1,
  153.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  154.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    61,    62,
  155.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  156.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  157.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  158.     -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,   101,    -1,
  159.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  160.     -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,    -1,    -1,
  161.    123,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   131,   132,
  162.     -1,    -1,    -1,    -1,    -1,   138,   139,   140,    -1,    -1,
  163.     -1,    -1,   145,    -1,    -1,    -1,    -1,    -1,   151,    -1,
  164.    153,   154,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   162,
  165.    163,    -1,    -1,   166,    -1,   168,    -1,    -1,    -1,   172,
  166.    173,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   181,   182,
  167.    183,   184,    -1,    -1,   187,    -1,    -1,    -1,    -1,    -1,
  168.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  169.    203,   204,   205,   206,   207,   208,    -1,   210,   211,   212,
  170.     -1,   214,   215,    -1,   217,    -1,    -1,   220,   221,   222,
  171.    223,   224,    -1,   226,   227,   228,    -1,    -1,   231,   232,
  172.    233,   234,   235,   236,   237,   238,   239,    -1,    -1,    -1,
  173.     -1,   244,    -1,   246,   247,   248,    -1,    -1,   251,   252,
  174.     -1,   254,    -1,   256,    -1,   258,   259,   260,   261,   262,
  175.     -1,   264,   265,   266,   267,   268,    -1,   270,    -1,   272,
  176.    273,   274,   275,   276,    -1,    -1,   279,    -1,   281,   282,
  177.     -1,     3,   285,     5,     6,     7,     8,    -1,    10,    11,
  178.     12,    -1,    14,    -1,    16,    17,    18,    19,    20,    21,
  179.     22,    23,    24,    25,    26,    -1,    28,    29,    30,    31,
  180.     32,    33,    -1,    35,    36,    37,    38,    39,    -1,    -1,
  181.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  182.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    61,
  183.     62,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  184.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  185.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  186.     -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,   101,
  187.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  188.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,    -1,
  189.     -1,   123,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   131,
  190.    132,    -1,    -1,    -1,    -1,    -1,   138,   139,   140,    -1,
  191.     -1,    -1,    -1,   145,    -1,    -1,    -1,    -1,    -1,   151,
  192.     -1,   153,   154,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  193.    162,   163,    -1,    -1,   166,    -1,   168,    -1,    -1,    -1,
  194.    172,   173,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   181,
  195.    182,   183,   184,    -1,    -1,   187,    -1,    -1,    -1,    -1,
  196.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  197.     -1,   203,   204,   205,   206,   207,   208,    -1,   210,   211,
  198.    212,    -1,   214,   215,    -1,   217,    -1,    -1,   220,   221,
  199.    222,   223,   224,    -1,   226,   227,   228,    -1,    -1,   231,
  200.    232,   233,   234,   235,   236,   237,   238,   239,    -1,    -1,
  201.     -1,    -1,   244,    -1,   246,   247,   248,    -1,    -1,   251,
  202.    252,    -1,   254,    -1,   256,    -1,   258,   259,   260,   261,
  203.    262,    -1,   264,   265,   266,   267,   268,    -1,   270,    -1,
  204.    272,   273,   274,   275,   276,    -1,    -1,   279,    -1,   281,
  205.    282,    -1,     3,   285,     5,     6,     7,     8,    -1,    10,
  206.     11,    12,    -1,    14,    -1,    16,    17,    18,    19,    20,
  207.     21,    22,    23,    24,    25,    26,    -1,    28,    29,    30,
  208.     31,    32,    33,    -1,    35,    36,    37,    38,    39,    -1,
  209.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  210.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  211.     61,    62,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  212.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  213.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  214.     -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,
  215.    101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  216.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,
  217.     -1,    -1,   123,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  218.    131,   132,    -1,    -1,    -1,    -1,    -1,   138,   139,   140,
  219.     -1,    -1,    -1,    -1,   145,    -1,    -1,    -1,    -1,    -1,
  220.    151,    -1,   153,   154,    -1,    -1,    -1,    -1,    -1,    -1,
  221.     -1,   162,   163,    -1,    -1,   166,    -1,   168,    -1,    -1,
  222.     -1,   172,   173,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  223.    181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
  224.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  225.     -1,    -1,   203,   204,   205,   206,   207,   208,    -1,   210,
  226.    211,   212,    -1,   214,   215,    -1,   217,    -1,    -1,   220,
  227.    221,   222,   223,   224,    -1,   226,   227,   228,    -1,    -1,
  228.    231,   232,   233,   234,   235,   236,   237,   238,   239,    -1,
  229.     -1,    -1,    -1,   244,    -1,   246,   247,   248,    -1,    -1,
  230.    251,   252,   253,   254,    -1,   256,    -1,   258,   259,   260,
  231.    261,   262,    -1,   264,   265,   266,   267,   268,    -1,   270,
  232.     -1,   272,   273,   274,   275,   276,    -1,    -1,   279,    -1,
  233.    281,   282,    -1,     3,   285,     5,     6,     7,     8,    -1,
  234.     10,    11,    12,    -1,    14,    -1,    16,    17,    18,    19,
  235.     20,    21,    22,    23,    24,    25,    26,    -1,    28,    29,
  236.     30,    31,    32,    33,    -1,    35,    36,    37,    38,    39,
  237.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  238.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  239.     -1,    61,    62,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  240.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  241.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  242.     -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,
  243.     -1,   101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  244.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  245.    120,    -1,    -1,   123,    -1,    -1,    -1,    -1,    -1,    -1,
  246.     -1,   131,   132,    -1,    -1,    -1,    -1,    -1,   138,   139,
  247.    140,    -1,    -1,    -1,    -1,   145,    -1,    -1,    -1,    -1,
  248.     -1,   151,    -1,   153,   154,    -1,    -1,    -1,    -1,    -1,
  249.     -1,    -1,   162,   163,    -1,    -1,   166,    -1,   168,    -1,
  250.     -1,    -1,   172,   173,    -1,    -1,    -1,    -1,    -1,    -1,
  251.     -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
  252.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  253.     -1,    -1,    -1,   203,   204,   205,   206,   207,   208,    -1,
  254.    210,   211,   212,    -1,   214,   215,    -1,   217,    -1,    -1,
  255.    220,   221,   222,   223,   224,    -1,   226,   227,   228,    -1,
  256.     -1,   231,   232,   233,   234,   235,   236,   237,   238,   239,
  257.     -1,    -1,    -1,    -1,   244,    -1,   246,   247,   248,    -1,
  258.     -1,   251,   252,   253,   254,    -1,   256,    -1,   258,   259,
  259.    260,   261,   262,    -1,   264,   265,   266,   267,   268,    -1,
  260.    270,    -1,   272,   273,   274,   275,   276,    -1,    -1,   279,
  261.     -1,   281,   282,    -1,     3,   285,     5,     6,     7,     8,
  262.     -1,    10,    11,    12,    -1,    14,    -1,    16,    17,    18,
  263.     19,    20,    21,    22,    23,    24,    25,    26,    -1,    28,
  264.     29,    30,    31,    32,    33,    -1,    35,    36,    37,    38,
  265.     39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  266.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  267.     -1,    -1,    61,    62,    -1,    -1,    -1,    -1,    -1,    68,
  268.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  269.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  270.     -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,
  271.     -1,    -1,   101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  272.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  273.     -1,   120,    -1,    -1,   123,    -1,    -1,    -1,    -1,    -1,
  274.     -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,   138,
  275.    139,   140,    -1,    -1,    -1,    -1,   145,    -1,    -1,    -1,
  276.     -1,    -1,   151,    -1,   153,   154,    -1,    -1,    -1,    -1,
  277.     -1,    -1,    -1,   162,   163,    -1,    -1,   166,    -1,   168,
  278.     -1,    -1,    -1,   172,   173,    -1,    -1,    -1,    -1,    -1,
  279.     -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
  280.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  281.     -1,    -1,    -1,    -1,   203,   204,   205,   206,   207,   208,
  282.     -1,   210,   211,   212,    -1,   214,   215,    -1,   217,    -1,
  283.     -1,   220,   221,   222,   223,   224,    -1,   226,   227,   228,
  284.     -1,    -1,   231,   232,   233,   234,   235,   236,   237,   238,
  285.    239,    -1,    -1,    -1,    -1,   244,    -1,   246,   247,   248,
  286.     -1,    -1,   251,   252,    -1,   254,    -1,   256,    -1,   258,
  287.    259,   260,   261,   262,    -1,   264,   265,   266,   267,   268,
  288.     -1,   270,    -1,   272,   273,   274,   275,   276,    -1,    -1,
  289.    279,    -1,   281,   282,    -1,     3,   285,     5,     6,     7,
  290.      8,    -1,    10,    11,    12,    -1,    14,    -1,    16,    17,
  291.     18,    19,    20,    21,    22,    23,    24,    25,    26,    -1,
  292.     28,    29,    30,    31,    32,    33,    -1,    35,    36,    37,
  293.     38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  294.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  295.     -1,    -1,    -1,    61,    62,    -1,    -1,    -1,    -1,    -1,
  296.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  297.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  298.     -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
  299.     -1,    -1,    -1,   101,    -1,    -1,    -1,    -1,    -1,    -1,
  300.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  301.     -1,    -1,   120,    -1,    -1,   123,    -1,    -1,    -1,    -1,
  302.     -1,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
  303.    138,   139,   140,    -1,    -1,    -1,    -1,   145,    -1,    -1,
  304.     -1,    -1,    -1,   151,    -1,   153,   154,    -1,    -1,    -1,
  305.     -1,    -1,    -1,    -1,   162,   163,    -1,    -1,   166,    -1,
  306.    168,    -1,    -1,    -1,   172,   173,    -1,    -1,    -1,    -1,
  307.     -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,
  308.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  309.     -1,    -1,    -1,    -1,    -1,   203,   204,   205,   206,   207,
  310.    208,    -1,   210,   211,   212,    -1,   214,   215,    -1,   217,
  311.     -1,    -1,   220,   221,   222,   223,   224,    -1,   226,   227,
  312.    228,    -1,    -1,   231,   232,   233,   234,   235,   236,   237,
  313.    238,   239,    -1,    -1,    -1,    -1,   244,    -1,   246,   247,
  314.    248,    -1,    -1,   251,   252,    -1,   254,    -1,   256,    -1,
  315.    258,   259,   260,   261,   262,    -1,   264,   265,   266,   267,
  316.    268,    -1,   270,    -1,   272,   273,   274,   275,   276,    -1,
  317.     -1,   279,    -1,   281,   282,    -1,     3,   285,     5,     6,
  318.      7,     8,    -1,    10,    11,    12,    -1,    14,    -1,    16,
  319.     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
  320.     -1,    28,    29,    30,    31,    32,    33,    -1,    35,    36,
  321.     37,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  322.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  323.     -1,    -1,    -1,    -1,    61,    62,    -1,    -1,    -1,    -1,
  324.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  325.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  326.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
  327.     -1,    -1,    -1,    -1,   101,    -1,    -1,    -1,    -1,    -1,
  328.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  329.     -1,    -1,    -1,   120,    -1,    -1,   123,    -1,    -1,    -1,
  330.     -1,    -1,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
  331.     -1,   138,   139,   140,    -1,    -1,    -1,    -1,   145,    -1,
  332.     -1,    -1,    -1,    -1,   151,    -1,   153,   154,    -1,    -1,
  333.     -1,    -1,    -1,    -1,    -1,   162,   163,    -1,    -1,   166,
  334.     -1,   168,    -1,    -1,    -1,   172,   173,    -1,    -1,    -1,
  335.     -1,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
  336.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  337.     -1,    -1,    -1,    -1,    -1,    -1,   203,   204,   205,   206,
  338.    207,   208,    -1,   210,   211,   212,    -1,   214,   215,    -1,
  339.    217,    -1,    -1,   220,   221,   222,   223,   224,    -1,   226,
  340.    227,   228,    -1,    -1,   231,   232,   233,   234,   235,   236,
  341.    237,   238,   239,    -1,    -1,    -1,    -1,   244,    -1,   246,
  342.    247,   248,    -1,    -1,   251,   252,    -1,   254,    -1,   256,
  343.     -1,   258,   259,   260,   261,   262,    -1,   264,   265,   266,
  344.    267,   268,    -1,   270,    -1,   272,   273,   274,   275,   276,
  345.     -1,    -1,   279,    -1,   281,   282,    -1,     3,   285,     5,
  346.      6,     7,     8,    -1,    10,    11,    12,    -1,    14,    -1,
  347.     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
  348.     26,    -1,    28,    29,    30,    31,    32,    33,    -1,    35,
  349.     36,    37,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,
  350.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  351.     -1,    -1,    -1,    -1,    -1,    61,    62,    -1,    -1,    -1,
  352.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  353.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  354.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
  355.     -1,    -1,    -1,    -1,    -1,   101,    -1,    -1,    -1,    -1,
  356.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  357.     -1,    -1,    -1,    -1,   120,    -1,    -1,   123,    -1,    -1,
  358.     -1,    -1,    -1,    -1,    -1,   131,   132,    -1,    -1,    -1,
  359.     -1,    -1,   138,   139,   140,    -1,    -1,    -1,    -1,   145,
  360.     -1,    -1,    -1,    -1,    -1,   151,    -1,   153,   154,    -1,
  361.     -1,    -1,    -1,    -1,    -1,    -1,   162,   163,    -1,    -1,
  362.    166,    -1,   168,    -1,    -1,    -1,   172,   173,    -1,    -1,
  363.     -1,    -1,    -1,    -1,    -1,   181,   182,   183,   184,    -1,
  364.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  365.     -1,    -1,    -1,    -1,    -1,    -1,    -1,   203,   204,   205,
  366.    206,   207,   208,    -1,   210,   211,   212,    -1,   214,   215,
  367.     -1,   217,    -1,    -1,   220,   221,   222,   223,   224,    -1,
  368.    226,   227,   228,    -1,    -1,   231,   232,   233,   234,   235,
  369.    236,   237,   238,   239,    -1,    -1,    -1,    -1,   244,    -1,
  370.    246,   247,   248,    -1,    -1,   251,   252,    -1,   254,    -1,
  371.    256,    -1,   258,   259,   260,   261,   262,    -1,   264,   265,
  372.    266,   267,   268,    -1,   270,    -1,   272,   273,   274,   275,
  373.    276,    -1,    -1,   279,    -1,   281,   282,    -1,    -1,   285,
  374.      3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
  375.     -1,    14,    -1,    16,    17,    18,    19,    20,    21,    22,
  376.     23,    24,    25,    26,    -1,    28,    29,    30,    31,    32,
  377.     33,    -1,    35,    36,    37,    38,    39,    -1,    -1,    -1,
  378.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  379.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  380.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  381.     -1,    -1,    -1,    -1,    77,    78,    -1,    -1,    -1,    -1,
  382.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  383.     -1,    94,    95,    -1,    -1,    -1,    -1,    -1,   101,    -1,
  384.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   111,    -1,
  385.     -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,    -1,    -1,
  386.     -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,    -1,
  387.     -1,    -1,    -1,    -1,    -1,    -1,   139,   140,    -1,   142,
  388.     -1,   144,    -1,    -1,    -1,    -1,    -1,   150,    -1,    -1,
  389.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  390.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  391.    173,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   181,   182,
  392.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  393.     -1,    -1,    -1,   196,    -1,    -1,    -1,    -1,    -1,    -1,
  394.    203,    -1,    -1,    -1,    -1,   208,     3,     4,     5,     6,
  395.      7,     8,     9,    10,    11,    12,    -1,    14,    -1,    16,
  396.     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
  397.     -1,    28,    29,    30,    31,    32,    33,    -1,    35,    36,
  398.     37,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  399.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  400.     -1,    -1,    -1,    -1,   267,    -1,   269,    -1,    -1,    -1,
  401.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   282,
  402.     77,    78,   285,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  403.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    95,    -1,
  404.     -1,    -1,    -1,    -1,   101,    -1,    -1,    -1,    -1,    -1,
  405.     -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
  406.     -1,    -1,    -1,   120,    -1,    -1,    -1,    -1,    -1,   126,
  407.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  408.     -1,    -1,   139,   140,    -1,   142,    -1,   144,    -1,    -1,
  409.     -1,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,    -1,
  410.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  411.     -1,    -1,    -1,    -1,    -1,    -1,   173,    -1,    -1,    -1,
  412.     -1,    -1,    -1,    -1,   181,   182,    -1,    -1,    -1,    -1,
  413.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   196,
  414.     -1,    -1,    -1,    -1,    -1,    -1,   203,    -1,    -1,    -1,
  415.     -1,   208,     3,     4,     5,     6,     7,     8,     9,    10,
  416.     11,    12,    -1,    14,    -1,    16,    17,    18,    19,    20,
  417.     21,    22,    23,    24,    25,    26,    -1,    28,    29,    30,
  418.     31,    32,    33,    -1,    35,    36,    37,    38,    39,    -1,
  419.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  420.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  421.     -1,    -1,   269,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  422.     -1,    -1,    -1,    -1,    -1,   282,    77,    78,   285,    -1,
  423.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  424.     -1,    -1,    -1,    94,    95,    -1,    -1,    -1,    -1,    -1,
  425.    101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  426.    111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,
  427.     -1,    -1,    -1,    -1,    -1,   126,    -1,    -1,    -1,    -1,
  428.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   139,   140,
  429.     -1,   142,    -1,   144,    -1,    -1,    -1,    -1,    -1,   150,
  430.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  431.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  432.     -1,    -1,   173,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  433.    181,   182,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  434.     -1,    -1,    -1,    -1,    -1,   196,    -1,    -1,    -1,    -1,
  435.     -1,    -1,   203,    -1,    -1,    -1,    -1,   208,    -1,    -1,
  436.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  437.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  438.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  439.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  440.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  441.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  442.     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  443.     -1,   282,    -1,    -1,   285
  444. };
  445. /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
  446. #line 3 "/usr/share/misc/bison.simple"
  447. /* This file comes from bison-1.28.  */
  448. /* Skeleton output parser for bison,
  449.    Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
  450.    This program is free software; you can redistribute it and/or modify
  451.    it under the terms of the GNU General Public License as published by
  452.    the Free Software Foundation; either version 2, or (at your option)
  453.    any later version.
  454.    This program is distributed in the hope that it will be useful,
  455.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  456.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  457.    GNU General Public License for more details.
  458.    You should have received a copy of the GNU General Public License
  459.    along with this program; if not, write to the Free Software
  460.    Foundation, Inc., 59 Temple Place - Suite 330,
  461.    Boston, MA 02111-1307, USA.  */
  462. /* As a special exception, when this file is copied by Bison into a
  463.    Bison output file, you may use that output file without restriction.
  464.    This special exception was added by the Free Software Foundation
  465.    in version 1.24 of Bison.  */
  466. /* This is the parser code that is written into each bison parser
  467.   when the %semantic_parser declaration is not specified in the grammar.
  468.   It was written by Richard Stallman by simplifying the hairy parser
  469.   used when %semantic_parser is specified.  */
  470. #ifndef YYSTACK_USE_ALLOCA
  471. #ifdef alloca
  472. #define YYSTACK_USE_ALLOCA
  473. #else /* alloca not defined */
  474. #ifdef __GNUC__
  475. #define YYSTACK_USE_ALLOCA
  476. #define alloca __builtin_alloca
  477. #else /* not GNU C.  */
  478. #if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
  479. #define YYSTACK_USE_ALLOCA
  480. #include <alloca.h>
  481. #else /* not sparc */
  482. /* We think this test detects Watcom and Microsoft C.  */
  483. /* This used to test MSDOS, but that is a bad idea
  484.    since that symbol is in the user namespace.  */
  485. #if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
  486. #if 0 /* No need for malloc.h, which pollutes the namespace;
  487.  instead, just don't use alloca.  */
  488. #include <malloc.h>
  489. #endif
  490. #else /* not MSDOS, or __TURBOC__ */
  491. #if defined(_AIX)
  492. /* I don't know what this was needed for, but it pollutes the namespace.
  493.    So I turned it off.   rms, 2 May 1997.  */
  494. /* #include <malloc.h>  */
  495.  #pragma alloca
  496. #define YYSTACK_USE_ALLOCA
  497. #else /* not MSDOS, or __TURBOC__, or _AIX */
  498. #if 0
  499. #ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
  500.  and on HPUX 10.  Eventually we can turn this on.  */
  501. #define YYSTACK_USE_ALLOCA
  502. #define alloca __builtin_alloca
  503. #endif /* __hpux */
  504. #endif
  505. #endif /* not _AIX */
  506. #endif /* not MSDOS, or __TURBOC__ */
  507. #endif /* not sparc */
  508. #endif /* not GNU C */
  509. #endif /* alloca not defined */
  510. #endif /* YYSTACK_USE_ALLOCA not defined */
  511. #ifdef YYSTACK_USE_ALLOCA
  512. #define YYSTACK_ALLOC alloca
  513. #else
  514. #define YYSTACK_ALLOC malloc
  515. #endif
  516. /* Note: there must be only one dollar sign in this file.
  517.    It is replaced by the list of actions, each action
  518.    as one case of the switch.  */
  519. #define yyerrok (yyerrstatus = 0)
  520. #define yyclearin (yychar = YYEMPTY)
  521. #define YYEMPTY -2
  522. #define YYEOF 0
  523. #define YYACCEPT goto yyacceptlab
  524. #define YYABORT  goto yyabortlab
  525. #define YYERROR goto yyerrlab1
  526. /* Like YYERROR except do call yyerror.
  527.    This remains here temporarily to ease the
  528.    transition to the new meaning of YYERROR, for GCC.
  529.    Once GCC version 2 has supplanted version 1, this can go.  */
  530. #define YYFAIL goto yyerrlab
  531. #define YYRECOVERING()  (!!yyerrstatus)
  532. #define YYBACKUP(token, value) 
  533. do
  534.   if (yychar == YYEMPTY && yylen == 1)
  535.     { yychar = (token), yylval = (value);
  536.       yychar1 = YYTRANSLATE (yychar);
  537.       YYPOPSTACK;
  538.       goto yybackup;
  539.     }
  540.   else
  541.     { yyerror ("syntax error: cannot back up"); YYERROR; }
  542. while (0)
  543. #define YYTERROR 1
  544. #define YYERRCODE 256
  545. #ifndef YYPURE
  546. #define YYLEX yylex()
  547. #endif
  548. #ifdef YYPURE
  549. #ifdef YYLSP_NEEDED
  550. #ifdef YYLEX_PARAM
  551. #define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM)
  552. #else
  553. #define YYLEX yylex(&yylval, &yylloc)
  554. #endif
  555. #else /* not YYLSP_NEEDED */
  556. #ifdef YYLEX_PARAM
  557. #define YYLEX yylex(&yylval, YYLEX_PARAM)
  558. #else
  559. #define YYLEX yylex(&yylval)
  560. #endif
  561. #endif /* not YYLSP_NEEDED */
  562. #endif
  563. /* If nonreentrant, generate the variables here */
  564. #ifndef YYPURE
  565. int yychar; /*  the lookahead symbol */
  566. YYSTYPE yylval; /*  the semantic value of the */
  567. /*  lookahead symbol */
  568. #ifdef YYLSP_NEEDED
  569. YYLTYPE yylloc; /*  location data for the lookahead */
  570. /*  symbol */
  571. #endif
  572. int yynerrs; /*  number of parse errors so far       */
  573. #endif  /* not YYPURE */
  574. #if YYDEBUG != 0
  575. int yydebug; /*  nonzero means print parse trace */
  576. /* Since this is uninitialized, it does not stop multiple parsers
  577.    from coexisting.  */
  578. #endif
  579. /*  YYINITDEPTH indicates the initial size of the parser's stacks */
  580. #ifndef YYINITDEPTH
  581. #define YYINITDEPTH 200
  582. #endif
  583. /*  YYMAXDEPTH is the maximum size the stacks can grow to
  584.     (effective only if the built-in stack extension method is used).  */
  585. #if YYMAXDEPTH == 0
  586. #undef YYMAXDEPTH
  587. #endif
  588. #ifndef YYMAXDEPTH
  589. #define YYMAXDEPTH 10000
  590. #endif
  591. /* Define __yy_memcpy.  Note that the size argument
  592.    should be passed with type unsigned int, because that is what the non-GCC
  593.    definitions require.  With GCC, __builtin_memcpy takes an arg
  594.    of type size_t, but it can handle unsigned int.  */
  595. #if __GNUC__ > 1 /* GNU C and GNU C++ define this.  */
  596. #define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
  597. #else /* not GNU C or C++ */
  598. #ifndef __cplusplus
  599. /* This is the most reliable way to avoid incompatibilities
  600.    in available built-in functions on various systems.  */
  601. static void
  602. __yy_memcpy (to, from, count)
  603.      char *to;
  604.      char *from;
  605.      unsigned int count;
  606. {
  607.   register char *f = from;
  608.   register char *t = to;
  609.   register int i = count;
  610.   while (i-- > 0)
  611.     *t++ = *f++;
  612. }
  613. #else /* __cplusplus */
  614. /* This is the most reliable way to avoid incompatibilities
  615.    in available built-in functions on various systems.  */
  616. static void
  617. __yy_memcpy (char *to, char *from, unsigned int count)
  618. {
  619.   register char *t = to;
  620.   register char *f = from;
  621.   register int i = count;
  622.   while (i-- > 0)
  623.     *t++ = *f++;
  624. }
  625. #endif
  626. #endif
  627. #line 217 "/usr/share/misc/bison.simple"
  628. /* The user can define YYPARSE_PARAM as the name of an argument to be passed
  629.    into yyparse.  The argument should have type void *.
  630.    It should actually point to an object.
  631.    Grammar actions can access the variable by casting it
  632.    to the proper pointer type.  */
  633. #ifdef YYPARSE_PARAM
  634. #ifdef __cplusplus
  635. #define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
  636. #define YYPARSE_PARAM_DECL
  637. #else /* not __cplusplus */
  638. #define YYPARSE_PARAM_ARG YYPARSE_PARAM
  639. #define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
  640. #endif /* not __cplusplus */
  641. #else /* not YYPARSE_PARAM */
  642. #define YYPARSE_PARAM_ARG
  643. #define YYPARSE_PARAM_DECL
  644. #endif /* not YYPARSE_PARAM */
  645. /* Prevent warning if -Wstrict-prototypes.  */
  646. #ifdef __GNUC__
  647. #ifdef YYPARSE_PARAM
  648. int yyparse (void *);
  649. #else
  650. int yyparse (void);
  651. #endif
  652. #endif
  653. int
  654. yyparse(YYPARSE_PARAM_ARG)
  655.      YYPARSE_PARAM_DECL
  656. {
  657.   register int yystate;
  658.   register int yyn;
  659.   register short *yyssp;
  660.   register YYSTYPE *yyvsp;
  661.   int yyerrstatus; /*  number of tokens to shift before error messages enabled */
  662.   int yychar1 = 0; /*  lookahead token as an internal (translated) token number */
  663.   short yyssa[YYINITDEPTH]; /*  the state stack */
  664.   YYSTYPE yyvsa[YYINITDEPTH]; /*  the semantic value stack */
  665.   short *yyss = yyssa; /*  refer to the stacks thru separate pointers */
  666.   YYSTYPE *yyvs = yyvsa; /*  to allow yyoverflow to reallocate them elsewhere */
  667. #ifdef YYLSP_NEEDED
  668.   YYLTYPE yylsa[YYINITDEPTH]; /*  the location stack */
  669.   YYLTYPE *yyls = yylsa;
  670.   YYLTYPE *yylsp;
  671. #define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
  672. #else
  673. #define YYPOPSTACK   (yyvsp--, yyssp--)
  674. #endif
  675.   int yystacksize = YYINITDEPTH;
  676.   int yyfree_stacks = 0;
  677. #ifdef YYPURE
  678.   int yychar;
  679.   YYSTYPE yylval;
  680.   int yynerrs;
  681. #ifdef YYLSP_NEEDED
  682.   YYLTYPE yylloc;
  683. #endif
  684. #endif
  685.   YYSTYPE yyval; /*  the variable used to return */
  686. /*  semantic values from the action */
  687. /*  routines */
  688.   int yylen;
  689. #if YYDEBUG != 0
  690.   if (yydebug)
  691.     fprintf(stderr, "Starting parsen");
  692. #endif
  693.   yystate = 0;
  694.   yyerrstatus = 0;
  695.   yynerrs = 0;
  696.   yychar = YYEMPTY; /* Cause a token to be read.  */
  697.   /* Initialize stack pointers.
  698.      Waste one element of value and location stack
  699.      so that they stay on the same level as the state stack.
  700.      The wasted elements are never initialized.  */
  701.   yyssp = yyss - 1;
  702.   yyvsp = yyvs;
  703. #ifdef YYLSP_NEEDED
  704.   yylsp = yyls;
  705. #endif
  706. /* Push a new state, which is found in  yystate  .  */
  707. /* In all cases, when you get here, the value and location stacks
  708.    have just been pushed. so pushing a state here evens the stacks.  */
  709. yynewstate:
  710.   *++yyssp = yystate;
  711.   if (yyssp >= yyss + yystacksize - 1)
  712.     {
  713.       /* Give user a chance to reallocate the stack */
  714.       /* Use copies of these so that the &'s don't force the real ones into memory. */
  715.       YYSTYPE *yyvs1 = yyvs;
  716.       short *yyss1 = yyss;
  717. #ifdef YYLSP_NEEDED
  718.       YYLTYPE *yyls1 = yyls;
  719. #endif
  720.       /* Get the current used size of the three stacks, in elements.  */
  721.       int size = yyssp - yyss + 1;
  722. #ifdef yyoverflow
  723.       /* Each stack pointer address is followed by the size of
  724.  the data in use in that stack, in bytes.  */
  725. #ifdef YYLSP_NEEDED
  726.       /* This used to be a conditional around just the two extra args,
  727.  but that might be undefined if yyoverflow is a macro.  */
  728.       yyoverflow("parser stack overflow",
  729.  &yyss1, size * sizeof (*yyssp),
  730.  &yyvs1, size * sizeof (*yyvsp),
  731.  &yyls1, size * sizeof (*yylsp),
  732.  &yystacksize);
  733. #else
  734.       yyoverflow("parser stack overflow",
  735.  &yyss1, size * sizeof (*yyssp),
  736.  &yyvs1, size * sizeof (*yyvsp),
  737.  &yystacksize);
  738. #endif
  739.       yyss = yyss1; yyvs = yyvs1;
  740. #ifdef YYLSP_NEEDED
  741.       yyls = yyls1;
  742. #endif
  743. #else /* no yyoverflow */
  744.       /* Extend the stack our own way.  */
  745.       if (yystacksize >= YYMAXDEPTH)
  746. {
  747.   yyerror("parser stack overflow");
  748.   if (yyfree_stacks)
  749.     {
  750.       free (yyss);
  751.       free (yyvs);
  752. #ifdef YYLSP_NEEDED
  753.       free (yyls);
  754. #endif
  755.     }
  756.   return 2;
  757. }
  758.       yystacksize *= 2;
  759.       if (yystacksize > YYMAXDEPTH)
  760. yystacksize = YYMAXDEPTH;
  761. #ifndef YYSTACK_USE_ALLOCA
  762.       yyfree_stacks = 1;
  763. #endif
  764.       yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp));
  765.       __yy_memcpy ((char *)yyss, (char *)yyss1,
  766.    size * (unsigned int) sizeof (*yyssp));
  767.       yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp));
  768.       __yy_memcpy ((char *)yyvs, (char *)yyvs1,
  769.    size * (unsigned int) sizeof (*yyvsp));
  770. #ifdef YYLSP_NEEDED
  771.       yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp));
  772.       __yy_memcpy ((char *)yyls, (char *)yyls1,
  773.    size * (unsigned int) sizeof (*yylsp));
  774. #endif
  775. #endif /* no yyoverflow */
  776.       yyssp = yyss + size - 1;
  777.       yyvsp = yyvs + size - 1;
  778. #ifdef YYLSP_NEEDED
  779.       yylsp = yyls + size - 1;
  780. #endif
  781. #if YYDEBUG != 0
  782.       if (yydebug)
  783. fprintf(stderr, "Stack size increased to %dn", yystacksize);
  784. #endif
  785.       if (yyssp >= yyss + yystacksize - 1)
  786. YYABORT;
  787.     }
  788. #if YYDEBUG != 0
  789.   if (yydebug)
  790.     fprintf(stderr, "Entering state %dn", yystate);
  791. #endif
  792.   goto yybackup;
  793.  yybackup:
  794. /* Do appropriate processing given the current state.  */
  795. /* Read a lookahead token if we need one and don't already have one.  */
  796. /* yyresume: */
  797.   /* First try to decide what to do without reference to lookahead token.  */
  798.   yyn = yypact[yystate];
  799.   if (yyn == YYFLAG)
  800.     goto yydefault;
  801.   /* Not known => get a lookahead token if don't already have one.  */
  802.   /* yychar is either YYEMPTY or YYEOF
  803.      or a valid token in external form.  */
  804.   if (yychar == YYEMPTY)
  805.     {
  806. #if YYDEBUG != 0
  807.       if (yydebug)
  808. fprintf(stderr, "Reading a token: ");
  809. #endif
  810.       yychar = YYLEX;
  811.     }
  812.   /* Convert token to internal form (in yychar1) for indexing tables with */
  813.   if (yychar <= 0) /* This means end of input. */
  814.     {
  815.       yychar1 = 0;
  816.       yychar = YYEOF; /* Don't call YYLEX any more */
  817. #if YYDEBUG != 0
  818.       if (yydebug)
  819. fprintf(stderr, "Now at end of input.n");
  820. #endif
  821.     }
  822.   else
  823.     {
  824.       yychar1 = YYTRANSLATE(yychar);
  825. #if YYDEBUG != 0
  826.       if (yydebug)
  827. {
  828.   fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
  829.   /* Give the individual parser a way to print the precise meaning
  830.      of a token, for further debugging info.  */
  831. #ifdef YYPRINT
  832.   YYPRINT (stderr, yychar, yylval);
  833. #endif
  834.   fprintf (stderr, ")n");
  835. }
  836. #endif
  837.     }
  838.   yyn += yychar1;
  839.   if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
  840.     goto yydefault;
  841.   yyn = yytable[yyn];
  842.   /* yyn is what to do for this token type in this state.
  843.      Negative => reduce, -yyn is rule number.
  844.      Positive => shift, yyn is new state.
  845.        New state is final state => don't bother to shift,
  846.        just return success.
  847.      0, or most negative number => error.  */
  848.   if (yyn < 0)
  849.     {
  850.       if (yyn == YYFLAG)
  851. goto yyerrlab;
  852.       yyn = -yyn;
  853.       goto yyreduce;
  854.     }
  855.   else if (yyn == 0)
  856.     goto yyerrlab;
  857.   if (yyn == YYFINAL)
  858.     YYACCEPT;
  859.   /* Shift the lookahead token.  */
  860. #if YYDEBUG != 0
  861.   if (yydebug)
  862.     fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
  863. #endif
  864.   /* Discard the token being shifted unless it is eof.  */
  865.   if (yychar != YYEOF)
  866.     yychar = YYEMPTY;
  867.   *++yyvsp = yylval;
  868. #ifdef YYLSP_NEEDED
  869.   *++yylsp = yylloc;
  870. #endif
  871.   /* count tokens shifted since error; after three, turn off error status.  */
  872.   if (yyerrstatus) yyerrstatus--;
  873.   yystate = yyn;
  874.   goto yynewstate;
  875. /* Do the default action for the current state.  */
  876. yydefault:
  877.   yyn = yydefact[yystate];
  878.   if (yyn == 0)
  879.     goto yyerrlab;
  880. /* Do a reduction.  yyn is the number of a rule to reduce with.  */
  881. yyreduce:
  882.   yylen = yyr2[yyn];
  883.   if (yylen > 0)
  884.     yyval = yyvsp[1-yylen]; /* implement default value of the action */
  885. #if YYDEBUG != 0
  886.   if (yydebug)
  887.     {
  888.       int i;
  889.       fprintf (stderr, "Reducing via rule %d (line %d), ",
  890.        yyn, yyrline[yyn]);
  891.       /* Print the symbols being reduced, and their result.  */
  892.       for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
  893. fprintf (stderr, "%s ", yytname[yyrhs[i]]);
  894.       fprintf (stderr, " -> %sn", yytname[yyr1[yyn]]);
  895.     }
  896. #endif
  897.   switch (yyn) {
  898. case 4:
  899. #line 863 "preproc.y"
  900. { connection = NULL; ;
  901.     break;}
  902. case 7:
  903. #line 866 "preproc.y"
  904. { fprintf(yyout, "%s", yyvsp[0].str); free(yyvsp[0].str); ;
  905.     break;}
  906. case 8:
  907. #line 867 "preproc.y"
  908. { fprintf(yyout, "%s", yyvsp[0].str); free(yyvsp[0].str); ;
  909.     break;}
  910. case 9:
  911. #line 868 "preproc.y"
  912. { fputs(yyvsp[0].str, yyout); free(yyvsp[0].str); ;
  913.     break;}
  914. case 10:
  915. #line 869 "preproc.y"
  916. { fputs(yyvsp[0].str, yyout); free(yyvsp[0].str); ;
  917.     break;}
  918. case 11:
  919. #line 871 "preproc.y"
  920. { connection = yyvsp[0].str; ;
  921.     break;}
  922. case 12:
  923. #line 873 "preproc.y"
  924. { output_statement(yyvsp[0].str, 0); ;
  925.     break;}
  926. case 13:
  927. #line 874 "preproc.y"
  928. { output_statement(yyvsp[0].str, 0); ;
  929.     break;}
  930. case 14:
  931. #line 875 "preproc.y"
  932. { output_statement(yyvsp[0].str, 0); ;
  933.     break;}
  934. case 15:
  935. #line 876 "preproc.y"
  936. { output_statement(yyvsp[0].str, 0); ;
  937.     break;}
  938. case 16:
  939. #line 877 "preproc.y"
  940. { output_statement(yyvsp[0].str, 0); ;
  941.     break;}
  942. case 17:
  943. #line 878 "preproc.y"
  944. { output_statement(yyvsp[0].str, 0); ;
  945.     break;}
  946. case 18:
  947. #line 879 "preproc.y"
  948. { output_statement(yyvsp[0].str, 0); ;
  949.     break;}
  950. case 19:
  951. #line 880 "preproc.y"
  952. { output_statement(yyvsp[0].str, 0); ;
  953.     break;}
  954. case 20:
  955. #line 881 "preproc.y"
  956. { output_statement(yyvsp[0].str, 0); ;
  957.     break;}
  958. case 21:
  959. #line 882 "preproc.y"
  960. { output_statement(yyvsp[0].str, 0); ;
  961.     break;}
  962. case 22:
  963. #line 883 "preproc.y"
  964. { output_statement(yyvsp[0].str, 0); ;
  965.     break;}
  966. case 23:
  967. #line 884 "preproc.y"
  968. { output_statement(yyvsp[0].str, 0); ;
  969.     break;}
  970. case 24:
  971. #line 885 "preproc.y"
  972. { output_statement(yyvsp[0].str, 0); ;
  973.     break;}
  974. case 25:
  975. #line 886 "preproc.y"
  976. { output_statement(yyvsp[0].str, 0); ;
  977.     break;}
  978. case 26:
  979. #line 887 "preproc.y"
  980. { output_statement(yyvsp[0].str, 0); ;
  981.     break;}
  982. case 27:
  983. #line 888 "preproc.y"
  984. { output_statement(yyvsp[0].str, 0); ;
  985.     break;}
  986. case 28:
  987. #line 889 "preproc.y"
  988. { output_statement(yyvsp[0].str, 0); ;
  989.     break;}
  990. case 29:
  991. #line 890 "preproc.y"
  992. { output_statement(yyvsp[0].str, 0); ;
  993.     break;}
  994. case 30:
  995. #line 891 "preproc.y"
  996. { output_statement(yyvsp[0].str, 1); ;
  997.     break;}
  998. case 31:
  999. #line 892 "preproc.y"
  1000. { output_statement(yyvsp[0].str, 0); ;
  1001.     break;}
  1002. case 32:
  1003. #line 893 "preproc.y"
  1004. { output_statement(yyvsp[0].str, 0); ;
  1005.     break;}
  1006. case 33:
  1007. #line 894 "preproc.y"
  1008. { output_statement(yyvsp[0].str, 0); ;
  1009.     break;}
  1010. case 34:
  1011. #line 895 "preproc.y"
  1012. { output_statement(yyvsp[0].str, 0); ;
  1013.     break;}
  1014. case 35:
  1015. #line 896 "preproc.y"
  1016. { output_statement(yyvsp[0].str, 0); ;
  1017.     break;}
  1018. case 36:
  1019. #line 897 "preproc.y"
  1020. { output_statement(yyvsp[0].str, 0); ;
  1021.     break;}
  1022. case 37:
  1023. #line 898 "preproc.y"
  1024. { output_statement(yyvsp[0].str, 0); ;
  1025.     break;}
  1026. case 38:
  1027. #line 899 "preproc.y"
  1028. { output_statement(yyvsp[0].str, 0); ;
  1029.     break;}
  1030. case 39:
  1031. #line 900 "preproc.y"
  1032. { output_statement(yyvsp[0].str, 0); ;
  1033.     break;}
  1034. case 40:
  1035. #line 901 "preproc.y"
  1036. { output_statement(yyvsp[0].str, 0); ;
  1037.     break;}
  1038. case 41:
  1039. #line 902 "preproc.y"
  1040. { output_statement(yyvsp[0].str, 0); ;
  1041.     break;}
  1042. case 42:
  1043. #line 903 "preproc.y"
  1044. { output_statement(yyvsp[0].str, 0); ;
  1045.     break;}
  1046. case 43:
  1047. #line 904 "preproc.y"
  1048. {
  1049. if (strncmp(yyvsp[0].str, "/* " , sizeof("/* ")-1) == 0)
  1050. output_simple_statement(yyvsp[0].str);
  1051. else
  1052. output_statement(yyvsp[0].str, 1);
  1053. ;
  1054.     break;}
  1055. case 44:
  1056. #line 910 "preproc.y"
  1057. { output_statement(yyvsp[0].str, 0); ;
  1058.     break;}
  1059. case 45:
  1060. #line 911 "preproc.y"
  1061. {
  1062. fprintf(yyout, "{ ECPGtrans(__LINE__, %s, "%s");", connection ? connection : "NULL", yyvsp[0].str);
  1063. whenever_action(2);
  1064. free(yyvsp[0].str);
  1065. ;
  1066.     break;}
  1067. case 46:
  1068. #line 916 "preproc.y"
  1069. { output_statement(yyvsp[0].str, 0); ;
  1070.     break;}
  1071. case 47:
  1072. #line 917 "preproc.y"
  1073. { output_statement(yyvsp[0].str, 0); ;
  1074.     break;}
  1075. case 48:
  1076. #line 918 "preproc.y"
  1077. { output_statement(yyvsp[0].str, 0); ;
  1078.     break;}
  1079. case 49:
  1080. #line 919 "preproc.y"
  1081. { output_statement(yyvsp[0].str, 0); ;
  1082.     break;}
  1083. case 50:
  1084. #line 920 "preproc.y"
  1085. { output_statement(yyvsp[0].str, 0); ;
  1086.     break;}
  1087. case 51:
  1088. #line 921 "preproc.y"
  1089. { output_statement(yyvsp[0].str, 0); ;
  1090.     break;}
  1091. case 52:
  1092. #line 922 "preproc.y"
  1093. { output_statement(yyvsp[0].str, 0); ;
  1094.     break;}
  1095. case 53:
  1096. #line 923 "preproc.y"
  1097. { output_statement(yyvsp[0].str, 0); ;
  1098.     break;}
  1099. case 54:
  1100. #line 924 "preproc.y"
  1101. {
  1102. if (connection)
  1103. yyerror("no at option for connect statement.n");
  1104. fprintf(yyout, "{ ECPGconnect(__LINE__, %s, %d);", yyvsp[0].str, autocommit);
  1105. whenever_action(2);
  1106. free(yyvsp[0].str);
  1107. ;
  1108.     break;}
  1109. case 55:
  1110. #line 932 "preproc.y"
  1111. {
  1112. output_simple_statement(yyvsp[0].str);
  1113. ;
  1114.     break;}
  1115. case 56:
  1116. #line 935 "preproc.y"
  1117. {
  1118. if (connection)
  1119. yyerror("no at option for connect statement.n");
  1120. fputc('{', yyout);
  1121. fputs(yyvsp[0].str, yyout);
  1122. whenever_action(2);
  1123. free(yyvsp[0].str);
  1124. ;
  1125.     break;}
  1126. case 57:
  1127. #line 944 "preproc.y"
  1128. {
  1129. output_simple_statement(yyvsp[0].str);
  1130. ;
  1131.     break;}
  1132. case 58:
  1133. #line 947 "preproc.y"
  1134. {
  1135. if (connection)
  1136. yyerror("no at option for disconnect statement.n");
  1137. fprintf(yyout, "{ ECPGdisconnect(__LINE__, "%s");", yyvsp[0].str); 
  1138. whenever_action(2);
  1139. free(yyvsp[0].str);
  1140. ;
  1141.     break;}
  1142. case 59:
  1143. #line 955 "preproc.y"
  1144. {
  1145. output_statement(yyvsp[0].str, 0);
  1146. ;
  1147.     break;}
  1148. case 60:
  1149. #line 958 "preproc.y"
  1150. {
  1151. fprintf(yyout, "{ ECPGdeallocate(__LINE__, %s, "%s");", connection ? connection : "NULL", yyvsp[0].str); 
  1152. whenever_action(2);
  1153. free(yyvsp[0].str);
  1154. ;
  1155.     break;}
  1156. case 61:
  1157. #line 963 "preproc.y"
  1158. {
  1159. struct cursor *ptr;
  1160.  
  1161. for (ptr = cur; ptr != NULL; ptr=ptr->next)
  1162. {
  1163.                if (strcmp(ptr->name, yyvsp[0].str) == 0)
  1164.         break;
  1165. }
  1166. if (ptr == NULL)
  1167. {
  1168. sprintf(errortext, "trying to open undeclared cursor %sn", yyvsp[0].str);
  1169. yyerror(errortext);
  1170. }
  1171.                   
  1172. fprintf(yyout, "{ ECPGdo(__LINE__, %s, "%s",", ptr->connection ? ptr->connection : "NULL", ptr->command);
  1173. /* dump variables to C file*/
  1174. dump_variables(ptr->argsinsert, 0);
  1175. dump_variables(argsinsert, 0);
  1176. fputs("ECPGt_EOIT, ", yyout);
  1177. dump_variables(ptr->argsresult, 0);
  1178. fputs("ECPGt_EORT);", yyout);
  1179. whenever_action(2);
  1180. free(yyvsp[0].str);
  1181. ;
  1182.     break;}
  1183. case 62:
  1184. #line 988 "preproc.y"
  1185. {
  1186. if (connection)
  1187. yyerror("no at option for set connection statement.n");
  1188. fprintf(yyout, "{ ECPGprepare(__LINE__, %s);", yyvsp[0].str); 
  1189. whenever_action(2);
  1190. free(yyvsp[0].str);
  1191. ;
  1192.     break;}
  1193. case 63:
  1194. #line 996 "preproc.y"
  1195. { /* output already done */ ;
  1196.     break;}
  1197. case 64:
  1198. #line 997 "preproc.y"
  1199. {
  1200. fprintf(yyout, "{ ECPGsetcommit(__LINE__, "%s", %s);", yyvsp[0].str, connection ? connection : "NULL");
  1201. whenever_action(2);
  1202.                                         free(yyvsp[0].str);
  1203. ;
  1204.     break;}
  1205. case 65:
  1206. #line 1002 "preproc.y"
  1207. {
  1208. if (connection)
  1209. yyerror("no at option for set connection statement.n");
  1210. fprintf(yyout, "{ ECPGsetconn(__LINE__, %s);", yyvsp[0].str);
  1211. whenever_action(2);
  1212.                                         free(yyvsp[0].str);
  1213. ;
  1214.     break;}
  1215. case 66:
  1216. #line 1010 "preproc.y"
  1217. {
  1218. if (connection)
  1219. yyerror("no at option for typedef statement.n");
  1220. output_simple_statement(yyvsp[0].str);
  1221. ;
  1222.     break;}
  1223. case 67:
  1224. #line 1016 "preproc.y"
  1225. {
  1226. if (connection)
  1227. yyerror("no at option for var statement.n");
  1228. output_simple_statement(yyvsp[0].str);
  1229. ;
  1230.     break;}
  1231. case 68:
  1232. #line 1022 "preproc.y"
  1233. {
  1234. if (connection)
  1235. yyerror("no at option for whenever statement.n");
  1236. output_simple_statement(yyvsp[0].str);
  1237. ;
  1238.     break;}
  1239. case 69:
  1240. #line 1044 "preproc.y"
  1241. {
  1242. yyval.str = cat3_str(cat5_str(make1_str("create user"), yyvsp[-5].str, yyvsp[-4].str, yyvsp[-3].str, yyvsp[-2].str), yyvsp[-1].str, yyvsp[0].str);
  1243. ;
  1244.     break;}
  1245. case 70:
  1246. #line 1058 "preproc.y"
  1247. {
  1248. yyval.str = cat3_str(cat5_str(make1_str("alter user"), yyvsp[-5].str, yyvsp[-4].str, yyvsp[-3].str, yyvsp[-2].str), yyvsp[-1].str, yyvsp[0].str);
  1249. ;
  1250.     break;}
  1251. case 71:
  1252. #line 1071 "preproc.y"
  1253. {
  1254. yyval.str = cat2_str(make1_str("drop user"), yyvsp[0].str);
  1255. ;
  1256.     break;}
  1257. case 72:
  1258. #line 1076 "preproc.y"
  1259. { yyval.str = cat2_str(make1_str("with password") , yyvsp[0].str); ;
  1260.     break;}
  1261. case 73:
  1262. #line 1077 "preproc.y"
  1263. { yyval.str = make1_str(""); ;
  1264.     break;}
  1265. case 74:
  1266. #line 1081 "preproc.y"
  1267. {
  1268. yyval.str = make1_str("createdb");
  1269. ;
  1270.     break;}
  1271. case 75:
  1272. #line 1085 "preproc.y"
  1273. {
  1274. yyval.str = make1_str("nocreatedb");
  1275. ;
  1276.     break;}
  1277. case 76:
  1278. #line 1088 "preproc.y"
  1279. { yyval.str = make1_str(""); ;
  1280.     break;}
  1281. case 77:
  1282. #line 1092 "preproc.y"
  1283. {
  1284. yyval.str = make1_str("createuser");
  1285. ;
  1286.     break;}
  1287. case 78:
  1288. #line 1096 "preproc.y"
  1289. {
  1290. yyval.str = make1_str("nocreateuser");
  1291. ;
  1292.     break;}
  1293. case 79:
  1294. #line 1099 "preproc.y"
  1295. { yyval.str = NULL; ;
  1296.     break;}
  1297. case 80:
  1298. #line 1103 "preproc.y"
  1299. {
  1300. yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str);
  1301. ;
  1302.     break;}
  1303. case 81:
  1304. #line 1107 "preproc.y"
  1305. {
  1306. yyval.str = yyvsp[0].str;
  1307. ;
  1308.     break;}
  1309. case 82:
  1310. #line 1112 "preproc.y"
  1311. { yyval.str = cat2_str(make1_str("in group"), yyvsp[0].str); ;
  1312.     break;}
  1313. case 83:
  1314. #line 1113 "preproc.y"
  1315. { yyval.str = make1_str(""); ;
  1316.     break;}
  1317. case 84:
  1318. #line 1116 "preproc.y"
  1319. { yyval.str = cat2_str(make1_str("valid until"), yyvsp[0].str); ;
  1320.     break;}
  1321. case 85:
  1322. #line 1117 "preproc.y"
  1323. { yyval.str = make1_str(""); ;
  1324.     break;}
  1325. case 86:
  1326. #line 1130 "preproc.y"
  1327. {
  1328. yyval.str = cat4_str(make1_str("set"), yyvsp[-2].str, make1_str("to"), yyvsp[0].str);
  1329. ;
  1330.     break;}
  1331. case 87:
  1332. #line 1134 "preproc.y"
  1333. {
  1334. yyval.str = cat4_str(make1_str("set"), yyvsp[-2].str, make1_str("="), yyvsp[0].str);
  1335. ;
  1336.     break;}
  1337. case 88:
  1338. #line 1138 "preproc.y"
  1339. {
  1340. yyval.str = cat2_str(make1_str("set time zone"), yyvsp[0].str);
  1341. ;
  1342.     break;}
  1343. case 89:
  1344. #line 1142 "preproc.y"
  1345. {
  1346. yyval.str = cat2_str(make1_str("set transaction isolation level"), yyvsp[0].str);
  1347. ;
  1348.     break;}
  1349. case 90:
  1350. #line 1146 "preproc.y"
  1351. {
  1352. #ifdef MB
  1353. yyval.str = cat2_str(make1_str("set names"), yyvsp[0].str);
  1354. #else
  1355.                                         yyerror("SET NAMES is not supported");
  1356. #endif
  1357.                                 ;
  1358.     break;}
  1359. case 91:
  1360. #line 1155 "preproc.y"
  1361. { yyval.str = make1_str("read committed"); ;
  1362.     break;}
  1363. case 92:
  1364. #line 1156 "preproc.y"
  1365. { yyval.str = make1_str("serializable"); ;
  1366.     break;}
  1367. case 93:
  1368. #line 1160 "preproc.y"
  1369. { yyval.str = yyvsp[0].str; ;
  1370.     break;}
  1371. case 94:
  1372. #line 1161 "preproc.y"
  1373. { yyval.str = make1_str("default"); ;
  1374.     break;}
  1375. case 95:
  1376. #line 1164 "preproc.y"
  1377. { yyval.str = yyvsp[0].str; ;
  1378.     break;}
  1379. case 96:
  1380. #line 1165 "preproc.y"
  1381. { yyval.str = make1_str("default"); ;
  1382.     break;}
  1383. case 97:
  1384. #line 1166 "preproc.y"
  1385. { yyval.str = make1_str("local"); ;
  1386.     break;}
  1387. case 98:
  1388. #line 1170 "preproc.y"
  1389. {
  1390. yyval.str = cat2_str(make1_str("show"), yyvsp[0].str);
  1391. ;
  1392.     break;}
  1393. case 99:
  1394. #line 1174 "preproc.y"
  1395. {
  1396. yyval.str = make1_str("show time zone");
  1397. ;
  1398.     break;}
  1399. case 100:
  1400. #line 1178 "preproc.y"
  1401. {
  1402. yyval.str = make1_str("show transaction isolation level");
  1403. ;
  1404.     break;}
  1405. case 101:
  1406. #line 1184 "preproc.y"
  1407. {
  1408. yyval.str = cat2_str(make1_str("reset"), yyvsp[0].str);
  1409. ;
  1410.     break;}
  1411. case 102:
  1412. #line 1188 "preproc.y"
  1413. {
  1414. yyval.str = make1_str("reset time zone");
  1415. ;
  1416.     break;}
  1417. case 103:
  1418. #line 1192 "preproc.y"
  1419. {
  1420. yyval.str = make1_str("reset transaction isolation level");
  1421. ;
  1422.     break;}
  1423. case 104:
  1424. #line 1206 "preproc.y"
  1425. {
  1426. yyval.str = cat4_str(make1_str("alter table"), yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str);
  1427. ;
  1428.     break;}
  1429. case 105:
  1430. #line 1212 "preproc.y"
  1431. {
  1432. yyval.str = cat3_str(make1_str("add"), yyvsp[-1].str, yyvsp[0].str);
  1433. ;
  1434.     break;}
  1435. case 106:
  1436. #line 1216 "preproc.y"
  1437. {
  1438. yyval.str = make3_str(make1_str("add("), yyvsp[-1].str, make1_str(")"));
  1439. ;
  1440.     break;}
  1441. case 107:
  1442. #line 1220 "preproc.y"
  1443. { yyerror("ALTER TABLE/DROP COLUMN not yet implemented"); ;
  1444.     break;}
  1445. case 108:
  1446. #line 1222 "preproc.y"
  1447. { yyerror("ALTER TABLE/ALTER COLUMN/SET DEFAULT not yet implemented"); ;
  1448.     break;}
  1449. case 109:
  1450. #line 1224 "preproc.y"
  1451. { yyerror("ALTER TABLE/ALTER COLUMN/DROP DEFAULT not yet implemented"); ;
  1452.     break;}
  1453. case 110:
  1454. #line 1226 "preproc.y"
  1455. { yyerror("ALTER TABLE/ADD CONSTRAINT not yet implemented"); ;
  1456.     break;}
  1457. case 111:
  1458. #line 1237 "preproc.y"
  1459. {
  1460. yyval.str = cat2_str(make1_str("close"), yyvsp[0].str);
  1461. ;
  1462.     break;}
  1463. case 112:
  1464. #line 1252 "preproc.y"
  1465. {
  1466. yyval.str = cat3_str(cat5_str(make1_str("copy"), yyvsp[-5].str, yyvsp[-4].str, yyvsp[-3].str, yyvsp[-2].str), yyvsp[-1].str, yyvsp[0].str);
  1467. ;
  1468.     break;}
  1469. case 113:
  1470. #line 1258 "preproc.y"
  1471. { yyval.str = make1_str("to"); ;
  1472.     break;}
  1473. case 114:
  1474. #line 1260 "preproc.y"
  1475. { yyval.str = make1_str("from"); ;
  1476.     break;}
  1477. case 115:
  1478. #line 1268 "preproc.y"
  1479. { yyval.str = yyvsp[0].str; ;
  1480.     break;}
  1481. case 116:
  1482. #line 1269 "preproc.y"
  1483. { yyval.str = make1_str("stdin"); ;
  1484.     break;}
  1485. case 117:
  1486. #line 1270 "preproc.y"
  1487. { yyval.str = make1_str("stdout"); ;
  1488.     break;}
  1489. case 118:
  1490. #line 1273 "preproc.y"
  1491. { yyval.str = make1_str("binary"); ;
  1492.     break;}
  1493. case 119:
  1494. #line 1274 "preproc.y"
  1495. { yyval.str = make1_str(""); ;
  1496.     break;}
  1497. case 120:
  1498. #line 1277 "preproc.y"
  1499. { yyval.str = make1_str("with oids"); ;
  1500.     break;}
  1501. case 121:
  1502. #line 1278 "preproc.y"
  1503. { yyval.str = make1_str(""); ;
  1504.     break;}
  1505. case 122:
  1506. #line 1284 "preproc.y"
  1507. { yyval.str = cat2_str(make1_str("using delimiters"), yyvsp[0].str); ;
  1508.     break;}
  1509. case 123:
  1510. #line 1285 "preproc.y"
  1511. { yyval.str = make1_str(""); ;
  1512.     break;}
  1513. case 124:
  1514. #line 1299 "preproc.y"
  1515. {
  1516. yyval.str = cat3_str(cat4_str(make1_str("create"), yyvsp[-6].str, make1_str("table"), yyvsp[-4].str), make3_str(make1_str("("), yyvsp[-2].str, make1_str(")")), yyvsp[0].str);
  1517. ;
  1518.     break;}
  1519. case 125:
  1520. #line 1304 "preproc.y"
  1521. { yyval.str = yyvsp[0].str; ;
  1522.     break;}
  1523. case 126:
  1524. #line 1305 "preproc.y"
  1525. { yyval.str = cat2_str(yyvsp[-1].str,yyvsp[0].str); ;
  1526.     break;}
  1527. case 127:
  1528. #line 1308 "preproc.y"
  1529. { yyval.str = make1_str("temp"); ;
  1530.     break;}
  1531. case 128:
  1532. #line 1309 "preproc.y"
  1533. { yyval.str = make1_str("temporary"); ;
  1534.     break;}
  1535. case 129:
  1536. #line 1310 "preproc.y"
  1537. { yyval.str = make1_str(""); ;
  1538.     break;}
  1539. case 130:
  1540. #line 1314 "preproc.y"
  1541. {
  1542.                     yyerror("GLOBAL TEMPORARY TABLE is not currently supported");
  1543.                     yyval.str = make1_str("global");
  1544.                ;
  1545.     break;}
  1546. case 131:
  1547. #line 1318 "preproc.y"
  1548. { yyval.str = make1_str("local"); ;
  1549.     break;}
  1550. case 132:
  1551. #line 1323 "preproc.y"
  1552. {
  1553. yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str);
  1554. ;
  1555.     break;}
  1556. case 133:
  1557. #line 1327 "preproc.y"
  1558. {
  1559. yyval.str = yyvsp[0].str;
  1560. ;
  1561.     break;}
  1562. case 134:
  1563. #line 1330 "preproc.y"
  1564. { yyval.str = make1_str(""); ;
  1565.     break;}
  1566. case 135:
  1567. #line 1333 "preproc.y"
  1568. { yyval.str = yyvsp[0].str; ;
  1569.     break;}
  1570. case 136:
  1571. #line 1334 "preproc.y"
  1572. { yyval.str = yyvsp[0].str; ;
  1573.     break;}
  1574. case 137:
  1575. #line 1338 "preproc.y"
  1576. {
  1577. yyval.str = cat3_str(yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str);
  1578. ;
  1579.     break;}
  1580. case 138:
  1581. #line 1342 "preproc.y"
  1582. {
  1583. yyval.str = make3_str(yyvsp[-2].str, make1_str(" serial "), yyvsp[0].str);
  1584. ;
  1585.     break;}
  1586. case 139:
  1587. #line 1347 "preproc.y"
  1588. { yyval.str = yyvsp[0].str; ;
  1589.     break;}
  1590. case 140:
  1591. #line 1348 "preproc.y"
  1592. { yyval.str = make1_str(""); ;
  1593.     break;}
  1594. case 141:
  1595. #line 1351 "preproc.y"
  1596. { yyval.str = cat2_str(yyvsp[-1].str,yyvsp[0].str); ;
  1597.     break;}
  1598. case 142:
  1599. #line 1352 "preproc.y"
  1600. { yyval.str = yyvsp[0].str; ;
  1601.     break;}
  1602. case 143:
  1603. #line 1356 "preproc.y"
  1604. {
  1605. yyval.str = make1_str("primary key");
  1606.                 ;
  1607.     break;}
  1608. case 144:
  1609. #line 1360 "preproc.y"
  1610. {
  1611. yyval.str = make1_str("");
  1612. ;
  1613.     break;}
  1614. case 145:
  1615. #line 1367 "preproc.y"
  1616. {
  1617. yyval.str = cat3_str(make1_str("constraint"), yyvsp[-1].str, yyvsp[0].str);
  1618. ;
  1619.     break;}
  1620. case 146:
  1621. #line 1371 "preproc.y"
  1622. { yyval.str = yyvsp[0].str; ;
  1623.     break;}
  1624. case 147:
  1625. #line 1385 "preproc.y"
  1626. {
  1627. yyval.str = make3_str(make1_str("check("), yyvsp[-1].str, make1_str(")"));
  1628. ;
  1629.     break;}
  1630. case 148:
  1631. #line 1389 "preproc.y"
  1632. {
  1633. yyval.str = make1_str("default null");
  1634. ;
  1635.     break;}
  1636. case 149:
  1637. #line 1393 "preproc.y"
  1638. {
  1639. yyval.str = cat2_str(make1_str("default"), yyvsp[0].str);
  1640. ;
  1641.     break;}
  1642. case 150:
  1643. #line 1397 "preproc.y"
  1644. {
  1645. yyval.str = make1_str("not null");
  1646. ;
  1647.     break;}
  1648. case 151:
  1649. #line 1401 "preproc.y"
  1650. {
  1651. yyval.str = make1_str("unique");
  1652. ;
  1653.     break;}
  1654. case 152:
  1655. #line 1405 "preproc.y"
  1656. {
  1657. yyval.str = make1_str("primary key");
  1658. ;
  1659.     break;}
  1660. case 153:
  1661. #line 1409 "preproc.y"
  1662. {
  1663. fprintf(stderr, "CREATE TABLE/FOREIGN KEY clause ignored; not yet implemented");
  1664. yyval.str = make1_str("");
  1665. ;
  1666.     break;}
  1667. case 154:
  1668. #line 1416 "preproc.y"
  1669. {
  1670. yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str);
  1671. ;
  1672.     break;}
  1673. case 155:
  1674. #line 1420 "preproc.y"
  1675. {
  1676. yyval.str = yyvsp[0].str;
  1677. ;
  1678.     break;}
  1679. case 156:
  1680. #line 1434 "preproc.y"
  1681. { yyval.str = yyvsp[0].str; ;
  1682.     break;}
  1683. case 157:
  1684. #line 1436 "preproc.y"
  1685. { yyval.str = cat2_str(make1_str("-"), yyvsp[0].str); ;
  1686.     break;}
  1687. case 158:
  1688. #line 1438 "preproc.y"
  1689. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("+"), yyvsp[0].str); ;
  1690.     break;}
  1691. case 159:
  1692. #line 1440 "preproc.y"
  1693. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("-"), yyvsp[0].str); ;
  1694.     break;}
  1695. case 160:
  1696. #line 1442 "preproc.y"
  1697. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("/"), yyvsp[0].str); ;
  1698.     break;}
  1699. case 161:
  1700. #line 1444 "preproc.y"
  1701. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("%"), yyvsp[0].str); ;
  1702.     break;}
  1703. case 162:
  1704. #line 1446 "preproc.y"
  1705. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("*"), yyvsp[0].str); ;
  1706.     break;}
  1707. case 163:
  1708. #line 1448 "preproc.y"
  1709. { yyerror("boolean expressions not supported in DEFAULT"); ;
  1710.     break;}
  1711. case 164:
  1712. #line 1450 "preproc.y"
  1713. { yyerror("boolean expressions not supported in DEFAULT"); ;
  1714.     break;}
  1715. case 165:
  1716. #line 1452 "preproc.y"
  1717. { yyerror("boolean expressions not supported in DEFAULT"); ;
  1718.     break;}
  1719. case 166:
  1720. #line 1458 "preproc.y"
  1721. { yyval.str = cat2_str(make1_str(";"), yyvsp[0].str); ;
  1722.     break;}
  1723. case 167:
  1724. #line 1460 "preproc.y"
  1725. { yyval.str = cat2_str(make1_str("|"), yyvsp[0].str); ;
  1726.     break;}
  1727. case 168:
  1728. #line 1462 "preproc.y"
  1729. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("::"), yyvsp[0].str); ;
  1730.     break;}
  1731. case 169:
  1732. #line 1464 "preproc.y"
  1733. {
  1734. yyval.str = cat3_str(make2_str(make1_str("cast("), yyvsp[-3].str) , make1_str("as"), make2_str(yyvsp[-1].str, make1_str(")")));
  1735. ;
  1736.     break;}
  1737. case 170:
  1738. #line 1468 "preproc.y"
  1739. { yyval.str = make3_str(make1_str("("), yyvsp[-1].str, make1_str(")")); ;
  1740.     break;}
  1741. case 171:
  1742. #line 1470 "preproc.y"
  1743. { yyval.str = cat2_str(yyvsp[-2].str, make1_str("()")); ;
  1744.     break;}
  1745. case 172:
  1746. #line 1472 "preproc.y"
  1747. { yyval.str = cat2_str(yyvsp[-3].str, make3_str(make1_str("("), yyvsp[-1].str, make1_str(")"))); ;
  1748.     break;}
  1749. case 173:
  1750. #line 1474 "preproc.y"
  1751. {
  1752. if (!strcmp("<=", yyvsp[-1].str) || !strcmp(">=", yyvsp[-1].str))
  1753. yyerror("boolean expressions not supported in DEFAULT");
  1754. yyval.str = cat3_str(yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str);
  1755. ;
  1756.     break;}
  1757. case 174:
  1758. #line 1480 "preproc.y"
  1759. { yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str); ;
  1760.     break;}
  1761. case 175:
  1762. #line 1482 "preproc.y"
  1763. { yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str); ;
  1764.     break;}
  1765. case 176:
  1766. #line 1485 "preproc.y"
  1767. { yyval.str = make1_str("current_date"); ;
  1768.     break;}
  1769. case 177:
  1770. #line 1487 "preproc.y"
  1771. { yyval.str = make1_str("current_time"); ;
  1772.     break;}
  1773. case 178:
  1774. #line 1489 "preproc.y"
  1775. {
  1776. if (yyvsp[-1].str != 0)
  1777. fprintf(stderr, "CURRENT_TIME(%s) precision not implemented; zero used instead",yyvsp[-1].str);
  1778. yyval.str = "current_time";
  1779. ;
  1780.     break;}
  1781. case 179:
  1782. #line 1495 "preproc.y"
  1783. { yyval.str = make1_str("current_timestamp"); ;
  1784.     break;}
  1785. case 180:
  1786. #line 1497 "preproc.y"
  1787. {
  1788. if (yyvsp[-1].str != 0)
  1789. fprintf(stderr, "CURRENT_TIMESTAMP(%s) precision not implemented; zero used instead",yyvsp[-1].str);
  1790. yyval.str = "current_timestamp";
  1791. ;
  1792.     break;}
  1793. case 181:
  1794. #line 1503 "preproc.y"
  1795. { yyval.str = make1_str("current_user"); ;
  1796.     break;}
  1797. case 182:
  1798. #line 1505 "preproc.y"
  1799. {       yyval.str = make1_str("user"); ;
  1800.     break;}
  1801. case 183:
  1802. #line 1513 "preproc.y"
  1803. {
  1804. yyval.str = cat3_str(make1_str("constraint"), yyvsp[-1].str, yyvsp[0].str);
  1805. ;
  1806.     break;}
  1807. case 184:
  1808. #line 1517 "preproc.y"
  1809. { yyval.str = yyvsp[0].str; ;
  1810.     break;}
  1811. case 185:
  1812. #line 1521 "preproc.y"
  1813. {
  1814. yyval.str = make3_str(make1_str("check("), yyvsp[-1].str, make1_str(")"));
  1815. ;
  1816.     break;}
  1817. case 186:
  1818. #line 1525 "preproc.y"
  1819. {
  1820. yyval.str = make3_str(make1_str("unique("), yyvsp[-1].str, make1_str(")"));
  1821. ;
  1822.     break;}
  1823. case 187:
  1824. #line 1529 "preproc.y"
  1825. {
  1826. yyval.str = make3_str(make1_str("primary key("), yyvsp[-1].str, make1_str(")"));
  1827. ;
  1828.     break;}
  1829. case 188:
  1830. #line 1533 "preproc.y"
  1831. {
  1832. fprintf(stderr, "CREATE TABLE/FOREIGN KEY clause ignored; not yet implemented");
  1833. yyval.str = "";
  1834. ;
  1835.     break;}
  1836. case 189:
  1837. #line 1540 "preproc.y"
  1838. {
  1839. yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str);
  1840. ;
  1841.     break;}
  1842. case 190:
  1843. #line 1544 "preproc.y"
  1844. {
  1845. yyval.str = yyvsp[0].str;
  1846. ;
  1847.     break;}
  1848. case 191:
  1849. #line 1550 "preproc.y"
  1850. { yyval.str = yyvsp[0].str; ;
  1851.     break;}
  1852. case 192:
  1853. #line 1552 "preproc.y"
  1854. { yyval.str = make1_str("null"); ;
  1855.     break;}
  1856. case 193:
  1857. #line 1554 "preproc.y"
  1858. {
  1859. yyval.str = yyvsp[0].str;
  1860. ;
  1861.     break;}
  1862. case 194:
  1863. #line 1558 "preproc.y"
  1864. { yyval.str = cat2_str(make1_str("-"), yyvsp[0].str); ;
  1865.     break;}
  1866. case 195:
  1867. #line 1560 "preproc.y"
  1868. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("+"), yyvsp[0].str); ;
  1869.     break;}
  1870. case 196:
  1871. #line 1562 "preproc.y"
  1872. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("-"), yyvsp[0].str); ;
  1873.     break;}
  1874. case 197:
  1875. #line 1564 "preproc.y"
  1876. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("/"), yyvsp[0].str); ;
  1877.     break;}
  1878. case 198:
  1879. #line 1566 "preproc.y"
  1880. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("%"), yyvsp[0].str); ;
  1881.     break;}
  1882. case 199:
  1883. #line 1568 "preproc.y"
  1884. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("*"), yyvsp[0].str); ;
  1885.     break;}
  1886. case 200:
  1887. #line 1570 "preproc.y"
  1888. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("="), yyvsp[0].str); ;
  1889.     break;}
  1890. case 201:
  1891. #line 1572 "preproc.y"
  1892. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("<"), yyvsp[0].str); ;
  1893.     break;}
  1894. case 202:
  1895. #line 1574 "preproc.y"
  1896. { yyval.str = cat3_str(yyvsp[-2].str, make1_str(">"), yyvsp[0].str); ;
  1897.     break;}
  1898. case 203:
  1899. #line 1580 "preproc.y"
  1900. { yyval.str = cat2_str(make1_str(";"), yyvsp[0].str); ;
  1901.     break;}
  1902. case 204:
  1903. #line 1582 "preproc.y"
  1904. { yyval.str = cat2_str(make1_str("|"), yyvsp[0].str); ;
  1905.     break;}
  1906. case 205:
  1907. #line 1584 "preproc.y"
  1908. {
  1909. yyval.str = cat3_str(yyvsp[-2].str, make1_str("::"), yyvsp[0].str);
  1910. ;
  1911.     break;}
  1912. case 206:
  1913. #line 1588 "preproc.y"
  1914. {
  1915. yyval.str = cat3_str(make2_str(make1_str("cast("), yyvsp[-3].str), make1_str("as"), make2_str(yyvsp[-1].str, make1_str(")"))); 
  1916. ;
  1917.     break;}
  1918. case 207:
  1919. #line 1592 "preproc.y"
  1920. { yyval.str = make3_str(make1_str("("), yyvsp[-1].str, make1_str(")")); ;
  1921.     break;}
  1922. case 208:
  1923. #line 1594 "preproc.y"
  1924. {
  1925. { yyval.str = cat2_str(yyvsp[-2].str, make1_str("()")); }
  1926. ;
  1927.     break;}
  1928. case 209:
  1929. #line 1598 "preproc.y"
  1930. {
  1931. yyval.str = cat2_str(yyvsp[-3].str, make3_str(make1_str("("), yyvsp[-1].str, make1_str(")")));
  1932. ;
  1933.     break;}
  1934. case 210:
  1935. #line 1602 "preproc.y"
  1936. { yyval.str = cat3_str(yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str); ;
  1937.     break;}
  1938. case 211:
  1939. #line 1604 "preproc.y"
  1940. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("like"), yyvsp[0].str); ;
  1941.     break;}
  1942. case 212:
  1943. #line 1606 "preproc.y"
  1944. { yyval.str = cat3_str(yyvsp[-3].str, make1_str("not like"), yyvsp[0].str); ;
  1945.     break;}
  1946. case 213:
  1947. #line 1608 "preproc.y"
  1948. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("and"), yyvsp[0].str); ;
  1949.     break;}
  1950. case 214:
  1951. #line 1610 "preproc.y"
  1952. { yyval.str = cat3_str(yyvsp[-2].str, make1_str("or"), yyvsp[0].str); ;
  1953.     break;}
  1954. case 215:
  1955. #line 1612 "preproc.y"
  1956. { yyval.str = cat2_str(make1_str("not"), yyvsp[0].str); ;
  1957.     break;}
  1958. case 216:
  1959. #line 1614 "preproc.y"
  1960. { yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str); ;
  1961.     break;}
  1962. case 217:
  1963. #line 1616 "preproc.y"
  1964. { yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str); ;
  1965.     break;}
  1966. case 218:
  1967. #line 1618 "preproc.y"
  1968. { yyval.str = cat2_str(yyvsp[-1].str, make1_str("isnull")); ;
  1969.     break;}
  1970. case 219:
  1971. #line 1620 "preproc.y"
  1972. { yyval.str = cat2_str(yyvsp[-2].str, make1_str("is null")); ;
  1973.     break;}
  1974. case 220:
  1975. #line 1622 "preproc.y"
  1976. { yyval.str = cat2_str(yyvsp[-1].str, make1_str("notnull")); ;
  1977.     break;}
  1978. case 221:
  1979. #line 1624 "preproc.y"
  1980. { yyval.str = cat2_str(yyvsp[-3].str, make1_str("is not null")); ;
  1981.     break;}
  1982. case 222:
  1983. #line 1626 "preproc.y"
  1984. { yyval.str = cat2_str(yyvsp[-2].str, make1_str("is true")); ;
  1985.     break;}
  1986. case 223:
  1987. #line 1628 "preproc.y"
  1988. { yyval.str = cat2_str(yyvsp[-2].str, make1_str("is false")); ;
  1989.     break;}
  1990. case 224:
  1991. #line 1630 "preproc.y"
  1992. { yyval.str = cat2_str(yyvsp[-3].str, make1_str("is not true")); ;
  1993.     break;}
  1994. case 225:
  1995. #line 1632 "preproc.y"
  1996. { yyval.str = cat2_str(yyvsp[-3].str, make1_str("is not false")); ;
  1997.     break;}
  1998. case 226:
  1999. #line 1634 "preproc.y"
  2000. { yyval.str = cat4_str(yyvsp[-4].str, make1_str("in ("), yyvsp[-1].str, make1_str(")")); ;
  2001.     break;}
  2002. case 227:
  2003. #line 1636 "preproc.y"
  2004. { yyval.str = cat4_str(yyvsp[-5].str, make1_str("not in ("), yyvsp[-1].str, make1_str(")")); ;
  2005.     break;}
  2006. case 228:
  2007. #line 1638 "preproc.y"
  2008. { yyval.str = cat5_str(yyvsp[-4].str, make1_str("between"), yyvsp[-2].str, make1_str("and"), yyvsp[0].str); ;
  2009.     break;}
  2010. case 229:
  2011. #line 1640 "preproc.y"
  2012. { yyval.str = cat5_str(yyvsp[-5].str, make1_str("not between"), yyvsp[-2].str, make1_str("and"), yyvsp[0].str); ;
  2013.     break;}
  2014. case 230:
  2015. #line 1643 "preproc.y"
  2016. {
  2017. yyval.str = make3_str(yyvsp[-2].str, make1_str(", "), yyvsp[0].str);
  2018. ;
  2019.     break;}
  2020. case 231:
  2021. #line 1647 "preproc.y"
  2022. {
  2023. yyval.str = yyvsp[0].str;
  2024. ;
  2025.     break;}
  2026. case 232:
  2027. #line 1652 "preproc.y"
  2028. {
  2029. yyval.str = yyvsp[0].str;
  2030. ;
  2031.     break;}
  2032. case 233:
  2033. #line 1656 "preproc.y"
  2034. { yyval.str = make1_str("match full"); ;
  2035.     break;}
  2036. case 234:
  2037. #line 1657 "preproc.y"
  2038. { yyval.str = make1_str("match partial"); ;
  2039.     break;}
  2040. case 235:
  2041. #line 1658 "preproc.y"
  2042. { yyval.str = make1_str(""); ;
  2043.     break;}
  2044. case 236:
  2045. #line 1661 "preproc.y"
  2046. { yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str); ;
  2047.     break;}
  2048. case 237:
  2049. #line 1662 "preproc.y"
  2050. { yyval.str = yyvsp[0].str; ;
  2051.     break;}
  2052. case 238:
  2053. #line 1663 "preproc.y"
  2054. { yyval.str = make1_str(""); ;
  2055.     break;}
  2056. case 239:
  2057. #line 1666 "preproc.y"
  2058. { yyval.str = cat2_str(make1_str("on delete"), yyvsp[0].str); ;
  2059.     break;}
  2060. case 240:
  2061. #line 1667 "preproc.y"
  2062. { yyval.str = cat2_str(make1_str("on update"), yyvsp[0].str); ;
  2063.     break;}
  2064. case 241:
  2065. #line 1670 "preproc.y"
  2066. { yyval.str = make1_str("no action"); ;
  2067.     break;}
  2068. case 242:
  2069. #line 1671 "preproc.y"
  2070. { yyval.str = make1_str("cascade"); ;
  2071.     break;}
  2072. case 243:
  2073. #line 1672 "preproc.y"
  2074. { yyval.str = make1_str("set default"); ;
  2075.     break;}
  2076. case 244:
  2077. #line 1673 "preproc.y"
  2078. { yyval.str = make1_str("set null"); ;
  2079.     break;}
  2080. case 245:
  2081. #line 1676 "preproc.y"
  2082. { yyval.str = make3_str(make1_str("inherits ("), yyvsp[-1].str, make1_str(")")); ;
  2083.     break;}
  2084. case 246:
  2085. #line 1677 "preproc.y"
  2086. { yyval.str = make1_str(""); ;
  2087.     break;}
  2088. case 247:
  2089. #line 1681 "preproc.y"
  2090. {
  2091. yyval.str = cat5_str(cat3_str(make1_str("create"), yyvsp[-5].str, make1_str("table")), yyvsp[-3].str, yyvsp[-2].str, make1_str("as"), yyvsp[0].str); 
  2092. ;
  2093.     break;}
  2094. case 248:
  2095. #line 1686 "preproc.y"
  2096. { yyval.str = make3_str(make1_str("("), yyvsp[-1].str, make1_str(")")); ;
  2097.     break;}
  2098. case 249:
  2099. #line 1687 "preproc.y"
  2100. { yyval.str = make1_str(""); ;
  2101.     break;}
  2102. case 250:
  2103. #line 1690 "preproc.y"
  2104. { yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str); ;
  2105.     break;}
  2106. case 251:
  2107. #line 1691 "preproc.y"
  2108. { yyval.str = yyvsp[0].str; ;
  2109.     break;}
  2110. case 252:
  2111. #line 1694 "preproc.y"
  2112. { yyval.str = yyvsp[0].str; ;
  2113.     break;}
  2114. case 253:
  2115. #line 1705 "preproc.y"
  2116. {
  2117. yyval.str = cat3_str(make1_str("create sequence"), yyvsp[-1].str, yyvsp[0].str);
  2118. ;
  2119.     break;}
  2120. case 254:
  2121. #line 1711 "preproc.y"
  2122. { yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str); ;
  2123.     break;}
  2124. case 255:
  2125. #line 1712 "preproc.y"
  2126. { yyval.str = make1_str(""); ;
  2127.     break;}
  2128. case 256:
  2129. #line 1716 "preproc.y"
  2130. {
  2131. yyval.str = cat2_str(make1_str("cache"), yyvsp[0].str);
  2132. ;
  2133.     break;}
  2134. case 257:
  2135. #line 1720 "preproc.y"
  2136. {
  2137. yyval.str = make1_str("cycle");
  2138. ;
  2139.     break;}
  2140. case 258:
  2141. #line 1724 "preproc.y"
  2142. {
  2143. yyval.str = cat2_str(make1_str("increment"), yyvsp[0].str);
  2144. ;
  2145.     break;}
  2146. case 259:
  2147. #line 1728 "preproc.y"
  2148. {
  2149. yyval.str = cat2_str(make1_str("maxvalue"), yyvsp[0].str);
  2150. ;
  2151.     break;}
  2152. case 260:
  2153. #line 1732 "preproc.y"
  2154. {
  2155. yyval.str = cat2_str(make1_str("minvalue"), yyvsp[0].str);
  2156. ;
  2157.     break;}
  2158. case 261:
  2159. #line 1736 "preproc.y"
  2160. {
  2161. yyval.str = cat2_str(make1_str("start"), yyvsp[0].str);
  2162. ;
  2163.     break;}
  2164. case 262:
  2165. #line 1741 "preproc.y"
  2166. { yyval.str = yyvsp[0].str; ;
  2167.     break;}
  2168. case 263:
  2169. #line 1742 "preproc.y"
  2170. { yyval.str = yyvsp[0].str; ;
  2171.     break;}
  2172. case 264:
  2173. #line 1745 "preproc.y"
  2174. {
  2175.                                        yyval.str = yyvsp[0].str;
  2176.                                ;
  2177.     break;}
  2178. case 265:
  2179. #line 1749 "preproc.y"
  2180. {
  2181.                                        yyval.str = cat2_str(make1_str("-"), yyvsp[0].str);
  2182.                                ;
  2183.     break;}
  2184. case 266:
  2185. #line 1756 "preproc.y"
  2186. {
  2187. yyval.str = yyvsp[0].str;
  2188. ;
  2189.     break;}
  2190. case 267:
  2191. #line 1760 "preproc.y"
  2192. {
  2193. yyval.str = cat2_str(make1_str("-"), yyvsp[0].str);
  2194. ;
  2195.     break;}
  2196. case 268:
  2197. #line 1775 "preproc.y"
  2198. {
  2199. yyval.str = cat4_str(cat5_str(make1_str("create"), yyvsp[-7].str, make1_str("precedural language"), yyvsp[-4].str, make1_str("handler")), yyvsp[-2].str, make1_str("langcompiler"), yyvsp[0].str);
  2200. ;
  2201.     break;}
  2202. case 269:
  2203. #line 1780 "preproc.y"
  2204. { yyval.str = make1_str("trusted"); ;
  2205.     break;}
  2206. case 270:
  2207. #line 1781 "preproc.y"
  2208. { yyval.str = make1_str(""); ;
  2209.     break;}
  2210. case 271:
  2211. #line 1784 "preproc.y"
  2212. {
  2213. yyval.str = cat2_str(make1_str("drop procedural language"), yyvsp[0].str);
  2214. ;
  2215.     break;}
  2216. case 272:
  2217. #line 1800 "preproc.y"
  2218. {
  2219. yyval.str = cat2_str(cat5_str(cat5_str(make1_str("create trigger"), yyvsp[-11].str, yyvsp[-10].str, yyvsp[-9].str, make1_str("on")), yyvsp[-7].str, yyvsp[-6].str, make1_str("execute procedure"), yyvsp[-3].str), make3_str(make1_str("("), yyvsp[-1].str, make1_str(")")));
  2220. ;
  2221.     break;}
  2222. case 273:
  2223. #line 1805 "preproc.y"
  2224. { yyval.str = make1_str("before"); ;
  2225.     break;}
  2226. case 274:
  2227. #line 1806 "preproc.y"
  2228. { yyval.str = make1_str("after"); ;
  2229.     break;}
  2230. case 275:
  2231. #line 1810 "preproc.y"
  2232. {
  2233. yyval.str = yyvsp[0].str;
  2234. ;
  2235.     break;}
  2236. case 276:
  2237. #line 1814 "preproc.y"
  2238. {
  2239. yyval.str = cat3_str(yyvsp[-2].str, make1_str("or"), yyvsp[0].str);
  2240. ;
  2241.     break;}
  2242. case 277:
  2243. #line 1818 "preproc.y"
  2244. {
  2245. yyval.str = cat5_str(yyvsp[-4].str, make1_str("or"), yyvsp[-2].str, make1_str("or"), yyvsp[0].str);
  2246. ;
  2247.     break;}
  2248. case 278:
  2249. #line 1823 "preproc.y"
  2250. { yyval.str = make1_str("insert"); ;
  2251.     break;}
  2252. case 279:
  2253. #line 1824 "preproc.y"
  2254. { yyval.str = make1_str("delete"); ;
  2255.     break;}
  2256. case 280:
  2257. #line 1825 "preproc.y"
  2258. { yyval.str = make1_str("update"); ;
  2259.     break;}
  2260. case 281:
  2261. #line 1829 "preproc.y"
  2262. {
  2263. yyval.str = cat3_str(make1_str("for"), yyvsp[-1].str, yyvsp[0].str);
  2264. ;
  2265.     break;}
  2266. case 282:
  2267. #line 1834 "preproc.y"
  2268. { yyval.str = make1_str("each"); ;
  2269.     break;}
  2270. case 283:
  2271. #line 1835 "preproc.y"
  2272. { yyval.str = make1_str(""); ;
  2273.     break;}
  2274. case 284:
  2275. #line 1838 "preproc.y"
  2276. { yyval.str = make1_str("row"); ;
  2277.     break;}
  2278. case 285:
  2279. #line 1839 "preproc.y"
  2280. { yyval.str = make1_str("statement"); ;
  2281.     break;}
  2282. case 286:
  2283. #line 1843 "preproc.y"
  2284. { yyval.str = yyvsp[0].str; ;
  2285.     break;}
  2286. case 287:
  2287. #line 1845 "preproc.y"
  2288. { yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str); ;
  2289.     break;}
  2290. case 288:
  2291. #line 1847 "preproc.y"
  2292. { yyval.str = make1_str(""); ;
  2293.     break;}
  2294. case 289:
  2295. #line 1851 "preproc.y"
  2296. {
  2297. yyval.str = yyvsp[0].str;
  2298. ;
  2299.     break;}
  2300. case 290:
  2301. #line 1855 "preproc.y"
  2302. {
  2303. yyval.str = yyvsp[0].str;
  2304. ;
  2305.     break;}
  2306. case 291:
  2307. #line 1858 "preproc.y"
  2308. {  yyval.str = yyvsp[0].str; ;
  2309.     break;}
  2310. case 292:
  2311. #line 1859 "preproc.y"
  2312. {  yyval.str = yyvsp[0].str; ;
  2313.     break;}
  2314. case 293:
  2315. #line 1863 "preproc.y"
  2316. {
  2317. yyval.str = cat4_str(make1_str("drop trigger"), yyvsp[-2].str, make1_str("on"), yyvsp[0].str);
  2318. ;
  2319.     break;}
  2320. case 294:
  2321. #line 1876 "preproc.y"
  2322. {
  2323. yyval.str = cat3_str(make1_str("create"), yyvsp[-1].str, yyvsp[0].str);
  2324. ;
  2325.     break;}
  2326. case 295:
  2327. #line 1882 "preproc.y"
  2328. {
  2329. yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str);
  2330. ;
  2331.     break;}
  2332. case 296:
  2333. #line 1887 "preproc.y"
  2334. { yyval.str = make1_str("operator"); ;
  2335.     break;}
  2336. case 297:
  2337. #line 1888 "preproc.y"
  2338. { yyval.str = make1_str("type"); ;
  2339.     break;}
  2340. case 298:
  2341. #line 1889 "preproc.y"
  2342. { yyval.str = make1_str("aggregate"); ;
  2343.     break;}
  2344. case 299:
  2345. #line 1892 "preproc.y"
  2346. { yyval.str = make1_str("procedure"); ;
  2347.     break;}
  2348. case 300:
  2349. #line 1893 "preproc.y"
  2350. { yyval.str = make1_str("join"); ;
  2351.     break;}
  2352. case 301:
  2353. #line 1894 "preproc.y"
  2354. { yyval.str = yyvsp[0].str; ;
  2355.     break;}
  2356. case 302:
  2357. #line 1895 "preproc.y"
  2358. { yyval.str = yyvsp[0].str; ;
  2359.     break;}
  2360. case 303:
  2361. #line 1896 "preproc.y"
  2362. { yyval.str = yyvsp[0].str; ;
  2363.     break;}
  2364. case 304:
  2365. #line 1899 "preproc.y"
  2366. { yyval.str = make3_str(make1_str("("), yyvsp[-1].str, make1_str(")")); ;
  2367.     break;}
  2368. case 305:
  2369. #line 1902 "preproc.y"
  2370. { yyval.str = yyvsp[0].str; ;
  2371.     break;}
  2372. case 306:
  2373. #line 1903 "preproc.y"
  2374. { yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str); ;
  2375.     break;}
  2376. case 307:
  2377. #line 1906 "preproc.y"
  2378. {
  2379. yyval.str = cat3_str(yyvsp[-2].str, make1_str("="), yyvsp[0].str);
  2380. ;
  2381.     break;}
  2382. case 308:
  2383. #line 1910 "preproc.y"
  2384. {
  2385. yyval.str = yyvsp[0].str;
  2386. ;
  2387.     break;}
  2388. case 309:
  2389. #line 1914 "preproc.y"
  2390. {
  2391. yyval.str = cat2_str(make1_str("default ="), yyvsp[0].str);
  2392. ;
  2393.     break;}
  2394. case 310:
  2395. #line 1919 "preproc.y"
  2396. {  yyval.str = yyvsp[0].str; ;
  2397.     break;}
  2398. case 311:
  2399. #line 1920 "preproc.y"
  2400. {  yyval.str = yyvsp[0].str; ;
  2401.     break;}
  2402. case 312:
  2403. #line 1921 "preproc.y"
  2404. {  yyval.str = yyvsp[0].str; ;
  2405.     break;}
  2406. case 313:
  2407. #line 1922 "preproc.y"
  2408. {  yyval.str = yyvsp[0].str; ;
  2409.     break;}
  2410. case 314:
  2411. #line 1924 "preproc.y"
  2412. {
  2413. yyval.str = cat2_str(make1_str("setof"), yyvsp[0].str);
  2414. ;
  2415.     break;}
  2416. case 315:
  2417. #line 1937 "preproc.y"
  2418. {
  2419. yyval.str = cat2_str(make1_str("drop table"), yyvsp[0].str);
  2420. ;
  2421.     break;}
  2422. case 316:
  2423. #line 1941 "preproc.y"
  2424. {
  2425. yyval.str = cat2_str(make1_str("drop sequence"), yyvsp[0].str);
  2426. ;
  2427.     break;}
  2428. case 317:
  2429. #line 1958 "preproc.y"
  2430. {
  2431. if (strncmp(yyvsp[-4].str, "relative", strlen("relative")) == 0 && atol(yyvsp[-3].str) == 0L)
  2432. yyerror("FETCH/RELATIVE at current position is not supported");
  2433. yyval.str = cat4_str(make1_str("fetch"), yyvsp[-4].str, yyvsp[-3].str, yyvsp[-2].str);
  2434. ;
  2435.     break;}
  2436. case 318:
  2437. #line 1965 "preproc.y"
  2438. {
  2439. yyval.str = cat4_str(make1_str("fetch"), yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str);
  2440. ;
  2441.     break;}
  2442. case 319:
  2443. #line 1970 "preproc.y"
  2444. { yyval.str = make1_str("forward"); ;
  2445.     break;}
  2446. case 320:
  2447. #line 1971 "preproc.y"
  2448. { yyval.str = make1_str("backward"); ;
  2449.     break;}
  2450. case 321:
  2451. #line 1972 "preproc.y"
  2452. { yyval.str = make1_str("relative"); ;
  2453.     break;}
  2454. case 322:
  2455. #line 1974 "preproc.y"
  2456. {
  2457. fprintf(stderr, "FETCH/ABSOLUTE not supported, using RELATIVE");
  2458. yyval.str = make1_str("absolute");
  2459. ;
  2460.     break;}
  2461. case 323:
  2462. #line 1978 "preproc.y"
  2463. { yyval.str = make1_str(""); /* default */ ;
  2464.     break;}
  2465. case 324:
  2466. #line 1981 "preproc.y"
  2467. { yyval.str = yyvsp[0].str; ;
  2468.     break;}
  2469. case 325:
  2470. #line 1982 "preproc.y"
  2471. { yyval.str = make2_str(make1_str("-"), yyvsp[0].str); ;
  2472.     break;}
  2473. case 326:
  2474. #line 1983 "preproc.y"
  2475. { yyval.str = make1_str("all"); ;
  2476.     break;}
  2477. case 327:
  2478. #line 1984 "preproc.y"
  2479. { yyval.str = make1_str("next"); ;
  2480.     break;}
  2481. case 328:
  2482. #line 1985 "preproc.y"
  2483. { yyval.str = make1_str("prior"); ;
  2484.     break;}
  2485. case 329:
  2486. #line 1986 "preproc.y"
  2487. { yyval.str = make1_str(""); /*default*/ ;
  2488.     break;}
  2489. case 330:
  2490. #line 1989 "preproc.y"
  2491. { yyval.str = cat2_str(make1_str("in"), yyvsp[0].str); ;
  2492.     break;}
  2493. case 331:
  2494. #line 1990 "preproc.y"
  2495. { yyval.str = cat2_str(make1_str("from"), yyvsp[0].str); ;
  2496.     break;}
  2497. case 332:
  2498. #line 1992 "preproc.y"
  2499. { yyval.str = make1_str(""); ;
  2500.     break;}
  2501. case 333:
  2502. #line 2004 "preproc.y"
  2503. {
  2504. yyval.str = cat2_str(cat5_str(make1_str("grant"), yyvsp[-5].str, make1_str("on"), yyvsp[-3].str, make1_str("to")), yyvsp[-1].str);
  2505. ;
  2506.     break;}
  2507. case 334:
  2508. #line 2010 "preproc.y"
  2509. {
  2510.  yyval.str = make1_str("all privileges");
  2511. ;
  2512.     break;}
  2513. case 335:
  2514. #line 2014 "preproc.y"
  2515. {
  2516.  yyval.str = make1_str("all");
  2517. ;
  2518.     break;}
  2519. case 336:
  2520. #line 2018 "preproc.y"
  2521. {
  2522.  yyval.str = yyvsp[0].str;
  2523. ;
  2524.     break;}
  2525. case 337:
  2526. #line 2024 "preproc.y"
  2527. {
  2528. yyval.str = yyvsp[0].str;
  2529. ;
  2530.     break;}
  2531. case 338:
  2532. #line 2028 "preproc.y"
  2533. {
  2534. yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str);
  2535. ;
  2536.     break;}
  2537. case 339:
  2538. #line 2034 "preproc.y"
  2539. {
  2540. yyval.str = make1_str("select");
  2541. ;
  2542.     break;}
  2543. case 340:
  2544. #line 2038 "preproc.y"
  2545. {
  2546. yyval.str = make1_str("insert");
  2547. ;
  2548.     break;}
  2549. case 341:
  2550. #line 2042 "preproc.y"
  2551. {
  2552. yyval.str = make1_str("update");
  2553. ;
  2554.     break;}
  2555. case 342:
  2556. #line 2046 "preproc.y"
  2557. {
  2558. yyval.str = make1_str("delete");
  2559. ;
  2560.     break;}
  2561. case 343:
  2562. #line 2050 "preproc.y"
  2563. {
  2564. yyval.str = make1_str("rule");
  2565. ;
  2566.     break;}
  2567. case 344:
  2568. #line 2056 "preproc.y"
  2569. {
  2570. yyval.str = make1_str("public");
  2571. ;
  2572.     break;}
  2573. case 345:
  2574. #line 2060 "preproc.y"
  2575. {
  2576. yyval.str = cat2_str(make1_str("group"), yyvsp[0].str);
  2577. ;
  2578.     break;}
  2579. case 346:
  2580. #line 2064 "preproc.y"
  2581. {
  2582. yyval.str = yyvsp[0].str;
  2583. ;
  2584.     break;}
  2585. case 347:
  2586. #line 2070 "preproc.y"
  2587. {
  2588. yyerror("WITH GRANT OPTION is not supported.  Only relation owners can set privileges");
  2589.  ;
  2590.     break;}
  2591. case 349:
  2592. #line 2085 "preproc.y"
  2593. {
  2594. yyval.str = cat2_str(cat5_str(make1_str("revoke"), yyvsp[-4].str, make1_str("on"), yyvsp[-2].str, make1_str("from")), yyvsp[0].str);
  2595. ;
  2596.     break;}
  2597. case 350:
  2598. #line 2104 "preproc.y"
  2599. {
  2600. /* should check that access_method is valid,
  2601.    etc ... but doesn't */
  2602. yyval.str = cat5_str(cat5_str(make1_str("create"), yyvsp[-9].str, make1_str("index"), yyvsp[-7].str, make1_str("on")), yyvsp[-5].str, yyvsp[-4].str, make3_str(make1_str("("), yyvsp[-2].str, make1_str(")")), yyvsp[0].str);
  2603. ;
  2604.     break;}
  2605. case 351:
  2606. #line 2111 "preproc.y"
  2607. { yyval.str = make1_str("unique"); ;
  2608.     break;}
  2609. case 352:
  2610. #line 2112 "preproc.y"
  2611. { yyval.str = make1_str(""); ;
  2612.     break;}
  2613. case 353:
  2614. #line 2115 "preproc.y"
  2615. { yyval.str = cat2_str(make1_str("using"), yyvsp[0].str); ;
  2616.     break;}
  2617. case 354:
  2618. #line 2116 "preproc.y"
  2619. { yyval.str = make1_str(""); ;
  2620.     break;}
  2621. case 355:
  2622. #line 2119 "preproc.y"
  2623. { yyval.str = yyvsp[0].str; ;
  2624.     break;}
  2625. case 356:
  2626. #line 2120 "preproc.y"
  2627. { yyval.str = yyvsp[0].str; ;
  2628.     break;}
  2629. case 357:
  2630. #line 2123 "preproc.y"
  2631. { yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str); ;
  2632.     break;}
  2633. case 358:
  2634. #line 2124 "preproc.y"
  2635. { yyval.str = yyvsp[0].str; ;
  2636.     break;}
  2637. case 359:
  2638. #line 2128 "preproc.y"
  2639. {
  2640. yyval.str = cat4_str(yyvsp[-5].str, make3_str(make1_str("("), yyvsp[-3].str, ")"), yyvsp[-1].str, yyvsp[0].str);
  2641. ;
  2642.     break;}
  2643. case 360:
  2644. #line 2134 "preproc.y"
  2645. {
  2646. yyval.str = cat3_str(yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str);
  2647. ;
  2648.     break;}
  2649. case 361:
  2650. #line 2139 "preproc.y"
  2651. { yyval.str = cat2_str(make1_str(":"), yyvsp[0].str); ;
  2652.     break;}
  2653. case 362:
  2654. #line 2140 "preproc.y"
  2655. { yyval.str = cat2_str(make1_str("for"), yyvsp[0].str); ;
  2656.     break;}
  2657. case 363:
  2658. #line 2141 "preproc.y"
  2659. { yyval.str = make1_str(""); ;
  2660.     break;}
  2661. case 364:
  2662. #line 2150 "preproc.y"
  2663. { yyval.str = yyvsp[0].str; ;
  2664.     break;}
  2665. case 365:
  2666. #line 2151 "preproc.y"
  2667. { yyval.str = cat2_str(make1_str("using"), yyvsp[0].str); ;
  2668.     break;}
  2669. case 366:
  2670. #line 2152 "preproc.y"
  2671. { yyval.str = make1_str(""); ;
  2672.     break;}
  2673. case 367:
  2674. #line 2163 "preproc.y"
  2675. {
  2676. yyval.str = cat3_str(make1_str("extend index"), yyvsp[-1].str, yyvsp[0].str);
  2677. ;
  2678.     break;}
  2679. case 368:
  2680. #line 2200 "preproc.y"
  2681. {
  2682. yyval.str = cat2_str(cat5_str(cat5_str(make1_str("create function"), yyvsp[-8].str, yyvsp[-7].str, make1_str("returns"), yyvsp[-5].str), yyvsp[-4].str, make1_str("as"), yyvsp[-2].str, make1_str("language")), yyvsp[0].str);
  2683. ;
  2684.     break;}
  2685. case 369:
  2686. #line 2204 "preproc.y"
  2687. { yyval.str = cat2_str(make1_str("with"), yyvsp[0].str); ;
  2688.     break;}
  2689. case 370:
  2690. #line 2205 "preproc.y"
  2691. { yyval.str = make1_str(""); ;
  2692.     break;}
  2693. case 371:
  2694. #line 2208 "preproc.y"
  2695. { yyval.str = make3_str(make1_str("("), yyvsp[-1].str, make1_str(")")); ;
  2696.     break;}
  2697. case 372:
  2698. #line 2209 "preproc.y"
  2699. { yyval.str = make1_str("()"); ;
  2700.     break;}
  2701. case 373:
  2702. #line 2212 "preproc.y"
  2703. { yyval.str = yyvsp[0].str; ;
  2704.     break;}
  2705. case 374:
  2706. #line 2214 "preproc.y"
  2707. { yyval.str = cat3_str(yyvsp[-2].str, make1_str(","), yyvsp[0].str); ;
  2708.     break;}
  2709. case 375:
  2710. #line 2218 "preproc.y"
  2711. {
  2712. yyval.str = cat2_str(yyvsp[-1].str, yyvsp[0].str);
  2713. ;
  2714.     break;}
  2715. case 376:
  2716. #line 2223 "preproc.y"
  2717. { yyval.str = make1_str("setof"); ;
  2718.     break;}
  2719. case 377:
  2720. #line 2224 "preproc.y"
  2721. { yyval.str = make1_str(""); ;
  2722.     break;}
  2723. case 378:
  2724. #line 2246 "preproc.y"
  2725. {
  2726. yyval.str = cat3_str(make1_str("drop"), yyvsp[-1].str, yyvsp[0].str);
  2727. ;
  2728.     break;}
  2729. case 379:
  2730. #line 2251 "preproc.y"
  2731. {  yyval.str = make1_str("type"); ;
  2732.     break;}
  2733. case 380:
  2734. #line 2252 "preproc.y"
  2735. {  yyval.str = make1_str("index"); ;
  2736.     break;}
  2737. case 381:
  2738. #line 2253 "preproc.y"
  2739. {  yyval.str = make1_str("rule"); ;
  2740.     break;}
  2741. case 382:
  2742. #line 2254 "preproc.y"
  2743. {  yyval.str = make1_str("view"); ;
  2744.     break;}