New prebuilt versions of gram.c and scan.c for the mixed case
authorJan Wieck
Thu, 28 Jan 1999 11:50:42 +0000 (11:50 +0000)
committerJan Wieck
Thu, 28 Jan 1999 11:50:42 +0000 (11:50 +0000)
identifier support.

Jan

src/pl/plpgsql/src/gram.c
src/pl/plpgsql/src/scan.c

index d6a11dda3eb0adf50a67074d41ac387936344d06..2d4ef46a1b14382f66b533452f43a648f69b72e6 100644 (file)
@@ -65,7 +65,7 @@
  *           procedural language
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/gram.c,v 1.2 1998/12/18 19:45:38 momjian Exp $
+ *    $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/gram.c,v 1.3 1999/01/28 11:50:41 wieck Exp $
  *
  *    This software is copyrighted by Jan Wieck - Hamburg.
  *
@@ -414,7 +414,7 @@ static const short yycheck[] = {    21,
    152,    62
 };
 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
-#line 3 "/usr/local/bison/bison.simple"
+#line 3 "/usr/share/bison.simple"
 
 /* Skeleton output parser for bison,
    Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
@@ -467,6 +467,16 @@ void *alloca ();
 #endif /* not GNU C.  */
 #endif /* alloca not defined.  */
 
+#ifdef __cplusplus
+extern "C" {
+  void yyerror(char *);
+  int yylex();
+};
+#else
+  extern void yyerror(char *);
+  extern int yylex();
+#endif
+
 /* This is the parser code that is written into each bison parser
   when the %semantic_parser declaration is not specified in the grammar.
   It was written by Richard Stallman by simplifying the hairy parser
@@ -563,9 +573,13 @@ int yydebug;           /*  nonzero means print parse trace */
 #define YYMAXDEPTH 10000
 #endif
 
+#ifndef YYPARSE_RETURN_TYPE
+#define YYPARSE_RETURN_TYPE int
+#endif
+
 /* Prevent warning if -Wstrict-prototypes.  */
 #ifdef __GNUC__
-int yyparse (void);
+YYPARSE_RETURN_TYPE yyparse (void);
 #endif
 \f
 #if __GNUC__ > 1       /* GNU C and GNU C++ define this.  */
@@ -607,7 +621,7 @@ __yy_memcpy (char *to, char *from, int count)
 #endif
 #endif
 \f
-#line 196 "/usr/local/bison/bison.simple"
+#line 196 "/usr/share/bison.simple"
 
 /* The user can define YYPARSE_PARAM as the name of an argument to be passed
    into yyparse.  The argument should have type void *.
@@ -628,7 +642,7 @@ __yy_memcpy (char *to, char *from, int count)
 #define YYPARSE_PARAM_DECL
 #endif /* not YYPARSE_PARAM */
 
-int
+YYPARSE_RETURN_TYPE
 yyparse(YYPARSE_PARAM_ARG)
      YYPARSE_PARAM_DECL
 {
@@ -1086,7 +1100,7 @@ case 23:
            char    *name;
 
            plpgsql_ns_setlocal(false);
-           name = plpgsql_tolower(pstrdup(yytext));
+           name = plpgsql_tolower(yytext);
            if (name[0] != '$') {
                elog(ERROR, "can only alias positional parameters");
            }
@@ -1116,7 +1130,7 @@ case 25:
 case 26:
 #line 376 "gram.y"
 {
-               yyval.str = plpgsql_tolower(pstrdup(yytext));
+               yyval.str = plpgsql_tolower(yytext);
            ;
     break;}
 case 27:
@@ -1891,7 +1905,7 @@ case 105:
     break;}
 }
    /* the action file gets copied in in place of this dollarsign */
-#line 498 "/usr/local/bison/bison.simple"
+#line 498 "/usr/share/bison.simple"
 \f
   yyvsp -= yylen;
   yyssp -= yylen;
index e0054dc316f0e686ab75f861959105221a988a6d..5f98d0b5120d20173595a63a288fc0e46970cbfd 100644 (file)
@@ -1,7 +1,7 @@
 /* A lexical scanner generated by flex */
 
 /* Scanner skeleton version:
- * /master/usr.bin/lex/skel.c,v 1.3 1997/09/25 00:10:23 jch Exp
+ * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/scan.c,v 1.3 1999/01/28 11:50:42 wieck Exp $
  */
 
 #define FLEX_SCANNER
@@ -126,7 +126,6 @@ extern FILE *yyin, *yyout;
        { \
        /* Undo effects of setting up yytext. */ \
        *yy_cp = yy_hold_char; \
-       YY_RESTORE_YY_MORE_OFFSET \
        yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
        YY_DO_BEFORE_ACTION; /* set up yytext again */ \
        } \
@@ -236,7 +235,7 @@ void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
 #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
 
 YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
-YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
+YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *str ));
 YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
 
 static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
@@ -282,15 +281,13 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
  */
 #define YY_DO_BEFORE_ACTION \
    yytext_ptr = yy_bp; \
-   yyleng = (int) (yy_cp - yy_bp); \
+   yytext_ptr -= yy_more_len; \
+   yyleng = (int) (yy_cp - yytext_ptr); \
    yy_hold_char = *yy_cp; \
    *yy_cp = '\0'; \
-   if ( yyleng + yy_more_offset >= YYLMAX ) \
+   if ( yyleng >= YYLMAX ) \
        YY_FATAL_ERROR( "token too large, exceeds YYLMAX" ); \
-   yy_flex_strncpy( &yytext[yy_more_offset], yytext_ptr, yyleng + 1 ); \
-   yyleng += yy_more_offset; \
-   yy_prev_more_offset = yy_more_offset; \
-   yy_more_offset = 0; \
+   yy_flex_strncpy( yytext, yytext_ptr, yyleng + 1 ); \
    yy_c_buf_p = yy_cp;
 
 #define YY_NUM_RULES 60
@@ -298,20 +295,20 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
 static yyconst short int yy_acclist[274] =
     {   0,
        58,   58,   61,   59,   60,   48,   59,   60,   48,   60,
-       59,   60,   54,   59,   60,   59,   60,   59,   60,   59,
-       60,   47,   59,   60,   59,   60,    2,   59,   60,   40,
+       40,   59,   60,   59,   60,   54,   59,   60,   59,   60,
+       59,   60,   59,   60,   47,   59,   60,   59,   60,    2,
        59,   60,   40,   59,   60,   40,   59,   60,   40,   59,
        60,   40,   59,   60,   40,   59,   60,   40,   59,   60,
        40,   59,   60,   40,   59,   60,   40,   59,   60,   40,
        59,   60,   40,   59,   60,   40,   59,   60,   40,   59,
        60,   40,   59,   60,   40,   59,   60,   59,   60,   58,
        60,   57,   60,   60,   53,   60,   52,   60,   53,   60,
-       48,   46,   49,    3,   50,   47,    1,   40,   40,   40,
+       48,   40,   46,   49,    3,   50,   47,    1,   40,   40,
 
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        18,   40,   19,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   33,   40,   40,   40,   40,   58,   56,   55,
-       51,   49,   41,   40,   40,   40,   40,   40,   40,   40,
+       51,   41,   49,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   13,   40,   40,   40,   16,   40,   40,
        40,   40,   22,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   41,   40,   40,
@@ -332,19 +329,19 @@ static yyconst short int yy_acclist[274] =
 static yyconst short int yy_accept[213] =
     {   0,
         1,    1,    1,    2,    3,    3,    3,    4,    6,    9,
-       11,   13,   16,   18,   20,   22,   25,   27,   30,   33,
+       11,   14,   16,   19,   21,   23,   25,   28,   30,   33,
        36,   39,   42,   45,   48,   51,   54,   57,   60,   63,
        66,   69,   72,   75,   78,   80,   82,   84,   85,   87,
-       89,   91,   92,   93,   94,   95,   96,   97,   98,   98,
+       89,   91,   92,   93,   93,   93,   94,   95,   96,   97,
        98,   99,  100,  101,  102,  103,  104,  105,  106,  107,
       108,  109,  110,  111,  113,  115,  116,  117,  118,  119,
       120,  121,  122,  123,  125,  126,  127,  128,  128,  129,
-      130,  131,  132,  133,  133,  133,  134,  135,  136,  137,
+      130,  131,  132,  132,  132,  133,  134,  135,  136,  137,
       138,  139,  140,  141,  142,  143,  144,  146,  147,  148,
 
       150,  151,  152,  153,  155,  156,  157,  158,  159,  160,
       161,  162,  163,  164,  165,  166,  167,  168,  168,  168,
-      168,  168,  168,  169,  170,  171,  172,  174,  175,  176,
+      168,  169,  169,  169,  170,  171,  172,  174,  175,  176,
       177,  178,  180,  182,  183,  185,  187,  189,  191,  192,
       194,  195,  196,  197,  198,  199,  200,  201,  203,  205,
       206,  208,  209,  209,  209,  209,  209,  210,  212,  214,
@@ -362,17 +359,17 @@ static yyconst int yy_ec[256] =
         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    2,    1,    1,    4,    5,    6,    1,    7,    1,
-        1,    8,    1,    1,    9,   10,   11,   12,   12,   12,
-       12,   12,   12,   12,   12,   12,   12,   13,    1,    1,
-       14,    1,    1,    1,   17,   18,   19,   20,   21,   22,
-       23,   24,   25,   15,   15,   26,   27,   28,   29,   30,
-       15,   31,   32,   33,   34,   35,   36,   37,   38,   15,
-        1,   16,    1,    1,   15,    1,   17,   18,   19,   20,
-
-       21,   22,   23,   24,   25,   15,   15,   26,   27,   28,
-       29,   30,   15,   31,   32,   33,   34,   35,   36,   37,
-       38,   15,    1,    1,    1,    1,    1,    1,    1,    1,
+        1,    2,    1,    4,    5,    6,    7,    1,    8,    1,
+        1,    9,    1,    1,   10,   11,   12,   13,   13,   13,
+       13,   13,   13,   13,   13,   13,   13,   14,    1,    1,
+       15,    1,    1,    1,   17,   18,   19,   20,   21,   22,
+       23,   24,   25,    4,    4,   26,   27,   28,   29,   30,
+        4,   31,   32,   33,   34,   35,   36,   37,   38,    4,
+        1,   16,    1,    1,    4,    1,   17,   18,   19,   20,
+
+       21,   22,   23,   24,   25,    4,    4,   26,   27,   28,
+       29,   30,    4,   31,   32,   33,   34,   35,   36,   37,
+       38,    4,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -391,57 +388,57 @@ static yyconst int yy_ec[256] =
 
 static yyconst int yy_meta[39] =
     {   0,
-        1,    1,    2,    1,    1,    3,    4,    1,    1,    3,
-        1,    5,    1,    1,    6,    4,    6,    6,    6,    6,
-        6,    6,    6,    6,    6,    6,    6,    6,    6,    6,
-        6,    6,    6,    6,    6,    6,    6,    6
+        1,    1,    2,    3,    1,    1,    4,    5,    1,    1,
+        4,    1,    6,    1,    1,    5,    3,    3,    3,    3,
+        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
+        3,    3,    3,    3,    3,    3,    3,    3
     } ;
 
 static yyconst short int yy_base[222] =
     {   0,
-        0,  284,   32,   33,   38,   39,  287,  585,   41,   48,
-      253,  585,  248,  246,  243,  236,  218,  585,   46,   47,
-       48,   53,   54,   55,   56,   62,   64,   70,   85,   88,
-       90,   91,   97,  102,  198,    0,  218,    0,  585,  585,
-      209,  114,  207,    0,  585,  585,  206,  585,   88,    0,
-       61,  112,  117,  122,  125,  124,  137,  138,  139,  140,
-      147,  148,  157,  158,  163,  164,  170,  171,  177,  179,
-      203,  172,  178,  184,  185,  195,  196,  170,    0,  585,
-      585,  585,    0,  163,  137,  201,  206,  204,  218,  224,
-      227,  229,  234,  235,  237,  240,  243,  248,  256,  258,
-
-      264,  265,  266,  267,  272,  273,  274,  275,  280,  293,
-      295,  301,  302,  303,  304,  309,  315,  129,  125,  121,
-      106,    0,  322,  323,  325,  328,  330,  333,  336,  341,
-      338,  344,  346,  351,  354,  357,  359,  364,  365,  367,
-      370,  372,  373,  379,  380,  381,  382,  388,  390,  397,
-      399,  404,  113,  103,  112,   87,    0,  407,  409,  410,
-      412,  417,  418,  420,  425,  426,  428,  427,  433,  434,
-      442,  444,  450,  451,  456,   95,   75,  585,   80,    0,
-      457,  459,  465,  467,  468,  474,  475,  482,  484,  485,
-      491,  493,  498,   74,   59,   65,  499,  500,  501,  507,
-
-      508,  509,  510,  585,   58,  585,  515,  516,  585,  517,
-      585,  544,  550,  554,  560,  566,  572,   49,  576,   39,
-      578
+        0,  364,   31,   32,   40,   41,  360,  575,   39,   43,
+       44,  327,  575,  305,  301,  300,  288,  278,  575,   45,
+       46,   51,   52,   53,   54,   67,   59,   80,   61,   85,
+       86,   87,   93,   94,  251,    0,  269,    0,  575,  575,
+      244,  110,   92,   84,    0,  238,    0,  575,  575,  236,
+      575,  112,  113,  115,  121,  120,  122,  128,  135,  136,
+      138,  143,  151,  153,  154,  159,  161,  164,  162,  170,
+      189,  171,  178,  172,  191,  194,  202,  190,    0,  575,
+      575,  575,  190,  174,  196,    0,  199,  204,  207,  219,
+      221,  226,  228,  227,  229,  234,  235,  236,  241,  251,
+
+      254,  256,  257,  259,  262,  264,  265,  271,  272,  283,
+      284,  285,  291,  292,  297,  300,  303,  171,  156,  161,
+      311,  153,    0,  313,  314,  316,  319,  324,  325,  327,
+      330,  332,  339,  340,  342,  345,  347,  348,  354,  355,
+      356,  361,  364,  367,  369,  370,  372,  377,  379,  382,
+      385,  391,  159,  143,  138,  115,    0,  392,  397,  398,
+      400,  403,  408,  409,  411,  416,  414,  417,  423,  425,
+      431,  440,  441,  443,  442,  123,  113,  575,  100,    0,
+      450,  451,  456,  457,  458,  459,  464,  469,  471,  474,
+      477,  482,  485,   93,   78,   63,  488,  490,  493,  495,
+
+      496,  498,  501,  575,   56,  575,  503,  504,  575,  506,
+      575,  532,  538,  542,  548,  554,   66,  560,  564,   51,
+      568
     } ;
 
 static yyconst short int yy_def[222] =
     {   0,
       211,    1,  212,  212,  213,  213,  211,  211,  211,  211,
-      211,  211,  211,  211,  211,  211,  211,  211,  214,  214,
+      214,  211,  211,  211,  211,  211,  211,  211,  211,  214,
       214,  214,  214,  214,  214,  214,  214,  214,  214,  214,
       214,  214,  214,  214,  211,  215,  211,  216,  211,  211,
-      211,  211,  211,  217,  211,  211,  211,  211,  211,  218,
-      214,  214,  214,  214,  214,  214,  214,  214,  214,  214,
+      211,  211,  214,  211,  217,  211,  218,  211,  211,  211,
+      211,  214,  214,  214,  214,  214,  214,  214,  214,  214,
       214,  214,  214,  214,  214,  214,  214,  214,  214,  214,
       214,  214,  214,  214,  214,  214,  214,  211,  215,  211,
-      211,  211,  217,  211,  211,  219,  214,  214,  214,  214,
+      211,  211,  211,  211,  219,  218,  214,  214,  214,  214,
       214,  214,  214,  214,  214,  214,  214,  214,  214,  214,
 
       214,  214,  214,  214,  214,  214,  214,  214,  214,  214,
       214,  214,  214,  214,  214,  214,  214,  211,  211,  211,
-      211,  220,  219,  214,  214,  214,  214,  214,  214,  214,
+      219,  211,  220,  214,  214,  214,  214,  214,  214,  214,
       214,  214,  214,  214,  214,  214,  214,  214,  214,  214,
       214,  214,  214,  214,  214,  214,  214,  214,  214,  214,
       214,  214,  211,  211,  211,  211,  221,  214,  214,  214,
@@ -455,148 +452,146 @@ static yyconst short int yy_def[222] =
       211
     } ;
 
-static yyconst short int yy_nxt[624] =
+static yyconst short int yy_nxt[614] =
     {   0,
-        8,    9,   10,    8,   11,    8,   12,    8,   13,   14,
+        8,    9,   10,   11,    8,   12,    8,   13,    8,   14,
        15,   16,   17,   18,   19,    8,   20,   21,   22,   23,
-       24,   25,   19,   19,   26,   27,   19,   28,   19,   29,
-       30,   31,   32,   19,   33,   34,   19,   19,   37,   37,
-       40,   40,   42,   42,  157,   41,   41,   38,   38,   42,
-       42,   49,   49,   49,   86,   50,   50,   50,   49,   49,
-       49,   49,   50,   50,   50,   50,   49,   49,   53,   49,
-       50,   50,   52,   50,   57,   49,   55,   54,  209,   50,
-       59,   56,   60,   64,   62,  206,   63,   58,  205,   65,
-       49,   61,   66,   49,   50,   49,   49,   50,   67,   50,
-
-       50,  204,   49,   68,   70,   69,   50,   49,   71,  196,
-       72,   50,  195,   76,   73,   42,   42,   49,   84,   74,
-       85,   50,   49,  194,  179,   77,   50,   49,   75,   49,
-       49,   50,  178,   50,   50,  177,   87,  176,  156,   88,
-       89,   90,   49,   49,   49,   49,   50,   50,   50,   50,
-      155,   91,   49,   49,   92,   93,   50,   50,   94,   97,
-      154,  153,   49,   49,   95,   98,   50,   50,   49,   49,
-       96,   99,   50,   50,  120,   49,   49,   49,  100,   50,
-       50,   50,   49,   49,   49,  101,   50,   50,   50,   49,
-       49,  119,  103,   50,   50,  102,  105,  112,  113,  118,
-
-       49,   49,  104,  107,   50,   50,  121,  106,   49,   49,
-      122,   49,   50,   50,  114,   50,  116,   47,   43,   82,
-      117,  108,  124,   49,   80,  115,   78,   50,  125,   49,
-      109,   48,   49,   50,   49,  110,   50,  111,   50,   49,
-       49,  126,   49,   50,   50,   49,   50,   47,   49,   50,
-       46,  131,   50,   49,  127,   45,   44,   50,  128,  130,
-      133,   49,  129,   49,   43,   50,  132,   50,  134,   49,
-       49,   49,   49,   50,   50,   50,   50,   49,   49,   49,
-       49,   50,   50,   50,   50,   49,  211,   35,  135,   50,
-      136,  139,  211,  137,  141,  138,  144,  140,   49,  211,
-
-       49,  211,   50,  143,   50,  142,   49,   49,   49,   49,
-       50,   50,   50,   50,   49,  146,  211,  211,   50,  211,
-       49,  147,  150,  149,   50,  211,  145,  121,   49,  148,
-       49,  122,   50,   49,   50,   49,  151,   50,   49,   50,
-      152,   49,   50,   49,  160,   50,   49,   50,  211,   49,
-       50,   49,  159,   50,  158,   50,   49,  163,  162,   49,
-       50,  211,   49,   50,   49,  161,   50,  211,   50,   49,
-       49,  164,   49,   50,   50,   49,   50,   49,   49,   50,
-      165,   50,   50,  166,   49,   49,   49,   49,   50,   50,
-       50,   50,  168,   49,  211,   49,  211,   50,  167,   50,
-
-      173,  211,   49,  169,   49,  170,   50,  211,   50,   49,
-      171,  172,   49,   50,   49,   49,   50,   49,   50,   50,
-      174,   50,   49,   49,  175,   49,   50,   50,  182,   50,
-       49,   49,   49,   49,   50,   50,   50,   50,   49,   49,
-      181,  211,   50,   50,  211,  184,  186,   49,  183,   49,
-      211,   50,  188,   50,  189,   49,   49,  185,  187,   50,
-       50,   49,   49,  211,   49,   50,   50,  193,   50,  190,
-       49,  211,   49,   49,   50,  191,   50,   50,  211,   49,
-       49,  211,  192,   50,   50,  198,  197,   49,  211,   49,
-       49,   50,  200,   50,   50,  211,   49,  211,   49,  199,
-
-       50,  201,   50,   49,   49,   49,   49,   50,   50,   50,
-       50,  202,   49,   49,   49,   49,   50,   50,   50,   50,
-       49,   49,   49,  211,   50,   50,   50,  211,  203,  211,
-      211,  207,  211,  211,  211,  208,  211,  211,  211,  211,
-      211,  211,  211,  210,   36,   36,   36,   36,   36,   36,
-       39,   39,   39,   39,   39,   39,   51,  211,   51,   51,
-       79,   79,   79,  211,   79,   79,   81,  211,   81,   81,
-       81,   81,   83,  211,   83,   83,   83,   83,  123,  211,
-      123,  123,  180,  180,    7,  211,  211,  211,  211,  211,
+       24,   25,   11,   11,   26,   27,   11,   28,   11,   29,
+       30,   31,   32,   11,   33,   34,   11,   11,   37,   37,
+       42,   42,   40,   40,   42,   42,   38,   38,   41,   41,
+       44,   44,   44,  157,   45,   45,   45,   44,   44,   44,
+       44,   45,   45,   45,   45,   44,   53,   44,   85,   45,
+       52,   45,   57,   44,   55,   54,  209,   45,   59,   56,
+       60,   69,   62,  206,   63,   58,   44,   66,   64,   61,
+       45,   44,   44,   44,   65,   45,   45,   45,   44,   44,
+
+       44,   70,   45,   45,   45,   71,   72,  205,   67,   76,
+       73,   42,   42,   68,   83,   74,   84,   77,   44,   44,
+      204,   44,   45,   45,   75,   45,   44,   44,   44,  196,
+       45,   45,   45,   89,   44,   88,   87,   90,   45,   92,
+       93,   44,   44,   94,   44,   45,   45,   91,   45,   44,
+      195,  194,  179,   45,   95,   97,   98,   44,  178,   44,
+       44,   45,   99,   45,   45,   44,   96,   44,   44,   45,
+       44,   45,   45,  100,   45,  177,   44,   44,   44,  101,
+       45,   45,   45,  176,   44,  156,  102,  103,   45,  105,
+      155,  154,  106,  104,  107,   44,  112,   44,  113,   45,
+
+       44,   45,  122,  153,   45,   44,  123,  108,   44,   45,
+       44,  120,   45,   44,   45,  124,  109,   45,  119,  118,
+      114,  110,  116,  111,  115,   44,  117,   44,  125,   45,
+      126,   45,   44,   44,   44,   44,   45,   45,   45,   45,
+       44,   44,   44,  131,   45,   45,   45,   44,   50,  127,
+       46,   45,  128,  130,  133,   82,  134,   44,  132,  129,
+       44,   45,   44,   44,   45,   44,   45,   45,   44,   45,
+       44,   44,   45,  135,   45,   45,   80,   44,   44,   78,
+      136,   45,   45,  139,  137,  141,  138,  140,  144,   44,
+       44,   44,   51,   45,   45,   45,  142,   44,   44,  143,
+
+       50,   45,   45,   44,  146,  147,   44,   45,   49,   44,
+       45,   48,  149,   45,   47,  150,  145,  122,  148,   44,
+       44,  123,   44,   45,   45,   44,   45,  151,  152,   45,
+       44,   44,  160,   44,   45,   45,   44,   45,   44,   46,
+       45,  159,   45,  163,  158,   44,   44,  162,   44,   45,
+       45,   44,   45,   44,   44,   45,  161,   45,   45,  211,
+       44,   44,   44,  164,   45,   45,   45,   44,   35,  165,
+       44,   45,  166,   44,   45,   44,   44,   45,   44,   45,
+       45,  168,   45,   44,  167,   44,  211,   45,   44,   45,
+      173,   44,   45,  170,  169,   45,  211,   44,   44,  171,
+
+      172,   45,   45,   44,   44,  174,   44,   45,   45,   44,
+       45,  175,  211,   45,   44,   44,  182,   44,   45,   45,
+       44,   45,   44,   44,   45,  211,   45,   45,  181,   44,
+      211,   44,  211,   45,  184,   45,  186,   44,  183,  211,
+      211,   45,  188,  185,  187,  189,   44,   44,   44,   44,
+       45,   45,   45,   45,  211,  211,   44,   44,  190,  193,
+       45,   45,   44,   44,   44,   44,   45,   45,   45,   45,
+       44,  191,  211,  192,   45,   44,  198,   44,  197,   45,
+       44,   45,  200,   44,   45,  211,  211,   45,   44,  199,
+      201,   44,   45,  211,   44,   45,   44,  202,   45,   44,
+
+       45,   44,   44,   45,   44,   45,   45,   44,   45,   44,
+       44,   45,   44,   45,   45,  203,   45,  211,  211,  211,
+      207,  211,  211,  208,  211,  211,  211,  211,  211,  211,
+      211,  210,   36,   36,   36,   36,   36,   36,   39,   39,
+       39,   39,   39,   39,   43,   43,  211,   43,   79,   79,
+       79,   79,  211,   79,   81,  211,   81,   81,   81,   81,
+       86,  211,   86,   86,   86,   86,  121,  121,  211,  121,
+      180,  211,  211,  180,    7,  211,  211,  211,  211,  211,
       211,  211,  211,  211,  211,  211,  211,  211,  211,  211,
-
       211,  211,  211,  211,  211,  211,  211,  211,  211,  211,
+
       211,  211,  211,  211,  211,  211,  211,  211,  211,  211,
       211,  211,  211
     } ;
 
-static yyconst short int yy_chk[624] =
+static yyconst short int yy_chk[614] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    3,    4,
-        5,    6,    9,    9,  220,    5,    6,    3,    4,   10,
-       10,   19,   20,   21,  218,   19,   20,   21,   22,   23,
-       24,   25,   22,   23,   24,   25,   51,   26,   21,   27,
-       51,   26,   20,   27,   23,   28,   22,   21,  205,   28,
-       24,   22,   24,   26,   25,  196,   25,   23,  195,   26,
-       29,   24,   27,   30,   29,   31,   32,   30,   28,   31,
-
-       32,  194,   33,   28,   30,   29,   33,   34,   30,  179,
-       31,   34,  177,   33,   32,   42,   42,   52,   49,   32,
-       49,   52,   53,  176,  156,   34,   53,   54,   32,   56,
-       55,   54,  155,   56,   55,  154,   52,  153,  121,   53,
-       54,   55,   57,   58,   59,   60,   57,   58,   59,   60,
-      120,   56,   61,   62,   57,   57,   61,   62,   57,   60,
-      119,  118,   63,   64,   58,   61,   63,   64,   65,   66,
-       59,   61,   65,   66,   85,   67,   68,   72,   62,   67,
-       68,   72,   69,   73,   70,   63,   69,   73,   70,   74,
-       75,   84,   66,   74,   75,   65,   68,   72,   73,   78,
-
-       76,   77,   67,   70,   76,   77,   86,   69,   71,   88,
-       86,   87,   71,   88,   75,   87,   77,   47,   43,   41,
-       77,   71,   87,   89,   37,   76,   35,   89,   88,   90,
-       71,   17,   91,   90,   92,   71,   91,   71,   92,   93,
-       94,   89,   95,   93,   94,   96,   95,   16,   97,   96,
-       15,   94,   97,   98,   90,   14,   13,   98,   91,   93,
-       96,   99,   92,  100,   11,   99,   95,  100,   98,  101,
-      102,  103,  104,  101,  102,  103,  104,  105,  106,  107,
-      108,  105,  106,  107,  108,  109,    7,    2,   99,  109,
-      101,  104,    0,  102,  106,  103,  109,  105,  110,    0,
-
-      111,    0,  110,  108,  111,  107,  112,  113,  114,  115,
-      112,  113,  114,  115,  116,  111,    0,    0,  116,    0,
-      117,  112,  115,  114,  117,    0,  110,  123,  124,  113,
-      125,  123,  124,  126,  125,  127,  116,  126,  128,  127,
-      117,  129,  128,  131,  126,  129,  130,  131,    0,  132,
-      130,  133,  125,  132,  124,  133,  134,  130,  129,  135,
-      134,    0,  136,  135,  137,  128,  136,    0,  137,  138,
-      139,  131,  140,  138,  139,  141,  140,  142,  143,  141,
-      134,  142,  143,  139,  144,  145,  146,  147,  144,  145,
-      146,  147,  142,  148,    0,  149,    0,  148,  141,  149,
-
-      147,    0,  150,  143,  151,  144,  150,    0,  151,  152,
-      145,  146,  158,  152,  159,  160,  158,  161,  159,  160,
-      150,  161,  162,  163,  152,  164,  162,  163,  161,  164,
-      165,  166,  168,  167,  165,  166,  168,  167,  169,  170,
-      160,    0,  169,  170,    0,  164,  166,  171,  163,  172,
-        0,  171,  169,  172,  170,  173,  174,  165,  167,  173,
-      174,  175,  181,    0,  182,  175,  181,  174,  182,  171,
-      183,    0,  184,  185,  183,  172,  184,  185,    0,  186,
-      187,    0,  173,  186,  187,  183,  182,  188,    0,  189,
-      190,  188,  185,  189,  190,    0,  191,    0,  192,  184,
-
-      191,  187,  192,  193,  197,  198,  199,  193,  197,  198,
-      199,  191,  200,  201,  202,  203,  200,  201,  202,  203,
-      207,  208,  210,    0,  207,  208,  210,    0,  193,    0,
-        0,  197,    0,    0,    0,  200,    0,    0,    0,    0,
-        0,    0,    0,  208,  212,  212,  212,  212,  212,  212,
-      213,  213,  213,  213,  213,  213,  214,    0,  214,  214,
-      215,  215,  215,    0,  215,  215,  216,    0,  216,  216,
-      216,  216,  217,    0,  217,  217,  217,  217,  219,    0,
-      219,  219,  221,  221,  211,  211,  211,  211,  211,  211,
+        9,    9,    5,    6,   10,   10,    3,    4,    5,    6,
+       11,   20,   21,  220,   11,   20,   21,   22,   23,   24,
+       25,   22,   23,   24,   25,   27,   21,   29,  217,   27,
+       20,   29,   23,   26,   22,   21,  205,   26,   24,   22,
+       24,   29,   25,  196,   25,   23,   28,   27,   26,   24,
+       28,   30,   31,   32,   26,   30,   31,   32,   43,   33,
+
+       34,   30,   43,   33,   34,   30,   31,  195,   28,   33,
+       32,   42,   42,   28,   44,   32,   44,   34,   52,   53,
+      194,   54,   52,   53,   32,   54,   56,   55,   57,  179,
+       56,   55,   57,   54,   58,   53,   52,   55,   58,   57,
+       57,   59,   60,   57,   61,   59,   60,   56,   61,   62,
+      177,  176,  156,   62,   58,   60,   61,   63,  155,   64,
+       65,   63,   61,   64,   65,   66,   59,   67,   69,   66,
+       68,   67,   69,   62,   68,  154,   70,   72,   74,   63,
+       70,   72,   74,  153,   73,  122,   65,   66,   73,   68,
+      120,  119,   69,   67,   70,   71,   72,   75,   73,   71,
+
+       76,   75,   85,  118,   76,   87,   85,   71,   77,   87,
+       88,   84,   77,   89,   88,   87,   71,   89,   83,   78,
+       75,   71,   77,   71,   76,   90,   77,   91,   88,   90,
+       89,   91,   92,   94,   93,   95,   92,   94,   93,   95,
+       96,   97,   98,   94,   96,   97,   98,   99,   50,   90,
+       46,   99,   91,   93,   96,   41,   98,  100,   95,   92,
+      101,  100,  102,  103,  101,  104,  102,  103,  105,  104,
+      106,  107,  105,   99,  106,  107,   37,  108,  109,   35,
+      101,  108,  109,  104,  102,  106,  103,  105,  109,  110,
+      111,  112,   18,  110,  111,  112,  107,  113,  114,  108,
+
+       17,  113,  114,  115,  111,  112,  116,  115,   16,  117,
+      116,   15,  114,  117,   14,  115,  110,  121,  113,  124,
+      125,  121,  126,  124,  125,  127,  126,  116,  117,  127,
+      128,  129,  126,  130,  128,  129,  131,  130,  132,   12,
+      131,  125,  132,  130,  124,  133,  134,  129,  135,  133,
+      134,  136,  135,  137,  138,  136,  128,  137,  138,    7,
+      139,  140,  141,  131,  139,  140,  141,  142,    2,  134,
+      143,  142,  139,  144,  143,  145,  146,  144,  147,  145,
+      146,  142,  147,  148,  141,  149,    0,  148,  150,  149,
+      147,  151,  150,  144,  143,  151,    0,  152,  158,  145,
+
+      146,  152,  158,  159,  160,  150,  161,  159,  160,  162,
+      161,  152,    0,  162,  163,  164,  161,  165,  163,  164,
+      167,  165,  166,  168,  167,    0,  166,  168,  160,  169,
+        0,  170,    0,  169,  164,  170,  166,  171,  163,    0,
+        0,  171,  169,  165,  167,  170,  172,  173,  175,  174,
+      172,  173,  175,  174,    0,    0,  181,  182,  171,  174,
+      181,  182,  183,  184,  185,  186,  183,  184,  185,  186,
+      187,  172,    0,  173,  187,  188,  183,  189,  182,  188,
+      190,  189,  185,  191,  190,    0,    0,  191,  192,  184,
+      187,  193,  192,    0,  197,  193,  198,  191,  197,  199,
+
+      198,  200,  201,  199,  202,  200,  201,  203,  202,  207,
+      208,  203,  210,  207,  208,  193,  210,    0,    0,    0,
+      197,    0,    0,  200,    0,    0,    0,    0,    0,    0,
+        0,  208,  212,  212,  212,  212,  212,  212,  213,  213,
+      213,  213,  213,  213,  214,  214,    0,  214,  215,  215,
+      215,  215,    0,  215,  216,    0,  216,  216,  216,  216,
+      218,    0,  218,  218,  218,  218,  219,  219,    0,  219,
+      221,    0,    0,  221,  211,  211,  211,  211,  211,  211,
       211,  211,  211,  211,  211,  211,  211,  211,  211,  211,
-
       211,  211,  211,  211,  211,  211,  211,  211,  211,  211,
+
       211,  211,  211,  211,  211,  211,  211,  211,  211,  211,
       211,  211,  211
     } ;
@@ -611,16 +606,10 @@ yy_cp = yy_full_match; /* restore poss. backed-over text */ \
 ++yy_lp; \
 goto find_rule; \
 }
-static int yy_more_offset = 0;
-static int yy_prev_more_offset = 0;
-#define yymore() (yy_more_offset = yy_flex_strlen( yytext ))
-#define YY_NEED_STRLEN
-#define YY_MORE_ADJ 0
-#define YY_RESTORE_YY_MORE_OFFSET \
-   { \
-   yy_more_offset = yy_prev_more_offset; \
-   yyleng -= yy_more_offset; \
-   }
+static int yy_more_flag = 0;
+static int yy_more_len = 0;
+#define yymore() (yy_more_flag = 1)
+#define YY_MORE_ADJ yy_more_len
 #ifndef YYLMAX
 #define YYLMAX 8192
 #endif
@@ -635,7 +624,7 @@ char *yytext_ptr;
  *           procedural language
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/scan.c,v 1.2 1998/12/18 19:45:38 momjian Exp $
+ *    $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/scan.c,v 1.3 1999/01/28 11:50:42 wieck Exp $
  *
  *    This software is copyrighted by Jan Wieck - Hamburg.
  *
@@ -699,10 +688,6 @@ static void yyunput YY_PROTO(( int c, char *buf_ptr ));
 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
 #endif
 
-#ifdef YY_NEED_STRLEN
-static int yy_flex_strlen YY_PROTO(( yyconst char * ));
-#endif
-
 #ifndef YY_NO_INPUT
 #ifdef __cplusplus
 static int yyinput YY_PROTO(( void ));
@@ -888,6 +873,12 @@ YY_DECL
 
    while ( 1 )     /* loops until end-of-file is reached */
        {
+       yy_more_len = 0;
+       if ( yy_more_flag )
+           {
+           yy_more_len = yyleng;
+           yy_more_flag = 0;
+           }
        yy_cp = yy_c_buf_p;
 
        /* Support of yytext. */
@@ -916,7 +907,7 @@ yy_match:
            *yy_state_ptr++ = yy_current_state;
            ++yy_cp;
            }
-       while ( yy_base[yy_current_state] != 585 );
+       while ( yy_base[yy_current_state] != 575 );
 
 yy_find_action:
        yy_current_state = *--yy_state_ptr;
@@ -1300,7 +1291,6 @@ ECHO;
 
        /* Undo the effects of YY_DO_BEFORE_ACTION. */
        *yy_cp = yy_hold_char;
-       YY_RESTORE_YY_MORE_OFFSET
 
        if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
            {
@@ -1446,7 +1436,7 @@ static int yy_get_next_buffer()
        { /* Don't try to fill the buffer, so this is an EOF. */
        if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
            {
-           /* We matched a single character, the EOB, so
+           /* We matched a singled characater, the EOB, so
             * treat this as a final EOF.
             */
            return EOB_ACT_END_OF_FILE;
@@ -1473,7 +1463,7 @@ static int yy_get_next_buffer()
        /* don't do the read, it's not guaranteed to return an EOF,
         * just force an EOF
         */
-       yy_current_buffer->yy_n_chars = yy_n_chars = 0;
+       yy_n_chars = 0;
 
    else
        {
@@ -1528,8 +1518,6 @@ static int yy_get_next_buffer()
        /* Read in more data. */
        YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
            yy_n_chars, num_to_read );
-
-       yy_current_buffer->yy_n_chars = yy_n_chars;
        }
 
    if ( yy_n_chars == 0 )
@@ -1613,9 +1601,8 @@ yy_state_type yy_current_state;
            yy_c = yy_meta[(unsigned int) yy_c];
        }
    yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
+   *yy_state_ptr++ = yy_current_state;
    yy_is_jam = (yy_current_state == 211);
-   if ( ! yy_is_jam )
-       *yy_state_ptr++ = yy_current_state;
 
    return yy_is_jam ? 0 : yy_current_state;
    }
@@ -1649,8 +1636,7 @@ register char *yy_bp;
 
        yy_cp += (int) (dest - source);
        yy_bp += (int) (dest - source);
-       yy_current_buffer->yy_n_chars =
-           yy_n_chars = yy_current_buffer->yy_buf_size;
+       yy_n_chars = yy_current_buffer->yy_buf_size;
 
        if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
            YY_FATAL_ERROR( "flex scanner push-back overflow" );
@@ -1690,31 +1676,19 @@ static int input()
 
        else
            { /* need more input */
-           int offset = yy_c_buf_p - yytext_ptr;
+           yytext_ptr = yy_c_buf_p;
            ++yy_c_buf_p;
 
            switch ( yy_get_next_buffer() )
                {
-               case EOB_ACT_LAST_MATCH:
-                   /* This happens because yy_g_n_b()
-                    * sees that we've accumulated a
-                    * token and flags that we need to
-                    * try matching the token before
-                    * proceeding.  But for input(),
-                    * there's no matching to consider.
-                    * So convert the EOB_ACT_LAST_MATCH
-                    * to EOB_ACT_END_OF_FILE.
-                    */
-
-                   /* Reset buffer status. */
-                   yyrestart( yyin );
-
-                   /* fall through */
-
                case EOB_ACT_END_OF_FILE:
                    {
                    if ( yywrap() )
+                       {
+                       yy_c_buf_p =
+                       yytext_ptr + YY_MORE_ADJ;
                        return EOF;
+                       }
 
                    if ( ! yy_did_buffer_switch_on_eof )
                        YY_NEW_FILE;
@@ -1726,8 +1700,17 @@ static int input()
                    }
 
                case EOB_ACT_CONTINUE_SCAN:
-                   yy_c_buf_p = yytext_ptr + offset;
+                   yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
                    break;
+
+               case EOB_ACT_LAST_MATCH:
+#ifdef __cplusplus
+                   YY_FATAL_ERROR(
+                   "unexpected last match in yyinput()" );
+#else
+                   YY_FATAL_ERROR(
+                   "unexpected last match in input()" );
+#endif
                }
            }
        }
@@ -1894,9 +1877,6 @@ YY_BUFFER_STATE b;
 #endif
 
    {
-   if ( ! b )
-       return;
-
    b->yy_n_chars = 0;
 
    /* We always need two end-of-buffer characters.  The first causes
@@ -1956,17 +1936,17 @@ yy_size_t size;
 
 #ifndef YY_NO_SCAN_STRING
 #ifdef YY_USE_PROTOS
-YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
+YY_BUFFER_STATE yy_scan_string( yyconst char *str )
 #else
-YY_BUFFER_STATE yy_scan_string( yy_str )
-yyconst char *yy_str;
+YY_BUFFER_STATE yy_scan_string( str )
+yyconst char *str;
 #endif
    {
    int len;
-   for ( len = 0; yy_str[len]; ++len )
+   for ( len = 0; str[len]; ++len )
        ;
 
-   return yy_scan_bytes( yy_str, len );
+   return yy_scan_bytes( str, len );
    }
 #endif
 
@@ -2087,7 +2067,7 @@ char msg[];
        { \
        /* Undo effects of setting up yytext. */ \
        yytext[yyleng] = yy_hold_char; \
-       yy_c_buf_p = yytext + n; \
+       yy_c_buf_p = yytext + n - YY_MORE_ADJ; \
        yy_hold_char = *yy_c_buf_p; \
        *yy_c_buf_p = '\0'; \
        yyleng = n; \
@@ -2113,22 +2093,6 @@ int n;
    }
 #endif
 
-#ifdef YY_NEED_STRLEN
-#ifdef YY_USE_PROTOS
-static int yy_flex_strlen( yyconst char *s )
-#else
-static int yy_flex_strlen( s )
-yyconst char *s;
-#endif
-   {
-   register int n;
-   for ( n = 0; s[n]; ++n )
-       ;
-
-   return n;
-   }
-#endif
-
 
 #ifdef YY_USE_PROTOS
 static void *yy_flex_alloc( yy_size_t size )