Commit 89b762e5 authored by Bruce Momjian's avatar Bruce Momjian

Fix snprintf with strings, and nextval('"Aa"');

parent 434762b5
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/recipe.c,v 1.1 1999/02/24 17:29:00 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/recipe.c,v 1.2 1999/03/16 04:25:46 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -878,8 +878,8 @@ tg_parseSubQuery(TgRecipe * r, TgNode * n, TeeInfo * teeInfo) ...@@ -878,8 +878,8 @@ tg_parseSubQuery(TgRecipe * r, TgNode * n, TeeInfo * teeInfo)
snprintf(newquery, 1000, "select %s($1", funcName); snprintf(newquery, 1000, "select %s($1", funcName);
for (i = 1; i < parameterCount; i++) for (i = 1; i < parameterCount; i++)
snprintf(newquery, 1000, "%s,$%d", newquery, i); snprintf(newquery, 1000, "%s,$%d", pstrdup(newquery), i);
snprintf(newquery, 1000, "%s)", newquery); snprintf(newquery, 1000, "%s)", pstrdup(newquery));
} }
else else
snprintf(newquery, 1000, "select %s()", funcName); snprintf(newquery, 1000, "select %s()", funcName);
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.32 1999/03/16 03:24:16 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.33 1999/03/16 04:25:45 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -85,7 +85,8 @@ createdb(char *dbname, char *dbpath, int encoding, CommandDest dest) ...@@ -85,7 +85,8 @@ createdb(char *dbname, char *dbpath, int encoding, CommandDest dest)
snprintf(buf, 512, snprintf(buf, 512,
"insert into pg_database (datname, datdba, encoding, datpath)" "insert into pg_database (datname, datdba, encoding, datpath)"
" values ('%s', '%d', '%d', '%s');", dbname, user_id, encoding, loc); " values ('%s', '%d', '%d', '%s');", dbname, user_id, encoding,
loc);
pg_exec_query_dest(buf, dest, false); pg_exec_query_dest(buf, dest, false);
} }
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* *
* Copyright (c) 1994, Regents of the University of California * Copyright (c) 1994, Regents of the University of California
* *
* $Id: user.c,v 1.25 1999/03/16 03:24:16 momjian Exp $ * $Id: user.c,v 1.26 1999/03/16 04:25:45 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -256,31 +256,33 @@ AlterUser(AlterUserStmt *stmt, CommandDest dest) ...@@ -256,31 +256,33 @@ AlterUser(AlterUserStmt *stmt, CommandDest dest)
if (stmt->password) if (stmt->password)
{ {
snprintf(sql, SQL_LENGTH, "%s passwd = '%s'", sql, stmt->password); snprintf(sql, SQL_LENGTH, "%s passwd = '%s'", pstrdup(sql), stmt->password);
} }
if (stmt->createdb) if (stmt->createdb)
{ {
snprintf(sql, SQL_LENGTH, "%s %susecreatedb='%s'", snprintf(sql, SQL_LENGTH, "%s %susecreatedb='%s'",
sql, stmt->password ? "," : "", *stmt->createdb ? "t" : "f"); pstrdup(sql), stmt->password ? "," : "",
*stmt->createdb ? "t" : "f");
} }
if (stmt->createuser) if (stmt->createuser)
{ {
snprintf(sql, SQL_LENGTH, "%s %susesuper='%s'", snprintf(sql, SQL_LENGTH, "%s %susesuper='%s'",
sql, (stmt->password || stmt->createdb) ? "," : "", pstrdup(sql), (stmt->password || stmt->createdb) ? "," : "",
*stmt->createuser ? "t" : "f"); *stmt->createuser ? "t" : "f");
} }
if (stmt->validUntil) if (stmt->validUntil)
{ {
snprintf(sql, SQL_LENGTH, "%s %svaluntil='%s'", snprintf(sql, SQL_LENGTH, "%s %svaluntil='%s'",
sql, pstrdup(sql),
(stmt->password || stmt->createdb || stmt->createuser) ? "," : "", (stmt->password || stmt->createdb || stmt->createuser) ? "," : "",
stmt->validUntil); stmt->validUntil);
} }
snprintf(sql, SQL_LENGTH, "%s where usename = '%s'", sql, stmt->user); snprintf(sql, SQL_LENGTH, "%s where usename = '%s'",
pstrdup(sql), stmt->user);
pg_exec_query_dest(sql, dest, false); pg_exec_query_dest(sql, dest, false);
......
...@@ -242,7 +242,7 @@ ...@@ -242,7 +242,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.78 1999/03/14 16:32:40 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.79 1999/03/16 04:25:47 momjian Exp $
* *
* HISTORY * HISTORY
* AUTHOR DATE MAJOR EVENT * AUTHOR DATE MAJOR EVENT
...@@ -898,40 +898,40 @@ static const short yyrline[] = { 0, ...@@ -898,40 +898,40 @@ static const short yyrline[] = { 0,
3548, 3549, 3550, 3551, 3552, 3553, 3554, 3555, 3565, 3567, 3548, 3549, 3550, 3551, 3552, 3553, 3554, 3555, 3565, 3567,
3584, 3594, 3604, 3617, 3630, 3636, 3642, 3646, 3652, 3653, 3584, 3594, 3604, 3617, 3630, 3636, 3642, 3646, 3652, 3653,
3654, 3655, 3656, 3657, 3658, 3659, 3662, 3663, 3674, 3679, 3654, 3655, 3656, 3657, 3658, 3659, 3662, 3663, 3674, 3679,
3681, 3683, 3691, 3693, 3695, 3697, 3699, 3701, 3703, 3705, 3681, 3683, 3691, 3693, 3695, 3697, 3699, 3701, 3703, 3706,
3707, 3709, 3711, 3713, 3715, 3731, 3747, 3749, 3751, 3753, 3708, 3710, 3712, 3714, 3716, 3732, 3748, 3750, 3752, 3754,
3755, 3757, 3759, 3771, 3778, 3785, 3800, 3815, 3837, 3852, 3756, 3758, 3760, 3772, 3779, 3786, 3801, 3816, 3838, 3853,
3874, 3881, 3888, 3898, 3905, 3912, 3920, 3927, 3934, 3941, 3875, 3882, 3889, 3899, 3906, 3913, 3921, 3928, 3935, 3942,
3948, 3950, 3952, 3954, 3961, 3971, 3981, 3991, 4001, 4007, 3949, 3951, 3953, 3955, 3962, 3972, 3982, 3992, 4002, 4008,
4013, 4013, 4027, 4027, 4041, 4051, 4061, 4071, 4081, 4091, 4014, 4014, 4028, 4028, 4042, 4052, 4062, 4072, 4082, 4092,
4101, 4111, 4121, 4131, 4141, 4151, 4161, 4171, 4181, 4191, 4102, 4112, 4122, 4132, 4142, 4152, 4162, 4172, 4182, 4192,
4201, 4211, 4221, 4231, 4241, 4251, 4261, 4271, 4281, 4283, 4202, 4212, 4222, 4232, 4242, 4252, 4262, 4272, 4282, 4284,
4285, 4287, 4296, 4301, 4303, 4311, 4313, 4315, 4317, 4319, 4286, 4288, 4297, 4302, 4304, 4312, 4314, 4316, 4318, 4320,
4321, 4323, 4325, 4327, 4343, 4359, 4361, 4363, 4365, 4367, 4322, 4324, 4326, 4328, 4344, 4360, 4362, 4364, 4366, 4368,
4374, 4381, 4396, 4411, 4433, 4448, 4470, 4477, 4484, 4491, 4375, 4382, 4397, 4412, 4434, 4449, 4471, 4478, 4485, 4492,
4499, 4506, 4513, 4520, 4529, 4536, 4543, 4547, 4549, 4551, 4500, 4507, 4514, 4521, 4530, 4537, 4544, 4548, 4550, 4552,
4555, 4562, 4566, 4567, 4568, 4571, 4573, 4577, 4582, 4584, 4556, 4563, 4567, 4568, 4569, 4572, 4574, 4578, 4583, 4585,
4586, 4588, 4590, 4592, 4594, 4596, 4612, 4628, 4630, 4632, 4587, 4589, 4591, 4593, 4595, 4597, 4613, 4629, 4631, 4633,
4634, 4636, 4644, 4651, 4658, 4665, 4673, 4680, 4687, 4694, 4635, 4637, 4645, 4652, 4659, 4666, 4674, 4681, 4688, 4695,
4703, 4707, 4711, 4713, 4722, 4724, 4728, 4730, 4732, 4736, 4704, 4708, 4712, 4714, 4723, 4725, 4729, 4731, 4733, 4737,
4742, 4746, 4748, 4754, 4760, 4764, 4766, 4787, 4795, 4809, 4743, 4747, 4749, 4755, 4761, 4765, 4767, 4788, 4796, 4810,
4825, 4827, 4831, 4840, 4841, 4844, 4849, 4857, 4861, 4869, 4826, 4828, 4832, 4841, 4842, 4845, 4850, 4858, 4862, 4870,
4879, 4881, 4883, 4894, 4896, 4898, 4913, 4920, 4927, 4946, 4880, 4882, 4884, 4895, 4897, 4899, 4914, 4921, 4928, 4947,
4948, 4953, 4960, 4967, 4979, 4993, 4994, 4997, 5002, 5014, 4949, 4954, 4961, 4968, 4980, 4994, 4995, 4998, 5003, 5015,
5015, 5016, 5017, 5018, 5024, 5025, 5027, 5033, 5040, 5047, 5016, 5017, 5018, 5019, 5025, 5026, 5028, 5034, 5041, 5048,
5054, 5062, 5064, 5074, 5086, 5094, 5095, 5096, 5103, 5105, 5055, 5063, 5065, 5075, 5087, 5095, 5096, 5097, 5104, 5106,
5107, 5118, 5119, 5120, 5121, 5122, 5123, 5124, 5125, 5126, 5108, 5119, 5120, 5121, 5122, 5123, 5124, 5125, 5126, 5127,
5127, 5128, 5129, 5130, 5131, 5132, 5133, 5134, 5135, 5136, 5128, 5129, 5130, 5131, 5132, 5133, 5134, 5135, 5136, 5137,
5137, 5138, 5139, 5140, 5141, 5142, 5143, 5144, 5145, 5146, 5138, 5139, 5140, 5141, 5142, 5143, 5144, 5145, 5146, 5147,
5147, 5148, 5149, 5150, 5151, 5152, 5153, 5154, 5155, 5156, 5148, 5149, 5150, 5151, 5152, 5153, 5154, 5155, 5156, 5157,
5157, 5158, 5159, 5160, 5161, 5162, 5163, 5164, 5165, 5166, 5158, 5159, 5160, 5161, 5162, 5163, 5164, 5165, 5166, 5167,
5167, 5168, 5169, 5170, 5171, 5172, 5173, 5174, 5175, 5176, 5168, 5169, 5170, 5171, 5172, 5173, 5174, 5175, 5176, 5177,
5177, 5178, 5179, 5180, 5181, 5182, 5183, 5184, 5185, 5186, 5178, 5179, 5180, 5181, 5182, 5183, 5184, 5185, 5186, 5187,
5187, 5200, 5201, 5202, 5203, 5204, 5205, 5206, 5207, 5208, 5188, 5201, 5202, 5203, 5204, 5205, 5206, 5207, 5208, 5209,
5209, 5210, 5211, 5212, 5213, 5214, 5215, 5216, 5217, 5218, 5210, 5211, 5212, 5213, 5214, 5215, 5216, 5217, 5218, 5219,
5219, 5220, 5221, 5222, 5223, 5224, 5225, 5226, 5227, 5228, 5220, 5221, 5222, 5223, 5224, 5225, 5226, 5227, 5228, 5229,
5229, 5230, 5231, 5232, 5233, 5234, 5235, 5236, 5237, 5240, 5230, 5231, 5232, 5233, 5234, 5235, 5236, 5237, 5238, 5241,
5247 5248
}; };
#endif #endif
...@@ -9059,27 +9059,27 @@ case 659: ...@@ -9059,27 +9059,27 @@ case 659:
{ yyval.node = makeA_Expr(OP, ">", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, ">", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 660: case 660:
#line 3706 "gram.y" #line 3707 "gram.y"
{ yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-2].node, NULL); ; { yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-2].node, NULL); ;
break;} break;}
case 661: case 661:
#line 3708 "gram.y" #line 3709 "gram.y"
{ yyval.node = makeA_Expr(OP, "=", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "=", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 662: case 662:
#line 3710 "gram.y" #line 3711 "gram.y"
{ yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ;
break;} break;}
case 663: case 663:
#line 3712 "gram.y" #line 3713 "gram.y"
{ yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ;
break;} break;}
case 664: case 664:
#line 3714 "gram.y" #line 3715 "gram.y"
{ yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ;
break;} break;}
case 665: case 665:
#line 3716 "gram.y" #line 3717 "gram.y"
{ {
yyval.node = (Node *)yyvsp[-2].node; yyval.node = (Node *)yyvsp[-2].node;
/* AexprConst can be either A_Const or ParamNo */ /* AexprConst can be either A_Const or ParamNo */
...@@ -9097,7 +9097,7 @@ case 665: ...@@ -9097,7 +9097,7 @@ case 665:
; ;
break;} break;}
case 666: case 666:
#line 3732 "gram.y" #line 3733 "gram.y"
{ {
yyval.node = (Node *)yyvsp[-3].node; yyval.node = (Node *)yyvsp[-3].node;
/* AexprConst can be either A_Const or ParamNo */ /* AexprConst can be either A_Const or ParamNo */
...@@ -9115,31 +9115,31 @@ case 666: ...@@ -9115,31 +9115,31 @@ case 666:
; ;
break;} break;}
case 667: case 667:
#line 3748 "gram.y" #line 3749 "gram.y"
{ yyval.node = yyvsp[-1].node; ; { yyval.node = yyvsp[-1].node; ;
break;} break;}
case 668: case 668:
#line 3750 "gram.y" #line 3751 "gram.y"
{ yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ; { yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ;
break;} break;}
case 669: case 669:
#line 3752 "gram.y" #line 3753 "gram.y"
{ yyval.node = makeIndexable("~~", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeIndexable("~~", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 670: case 670:
#line 3754 "gram.y" #line 3755 "gram.y"
{ yyval.node = makeA_Expr(OP, "!~~", yyvsp[-3].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "!~~", yyvsp[-3].node, yyvsp[0].node); ;
break;} break;}
case 671: case 671:
#line 3756 "gram.y" #line 3757 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ;
break;} break;}
case 672: case 672:
#line 3758 "gram.y" #line 3759 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ;
break;} break;}
case 673: case 673:
#line 3760 "gram.y" #line 3761 "gram.y"
{ {
/* cheap hack for aggregate (eg. count) */ /* cheap hack for aggregate (eg. count) */
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
...@@ -9153,7 +9153,7 @@ case 673: ...@@ -9153,7 +9153,7 @@ case 673:
; ;
break;} break;}
case 674: case 674:
#line 3772 "gram.y" #line 3773 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-2].str; n->funcname = yyvsp[-2].str;
...@@ -9162,7 +9162,7 @@ case 674: ...@@ -9162,7 +9162,7 @@ case 674:
; ;
break;} break;}
case 675: case 675:
#line 3779 "gram.y" #line 3780 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-3].str; n->funcname = yyvsp[-3].str;
...@@ -9171,7 +9171,7 @@ case 675: ...@@ -9171,7 +9171,7 @@ case 675:
; ;
break;} break;}
case 676: case 676:
#line 3786 "gram.y" #line 3787 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName); TypeName *t = makeNode(TypeName);
...@@ -9188,7 +9188,7 @@ case 676: ...@@ -9188,7 +9188,7 @@ case 676:
; ;
break;} break;}
case 677: case 677:
#line 3801 "gram.y" #line 3802 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName); TypeName *t = makeNode(TypeName);
...@@ -9205,7 +9205,7 @@ case 677: ...@@ -9205,7 +9205,7 @@ case 677:
; ;
break;} break;}
case 678: case 678:
#line 3816 "gram.y" #line 3817 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const); A_Const *s = makeNode(A_Const);
...@@ -9229,7 +9229,7 @@ case 678: ...@@ -9229,7 +9229,7 @@ case 678:
; ;
break;} break;}
case 679: case 679:
#line 3838 "gram.y" #line 3839 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName); TypeName *t = makeNode(TypeName);
...@@ -9246,7 +9246,7 @@ case 679: ...@@ -9246,7 +9246,7 @@ case 679:
; ;
break;} break;}
case 680: case 680:
#line 3853 "gram.y" #line 3854 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const); A_Const *s = makeNode(A_Const);
...@@ -9270,7 +9270,7 @@ case 680: ...@@ -9270,7 +9270,7 @@ case 680:
; ;
break;} break;}
case 681: case 681:
#line 3875 "gram.y" #line 3876 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "getpgusername"; n->funcname = "getpgusername";
...@@ -9279,7 +9279,7 @@ case 681: ...@@ -9279,7 +9279,7 @@ case 681:
; ;
break;} break;}
case 682: case 682:
#line 3882 "gram.y" #line 3883 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "getpgusername"; n->funcname = "getpgusername";
...@@ -9288,7 +9288,7 @@ case 682: ...@@ -9288,7 +9288,7 @@ case 682:
; ;
break;} break;}
case 683: case 683:
#line 3889 "gram.y" #line 3890 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = NIL; n->lefthand = NIL;
...@@ -9300,7 +9300,7 @@ case 683: ...@@ -9300,7 +9300,7 @@ case 683:
; ;
break;} break;}
case 684: case 684:
#line 3899 "gram.y" #line 3900 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "date_part"; n->funcname = "date_part";
...@@ -9309,7 +9309,7 @@ case 684: ...@@ -9309,7 +9309,7 @@ case 684:
; ;
break;} break;}
case 685: case 685:
#line 3906 "gram.y" #line 3907 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "strpos"; n->funcname = "strpos";
...@@ -9318,7 +9318,7 @@ case 685: ...@@ -9318,7 +9318,7 @@ case 685:
; ;
break;} break;}
case 686: case 686:
#line 3913 "gram.y" #line 3914 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "substr"; n->funcname = "substr";
...@@ -9327,7 +9327,7 @@ case 686: ...@@ -9327,7 +9327,7 @@ case 686:
; ;
break;} break;}
case 687: case 687:
#line 3921 "gram.y" #line 3922 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim"; n->funcname = "btrim";
...@@ -9336,7 +9336,7 @@ case 687: ...@@ -9336,7 +9336,7 @@ case 687:
; ;
break;} break;}
case 688: case 688:
#line 3928 "gram.y" #line 3929 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "ltrim"; n->funcname = "ltrim";
...@@ -9345,7 +9345,7 @@ case 688: ...@@ -9345,7 +9345,7 @@ case 688:
; ;
break;} break;}
case 689: case 689:
#line 3935 "gram.y" #line 3936 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "rtrim"; n->funcname = "rtrim";
...@@ -9354,7 +9354,7 @@ case 689: ...@@ -9354,7 +9354,7 @@ case 689:
; ;
break;} break;}
case 690: case 690:
#line 3942 "gram.y" #line 3943 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim"; n->funcname = "btrim";
...@@ -9363,23 +9363,23 @@ case 690: ...@@ -9363,23 +9363,23 @@ case 690:
; ;
break;} break;}
case 691: case 691:
#line 3949 "gram.y" #line 3950 "gram.y"
{ yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-1].node, NULL); ; { yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-1].node, NULL); ;
break;} break;}
case 692: case 692:
#line 3951 "gram.y" #line 3952 "gram.y"
{ yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-2].node, NULL); ; { yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-2].node, NULL); ;
break;} break;}
case 693: case 693:
#line 3953 "gram.y" #line 3954 "gram.y"
{ yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-1].node, NULL); ; { yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-1].node, NULL); ;
break;} break;}
case 694: case 694:
#line 3955 "gram.y" #line 3956 "gram.y"
{ yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-3].node, NULL); ; { yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-3].node, NULL); ;
break;} break;}
case 695: case 695:
#line 3962 "gram.y" #line 3963 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -9391,7 +9391,7 @@ case 695: ...@@ -9391,7 +9391,7 @@ case 695:
; ;
break;} break;}
case 696: case 696:
#line 3972 "gram.y" #line 3973 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -9403,7 +9403,7 @@ case 696: ...@@ -9403,7 +9403,7 @@ case 696:
; ;
break;} break;}
case 697: case 697:
#line 3982 "gram.y" #line 3983 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -9415,7 +9415,7 @@ case 697: ...@@ -9415,7 +9415,7 @@ case 697:
; ;
break;} break;}
case 698: case 698:
#line 3992 "gram.y" #line 3993 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -9427,7 +9427,7 @@ case 698: ...@@ -9427,7 +9427,7 @@ case 698:
; ;
break;} break;}
case 699: case 699:
#line 4002 "gram.y" #line 4003 "gram.y"
{ {
yyval.node = makeA_Expr(AND, NULL, yyval.node = makeA_Expr(AND, NULL,
makeA_Expr(OP, ">=", yyvsp[-4].node, yyvsp[-2].node), makeA_Expr(OP, ">=", yyvsp[-4].node, yyvsp[-2].node),
...@@ -9435,7 +9435,7 @@ case 699: ...@@ -9435,7 +9435,7 @@ case 699:
; ;
break;} break;}
case 700: case 700:
#line 4008 "gram.y" #line 4009 "gram.y"
{ {
yyval.node = makeA_Expr(OR, NULL, yyval.node = makeA_Expr(OR, NULL,
makeA_Expr(OP, "<", yyvsp[-5].node, yyvsp[-2].node), makeA_Expr(OP, "<", yyvsp[-5].node, yyvsp[-2].node),
...@@ -9443,11 +9443,11 @@ case 700: ...@@ -9443,11 +9443,11 @@ case 700:
; ;
break;} break;}
case 701: case 701:
#line 4013 "gram.y" #line 4014 "gram.y"
{ saved_In_Expr = lcons(yyvsp[-1].node,saved_In_Expr); ; { saved_In_Expr = lcons(yyvsp[-1].node,saved_In_Expr); ;
break;} break;}
case 702: case 702:
#line 4014 "gram.y" #line 4015 "gram.y"
{ {
saved_In_Expr = lnext(saved_In_Expr); saved_In_Expr = lnext(saved_In_Expr);
if (nodeTag(yyvsp[-1].node) == T_SubLink) if (nodeTag(yyvsp[-1].node) == T_SubLink)
...@@ -9463,11 +9463,11 @@ case 702: ...@@ -9463,11 +9463,11 @@ case 702:
; ;
break;} break;}
case 703: case 703:
#line 4027 "gram.y" #line 4028 "gram.y"
{ saved_In_Expr = lcons(yyvsp[-2].node,saved_In_Expr); ; { saved_In_Expr = lcons(yyvsp[-2].node,saved_In_Expr); ;
break;} break;}
case 704: case 704:
#line 4028 "gram.y" #line 4029 "gram.y"
{ {
saved_In_Expr = lnext(saved_In_Expr); saved_In_Expr = lnext(saved_In_Expr);
if (nodeTag(yyvsp[-1].node) == T_SubLink) if (nodeTag(yyvsp[-1].node) == T_SubLink)
...@@ -9483,7 +9483,7 @@ case 704: ...@@ -9483,7 +9483,7 @@ case 704:
; ;
break;} break;}
case 705: case 705:
#line 4042 "gram.y" #line 4043 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9495,7 +9495,7 @@ case 705: ...@@ -9495,7 +9495,7 @@ case 705:
; ;
break;} break;}
case 706: case 706:
#line 4052 "gram.y" #line 4053 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9507,7 +9507,7 @@ case 706: ...@@ -9507,7 +9507,7 @@ case 706:
; ;
break;} break;}
case 707: case 707:
#line 4062 "gram.y" #line 4063 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9519,7 +9519,7 @@ case 707: ...@@ -9519,7 +9519,7 @@ case 707:
; ;
break;} break;}
case 708: case 708:
#line 4072 "gram.y" #line 4073 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9531,7 +9531,7 @@ case 708: ...@@ -9531,7 +9531,7 @@ case 708:
; ;
break;} break;}
case 709: case 709:
#line 4082 "gram.y" #line 4083 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9543,7 +9543,7 @@ case 709: ...@@ -9543,7 +9543,7 @@ case 709:
; ;
break;} break;}
case 710: case 710:
#line 4092 "gram.y" #line 4093 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9555,7 +9555,7 @@ case 710: ...@@ -9555,7 +9555,7 @@ case 710:
; ;
break;} break;}
case 711: case 711:
#line 4102 "gram.y" #line 4103 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9567,7 +9567,7 @@ case 711: ...@@ -9567,7 +9567,7 @@ case 711:
; ;
break;} break;}
case 712: case 712:
#line 4112 "gram.y" #line 4113 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL); n->lefthand = lcons(yyvsp[-4].node, NULL);
...@@ -9579,7 +9579,7 @@ case 712: ...@@ -9579,7 +9579,7 @@ case 712:
; ;
break;} break;}
case 713: case 713:
#line 4122 "gram.y" #line 4123 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9591,7 +9591,7 @@ case 713: ...@@ -9591,7 +9591,7 @@ case 713:
; ;
break;} break;}
case 714: case 714:
#line 4132 "gram.y" #line 4133 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9603,7 +9603,7 @@ case 714: ...@@ -9603,7 +9603,7 @@ case 714:
; ;
break;} break;}
case 715: case 715:
#line 4142 "gram.y" #line 4143 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9615,7 +9615,7 @@ case 715: ...@@ -9615,7 +9615,7 @@ case 715:
; ;
break;} break;}
case 716: case 716:
#line 4152 "gram.y" #line 4153 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9627,7 +9627,7 @@ case 716: ...@@ -9627,7 +9627,7 @@ case 716:
; ;
break;} break;}
case 717: case 717:
#line 4162 "gram.y" #line 4163 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9639,7 +9639,7 @@ case 717: ...@@ -9639,7 +9639,7 @@ case 717:
; ;
break;} break;}
case 718: case 718:
#line 4172 "gram.y" #line 4173 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9651,7 +9651,7 @@ case 718: ...@@ -9651,7 +9651,7 @@ case 718:
; ;
break;} break;}
case 719: case 719:
#line 4182 "gram.y" #line 4183 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9663,7 +9663,7 @@ case 719: ...@@ -9663,7 +9663,7 @@ case 719:
; ;
break;} break;}
case 720: case 720:
#line 4192 "gram.y" #line 4193 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL); n->lefthand = lcons(yyvsp[-5].node,NIL);
...@@ -9675,7 +9675,7 @@ case 720: ...@@ -9675,7 +9675,7 @@ case 720:
; ;
break;} break;}
case 721: case 721:
#line 4202 "gram.y" #line 4203 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9687,7 +9687,7 @@ case 721: ...@@ -9687,7 +9687,7 @@ case 721:
; ;
break;} break;}
case 722: case 722:
#line 4212 "gram.y" #line 4213 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9699,7 +9699,7 @@ case 722: ...@@ -9699,7 +9699,7 @@ case 722:
; ;
break;} break;}
case 723: case 723:
#line 4222 "gram.y" #line 4223 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9711,7 +9711,7 @@ case 723: ...@@ -9711,7 +9711,7 @@ case 723:
; ;
break;} break;}
case 724: case 724:
#line 4232 "gram.y" #line 4233 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9723,7 +9723,7 @@ case 724: ...@@ -9723,7 +9723,7 @@ case 724:
; ;
break;} break;}
case 725: case 725:
#line 4242 "gram.y" #line 4243 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9735,7 +9735,7 @@ case 725: ...@@ -9735,7 +9735,7 @@ case 725:
; ;
break;} break;}
case 726: case 726:
#line 4252 "gram.y" #line 4253 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9747,7 +9747,7 @@ case 726: ...@@ -9747,7 +9747,7 @@ case 726:
; ;
break;} break;}
case 727: case 727:
#line 4262 "gram.y" #line 4263 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9759,7 +9759,7 @@ case 727: ...@@ -9759,7 +9759,7 @@ case 727:
; ;
break;} break;}
case 728: case 728:
#line 4272 "gram.y" #line 4273 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL); n->lefthand = lcons(yyvsp[-5].node, NULL);
...@@ -9771,34 +9771,34 @@ case 728: ...@@ -9771,34 +9771,34 @@ case 728:
; ;
break;} break;}
case 729: case 729:
#line 4282 "gram.y" #line 4283 "gram.y"
{ yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 730: case 730:
#line 4284 "gram.y" #line 4285 "gram.y"
{ yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 731: case 731:
#line 4286 "gram.y" #line 4287 "gram.y"
{ yyval.node = makeA_Expr(NOT, NULL, NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(NOT, NULL, NULL, yyvsp[0].node); ;
break;} break;}
case 732: case 732:
#line 4288 "gram.y" #line 4289 "gram.y"
{ yyval.node = yyvsp[0].node; ; { yyval.node = yyvsp[0].node; ;
break;} break;}
case 733: case 733:
#line 4297 "gram.y" #line 4298 "gram.y"
{ {
yyvsp[-1].attr->indirection = yyvsp[0].list; yyvsp[-1].attr->indirection = yyvsp[0].list;
yyval.node = (Node *)yyvsp[-1].attr; yyval.node = (Node *)yyvsp[-1].attr;
; ;
break;} break;}
case 734: case 734:
#line 4302 "gram.y" #line 4303 "gram.y"
{ yyval.node = yyvsp[0].node; ; { yyval.node = yyvsp[0].node; ;
break;} break;}
case 735: case 735:
#line 4304 "gram.y" #line 4305 "gram.y"
{ {
/* could be a column name or a relation_name */ /* could be a column name or a relation_name */
Ident *n = makeNode(Ident); Ident *n = makeNode(Ident);
...@@ -9808,39 +9808,39 @@ case 735: ...@@ -9808,39 +9808,39 @@ case 735:
; ;
break;} break;}
case 736: case 736:
#line 4312 "gram.y" #line 4313 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ;
break;} break;}
case 737: case 737:
#line 4314 "gram.y" #line 4315 "gram.y"
{ yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 738: case 738:
#line 4316 "gram.y" #line 4317 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 739: case 739:
#line 4318 "gram.y" #line 4319 "gram.y"
{ yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 740: case 740:
#line 4320 "gram.y" #line 4321 "gram.y"
{ yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 741: case 741:
#line 4322 "gram.y" #line 4323 "gram.y"
{ yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ;
break;} break;}
case 742: case 742:
#line 4324 "gram.y" #line 4325 "gram.y"
{ yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ;
break;} break;}
case 743: case 743:
#line 4326 "gram.y" #line 4327 "gram.y"
{ yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ;
break;} break;}
case 744: case 744:
#line 4328 "gram.y" #line 4329 "gram.y"
{ {
yyval.node = (Node *)yyvsp[-2].node; yyval.node = (Node *)yyvsp[-2].node;
/* AexprConst can be either A_Const or ParamNo */ /* AexprConst can be either A_Const or ParamNo */
...@@ -9858,7 +9858,7 @@ case 744: ...@@ -9858,7 +9858,7 @@ case 744:
; ;
break;} break;}
case 745: case 745:
#line 4344 "gram.y" #line 4345 "gram.y"
{ {
yyval.node = (Node *)yyvsp[-3].node; yyval.node = (Node *)yyvsp[-3].node;
/* AexprConst can be either A_Const or ParamNo */ /* AexprConst can be either A_Const or ParamNo */
...@@ -9876,23 +9876,23 @@ case 745: ...@@ -9876,23 +9876,23 @@ case 745:
; ;
break;} break;}
case 746: case 746:
#line 4360 "gram.y" #line 4361 "gram.y"
{ yyval.node = yyvsp[-1].node; ; { yyval.node = yyvsp[-1].node; ;
break;} break;}
case 747: case 747:
#line 4362 "gram.y" #line 4363 "gram.y"
{ yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ; { yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ;
break;} break;}
case 748: case 748:
#line 4364 "gram.y" #line 4365 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ;
break;} break;}
case 749: case 749:
#line 4366 "gram.y" #line 4367 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ;
break;} break;}
case 750: case 750:
#line 4368 "gram.y" #line 4369 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-2].str; n->funcname = yyvsp[-2].str;
...@@ -9901,7 +9901,7 @@ case 750: ...@@ -9901,7 +9901,7 @@ case 750:
; ;
break;} break;}
case 751: case 751:
#line 4375 "gram.y" #line 4376 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-3].str; n->funcname = yyvsp[-3].str;
...@@ -9910,7 +9910,7 @@ case 751: ...@@ -9910,7 +9910,7 @@ case 751:
; ;
break;} break;}
case 752: case 752:
#line 4382 "gram.y" #line 4383 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName); TypeName *t = makeNode(TypeName);
...@@ -9927,7 +9927,7 @@ case 752: ...@@ -9927,7 +9927,7 @@ case 752:
; ;
break;} break;}
case 753: case 753:
#line 4397 "gram.y" #line 4398 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName); TypeName *t = makeNode(TypeName);
...@@ -9944,7 +9944,7 @@ case 753: ...@@ -9944,7 +9944,7 @@ case 753:
; ;
break;} break;}
case 754: case 754:
#line 4412 "gram.y" #line 4413 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const); A_Const *s = makeNode(A_Const);
...@@ -9968,7 +9968,7 @@ case 754: ...@@ -9968,7 +9968,7 @@ case 754:
; ;
break;} break;}
case 755: case 755:
#line 4434 "gram.y" #line 4435 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName); TypeName *t = makeNode(TypeName);
...@@ -9985,7 +9985,7 @@ case 755: ...@@ -9985,7 +9985,7 @@ case 755:
; ;
break;} break;}
case 756: case 756:
#line 4449 "gram.y" #line 4450 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const); A_Const *s = makeNode(A_Const);
...@@ -10009,7 +10009,7 @@ case 756: ...@@ -10009,7 +10009,7 @@ case 756:
; ;
break;} break;}
case 757: case 757:
#line 4471 "gram.y" #line 4472 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "getpgusername"; n->funcname = "getpgusername";
...@@ -10018,7 +10018,7 @@ case 757: ...@@ -10018,7 +10018,7 @@ case 757:
; ;
break;} break;}
case 758: case 758:
#line 4478 "gram.y" #line 4479 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "getpgusername"; n->funcname = "getpgusername";
...@@ -10027,7 +10027,7 @@ case 758: ...@@ -10027,7 +10027,7 @@ case 758:
; ;
break;} break;}
case 759: case 759:
#line 4485 "gram.y" #line 4486 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "strpos"; n->funcname = "strpos";
...@@ -10036,7 +10036,7 @@ case 759: ...@@ -10036,7 +10036,7 @@ case 759:
; ;
break;} break;}
case 760: case 760:
#line 4492 "gram.y" #line 4493 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "substr"; n->funcname = "substr";
...@@ -10045,7 +10045,7 @@ case 760: ...@@ -10045,7 +10045,7 @@ case 760:
; ;
break;} break;}
case 761: case 761:
#line 4500 "gram.y" #line 4501 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim"; n->funcname = "btrim";
...@@ -10054,7 +10054,7 @@ case 761: ...@@ -10054,7 +10054,7 @@ case 761:
; ;
break;} break;}
case 762: case 762:
#line 4507 "gram.y" #line 4508 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "ltrim"; n->funcname = "ltrim";
...@@ -10063,7 +10063,7 @@ case 762: ...@@ -10063,7 +10063,7 @@ case 762:
; ;
break;} break;}
case 763: case 763:
#line 4514 "gram.y" #line 4515 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "rtrim"; n->funcname = "rtrim";
...@@ -10072,7 +10072,7 @@ case 763: ...@@ -10072,7 +10072,7 @@ case 763:
; ;
break;} break;}
case 764: case 764:
#line 4521 "gram.y" #line 4522 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim"; n->funcname = "btrim";
...@@ -10081,7 +10081,7 @@ case 764: ...@@ -10081,7 +10081,7 @@ case 764:
; ;
break;} break;}
case 765: case 765:
#line 4530 "gram.y" #line 4531 "gram.y"
{ {
A_Indices *ai = makeNode(A_Indices); A_Indices *ai = makeNode(A_Indices);
ai->lidx = NULL; ai->lidx = NULL;
...@@ -10090,7 +10090,7 @@ case 765: ...@@ -10090,7 +10090,7 @@ case 765:
; ;
break;} break;}
case 766: case 766:
#line 4537 "gram.y" #line 4538 "gram.y"
{ {
A_Indices *ai = makeNode(A_Indices); A_Indices *ai = makeNode(A_Indices);
ai->lidx = yyvsp[-4].node; ai->lidx = yyvsp[-4].node;
...@@ -10099,23 +10099,23 @@ case 766: ...@@ -10099,23 +10099,23 @@ case 766:
; ;
break;} break;}
case 767: case 767:
#line 4544 "gram.y" #line 4545 "gram.y"
{ yyval.list = NIL; ; { yyval.list = NIL; ;
break;} break;}
case 768: case 768:
#line 4548 "gram.y" #line 4549 "gram.y"
{ yyval.list = lcons(yyvsp[0].node, NIL); ; { yyval.list = lcons(yyvsp[0].node, NIL); ;
break;} break;}
case 769: case 769:
#line 4550 "gram.y" #line 4551 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ;
break;} break;}
case 770: case 770:
#line 4552 "gram.y" #line 4553 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ;
break;} break;}
case 771: case 771:
#line 4556 "gram.y" #line 4557 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -10124,66 +10124,66 @@ case 771: ...@@ -10124,66 +10124,66 @@ case 771:
; ;
break;} break;}
case 772: case 772:
#line 4563 "gram.y" #line 4564 "gram.y"
{ yyval.list = NIL; ; { yyval.list = NIL; ;
break;} break;}
case 773: case 773:
#line 4566 "gram.y" #line 4567 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 774: case 774:
#line 4567 "gram.y" #line 4568 "gram.y"
{ yyval.str = "tz_hour"; ; { yyval.str = "tz_hour"; ;
break;} break;}
case 775: case 775:
#line 4568 "gram.y" #line 4569 "gram.y"
{ yyval.str = "tz_minute"; ; { yyval.str = "tz_minute"; ;
break;} break;}
case 776: case 776:
#line 4572 "gram.y" #line 4573 "gram.y"
{ yyval.list = makeList(yyvsp[0].node, yyvsp[-2].node, -1); ; { yyval.list = makeList(yyvsp[0].node, yyvsp[-2].node, -1); ;
break;} break;}
case 777: case 777:
#line 4574 "gram.y" #line 4575 "gram.y"
{ yyval.list = NIL; ; { yyval.list = NIL; ;
break;} break;}
case 778: case 778:
#line 4578 "gram.y" #line 4579 "gram.y"
{ {
yyvsp[-1].attr->indirection = yyvsp[0].list; yyvsp[-1].attr->indirection = yyvsp[0].list;
yyval.node = (Node *)yyvsp[-1].attr; yyval.node = (Node *)yyvsp[-1].attr;
; ;
break;} break;}
case 779: case 779:
#line 4583 "gram.y" #line 4584 "gram.y"
{ yyval.node = yyvsp[0].node; ; { yyval.node = yyvsp[0].node; ;
break;} break;}
case 780: case 780:
#line 4585 "gram.y" #line 4586 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ;
break;} break;}
case 781: case 781:
#line 4587 "gram.y" #line 4588 "gram.y"
{ yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 782: case 782:
#line 4589 "gram.y" #line 4590 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 783: case 783:
#line 4591 "gram.y" #line 4592 "gram.y"
{ yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 784: case 784:
#line 4593 "gram.y" #line 4594 "gram.y"
{ yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 785: case 785:
#line 4595 "gram.y" #line 4596 "gram.y"
{ yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ;
break;} break;}
case 786: case 786:
#line 4597 "gram.y" #line 4598 "gram.y"
{ {
yyval.node = (Node *)yyvsp[-2].node; yyval.node = (Node *)yyvsp[-2].node;
/* AexprConst can be either A_Const or ParamNo */ /* AexprConst can be either A_Const or ParamNo */
...@@ -10201,7 +10201,7 @@ case 786: ...@@ -10201,7 +10201,7 @@ case 786:
; ;
break;} break;}
case 787: case 787:
#line 4613 "gram.y" #line 4614 "gram.y"
{ {
yyval.node = (Node *)yyvsp[-3].node; yyval.node = (Node *)yyvsp[-3].node;
/* AexprConst can be either A_Const or ParamNo */ /* AexprConst can be either A_Const or ParamNo */
...@@ -10219,23 +10219,23 @@ case 787: ...@@ -10219,23 +10219,23 @@ case 787:
; ;
break;} break;}
case 788: case 788:
#line 4629 "gram.y" #line 4630 "gram.y"
{ yyval.node = yyvsp[-1].node; ; { yyval.node = yyvsp[-1].node; ;
break;} break;}
case 789: case 789:
#line 4631 "gram.y" #line 4632 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, yyvsp[-2].node, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, yyvsp[-1].str, yyvsp[-2].node, yyvsp[0].node); ;
break;} break;}
case 790: case 790:
#line 4633 "gram.y" #line 4634 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ;
break;} break;}
case 791: case 791:
#line 4635 "gram.y" #line 4636 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ;
break;} break;}
case 792: case 792:
#line 4637 "gram.y" #line 4638 "gram.y"
{ {
/* could be a column name or a relation_name */ /* could be a column name or a relation_name */
Ident *n = makeNode(Ident); Ident *n = makeNode(Ident);
...@@ -10245,7 +10245,7 @@ case 792: ...@@ -10245,7 +10245,7 @@ case 792:
; ;
break;} break;}
case 793: case 793:
#line 4645 "gram.y" #line 4646 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-2].str; n->funcname = yyvsp[-2].str;
...@@ -10254,7 +10254,7 @@ case 793: ...@@ -10254,7 +10254,7 @@ case 793:
; ;
break;} break;}
case 794: case 794:
#line 4652 "gram.y" #line 4653 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-3].str; n->funcname = yyvsp[-3].str;
...@@ -10263,7 +10263,7 @@ case 794: ...@@ -10263,7 +10263,7 @@ case 794:
; ;
break;} break;}
case 795: case 795:
#line 4659 "gram.y" #line 4660 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "strpos"; n->funcname = "strpos";
...@@ -10272,7 +10272,7 @@ case 795: ...@@ -10272,7 +10272,7 @@ case 795:
; ;
break;} break;}
case 796: case 796:
#line 4666 "gram.y" #line 4667 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "substr"; n->funcname = "substr";
...@@ -10281,7 +10281,7 @@ case 796: ...@@ -10281,7 +10281,7 @@ case 796:
; ;
break;} break;}
case 797: case 797:
#line 4674 "gram.y" #line 4675 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim"; n->funcname = "btrim";
...@@ -10290,7 +10290,7 @@ case 797: ...@@ -10290,7 +10290,7 @@ case 797:
; ;
break;} break;}
case 798: case 798:
#line 4681 "gram.y" #line 4682 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "ltrim"; n->funcname = "ltrim";
...@@ -10299,7 +10299,7 @@ case 798: ...@@ -10299,7 +10299,7 @@ case 798:
; ;
break;} break;}
case 799: case 799:
#line 4688 "gram.y" #line 4689 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "rtrim"; n->funcname = "rtrim";
...@@ -10308,7 +10308,7 @@ case 799: ...@@ -10308,7 +10308,7 @@ case 799:
; ;
break;} break;}
case 800: case 800:
#line 4695 "gram.y" #line 4696 "gram.y"
{ {
FuncCall *n = makeNode(FuncCall); FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim"; n->funcname = "btrim";
...@@ -10317,21 +10317,21 @@ case 800: ...@@ -10317,21 +10317,21 @@ case 800:
; ;
break;} break;}
case 801: case 801:
#line 4704 "gram.y" #line 4705 "gram.y"
{ {
yyval.list = nconc(nconc(yyvsp[-2].list,yyvsp[-1].list),yyvsp[0].list); yyval.list = nconc(nconc(yyvsp[-2].list,yyvsp[-1].list),yyvsp[0].list);
; ;
break;} break;}
case 802: case 802:
#line 4708 "gram.y" #line 4709 "gram.y"
{ yyval.list = NIL; ; { yyval.list = NIL; ;
break;} break;}
case 803: case 803:
#line 4712 "gram.y" #line 4713 "gram.y"
{ yyval.list = yyvsp[0].list; ; { yyval.list = yyvsp[0].list; ;
break;} break;}
case 804: case 804:
#line 4714 "gram.y" #line 4715 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_Integer; n->val.type = T_Integer;
...@@ -10340,27 +10340,27 @@ case 804: ...@@ -10340,27 +10340,27 @@ case 804:
; ;
break;} break;}
case 805: case 805:
#line 4723 "gram.y" #line 4724 "gram.y"
{ yyval.list = yyvsp[0].list; ; { yyval.list = yyvsp[0].list; ;
break;} break;}
case 806: case 806:
#line 4725 "gram.y" #line 4726 "gram.y"
{ yyval.list = NIL; ; { yyval.list = NIL; ;
break;} break;}
case 807: case 807:
#line 4729 "gram.y" #line 4730 "gram.y"
{ yyval.list = lappend(yyvsp[0].list, yyvsp[-2].node); ; { yyval.list = lappend(yyvsp[0].list, yyvsp[-2].node); ;
break;} break;}
case 808: case 808:
#line 4731 "gram.y" #line 4732 "gram.y"
{ yyval.list = yyvsp[0].list; ; { yyval.list = yyvsp[0].list; ;
break;} break;}
case 809: case 809:
#line 4733 "gram.y" #line 4734 "gram.y"
{ yyval.list = yyvsp[0].list; ; { yyval.list = yyvsp[0].list; ;
break;} break;}
case 810: case 810:
#line 4737 "gram.y" #line 4738 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->subselect = yyvsp[0].node; n->subselect = yyvsp[0].node;
...@@ -10368,21 +10368,21 @@ case 810: ...@@ -10368,21 +10368,21 @@ case 810:
; ;
break;} break;}
case 811: case 811:
#line 4743 "gram.y" #line 4744 "gram.y"
{ yyval.node = yyvsp[0].node; ; { yyval.node = yyvsp[0].node; ;
break;} break;}
case 812: case 812:
#line 4747 "gram.y" #line 4748 "gram.y"
{ yyval.node = makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node); ;
break;} break;}
case 813: case 813:
#line 4749 "gram.y" #line 4750 "gram.y"
{ yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, { yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node,
makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node)); makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node));
; ;
break;} break;}
case 814: case 814:
#line 4755 "gram.y" #line 4756 "gram.y"
{ {
SubLink *n = makeNode(SubLink); SubLink *n = makeNode(SubLink);
n->subselect = yyvsp[0].node; n->subselect = yyvsp[0].node;
...@@ -10390,21 +10390,21 @@ case 814: ...@@ -10390,21 +10390,21 @@ case 814:
; ;
break;} break;}
case 815: case 815:
#line 4761 "gram.y" #line 4762 "gram.y"
{ yyval.node = yyvsp[0].node; ; { yyval.node = yyvsp[0].node; ;
break;} break;}
case 816: case 816:
#line 4765 "gram.y" #line 4766 "gram.y"
{ yyval.node = makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node); ; { yyval.node = makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node); ;
break;} break;}
case 817: case 817:
#line 4767 "gram.y" #line 4768 "gram.y"
{ yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, { yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node,
makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node)); makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node));
; ;
break;} break;}
case 818: case 818:
#line 4788 "gram.y" #line 4789 "gram.y"
{ {
CaseExpr *c = makeNode(CaseExpr); CaseExpr *c = makeNode(CaseExpr);
c->arg = yyvsp[-3].node; c->arg = yyvsp[-3].node;
...@@ -10414,7 +10414,7 @@ case 818: ...@@ -10414,7 +10414,7 @@ case 818:
; ;
break;} break;}
case 819: case 819:
#line 4796 "gram.y" #line 4797 "gram.y"
{ {
CaseExpr *c = makeNode(CaseExpr); CaseExpr *c = makeNode(CaseExpr);
CaseWhen *w = makeNode(CaseWhen); CaseWhen *w = makeNode(CaseWhen);
...@@ -10430,7 +10430,7 @@ case 819: ...@@ -10430,7 +10430,7 @@ case 819:
; ;
break;} break;}
case 820: case 820:
#line 4810 "gram.y" #line 4811 "gram.y"
{ {
CaseExpr *c = makeNode(CaseExpr); CaseExpr *c = makeNode(CaseExpr);
CaseWhen *w; CaseWhen *w;
...@@ -10446,15 +10446,15 @@ case 820: ...@@ -10446,15 +10446,15 @@ case 820:
; ;
break;} break;}
case 821: case 821:
#line 4826 "gram.y" #line 4827 "gram.y"
{ yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); ; { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); ;
break;} break;}
case 822: case 822:
#line 4828 "gram.y" #line 4829 "gram.y"
{ yyval.list = lcons(yyvsp[0].node, NIL); ; { yyval.list = lcons(yyvsp[0].node, NIL); ;
break;} break;}
case 823: case 823:
#line 4832 "gram.y" #line 4833 "gram.y"
{ {
CaseWhen *w = makeNode(CaseWhen); CaseWhen *w = makeNode(CaseWhen);
w->expr = yyvsp[-2].node; w->expr = yyvsp[-2].node;
...@@ -10463,22 +10463,22 @@ case 823: ...@@ -10463,22 +10463,22 @@ case 823:
; ;
break;} break;}
case 824: case 824:
#line 4840 "gram.y" #line 4841 "gram.y"
{ yyval.node = yyvsp[0].node; ; { yyval.node = yyvsp[0].node; ;
break;} break;}
case 825: case 825:
#line 4841 "gram.y" #line 4842 "gram.y"
{ yyval.node = NULL; ; { yyval.node = NULL; ;
break;} break;}
case 826: case 826:
#line 4845 "gram.y" #line 4846 "gram.y"
{ {
yyvsp[-1].attr->indirection = yyvsp[0].list; yyvsp[-1].attr->indirection = yyvsp[0].list;
yyval.node = (Node *)yyvsp[-1].attr; yyval.node = (Node *)yyvsp[-1].attr;
; ;
break;} break;}
case 827: case 827:
#line 4850 "gram.y" #line 4851 "gram.y"
{ {
/* could be a column name or a relation_name */ /* could be a column name or a relation_name */
Ident *n = makeNode(Ident); Ident *n = makeNode(Ident);
...@@ -10488,11 +10488,11 @@ case 827: ...@@ -10488,11 +10488,11 @@ case 827:
; ;
break;} break;}
case 828: case 828:
#line 4858 "gram.y" #line 4859 "gram.y"
{ yyval.node = NULL; ; { yyval.node = NULL; ;
break;} break;}
case 829: case 829:
#line 4862 "gram.y" #line 4863 "gram.y"
{ {
yyval.attr = makeNode(Attr); yyval.attr = makeNode(Attr);
yyval.attr->relname = yyvsp[-2].str; yyval.attr->relname = yyvsp[-2].str;
...@@ -10502,7 +10502,7 @@ case 829: ...@@ -10502,7 +10502,7 @@ case 829:
; ;
break;} break;}
case 830: case 830:
#line 4870 "gram.y" #line 4871 "gram.y"
{ {
yyval.attr = makeNode(Attr); yyval.attr = makeNode(Attr);
yyval.attr->relname = NULL; yyval.attr->relname = NULL;
...@@ -10512,27 +10512,27 @@ case 830: ...@@ -10512,27 +10512,27 @@ case 830:
; ;
break;} break;}
case 831: case 831:
#line 4880 "gram.y" #line 4881 "gram.y"
{ yyval.list = lcons(makeString(yyvsp[0].str), NIL); ; { yyval.list = lcons(makeString(yyvsp[0].str), NIL); ;
break;} break;}
case 832: case 832:
#line 4882 "gram.y" #line 4883 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); ; { yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); ;
break;} break;}
case 833: case 833:
#line 4884 "gram.y" #line 4885 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, makeString("*")); ; { yyval.list = lappend(yyvsp[-2].list, makeString("*")); ;
break;} break;}
case 834: case 834:
#line 4895 "gram.y" #line 4896 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list,yyvsp[0].target); ; { yyval.list = lappend(yyvsp[-2].list,yyvsp[0].target); ;
break;} break;}
case 835: case 835:
#line 4897 "gram.y" #line 4898 "gram.y"
{ yyval.list = lcons(yyvsp[0].target, NIL); ; { yyval.list = lcons(yyvsp[0].target, NIL); ;
break;} break;}
case 836: case 836:
#line 4899 "gram.y" #line 4900 "gram.y"
{ {
ResTarget *rt = makeNode(ResTarget); ResTarget *rt = makeNode(ResTarget);
Attr *att = makeNode(Attr); Attr *att = makeNode(Attr);
...@@ -10547,7 +10547,7 @@ case 836: ...@@ -10547,7 +10547,7 @@ case 836:
; ;
break;} break;}
case 837: case 837:
#line 4914 "gram.y" #line 4915 "gram.y"
{ {
yyval.target = makeNode(ResTarget); yyval.target = makeNode(ResTarget);
yyval.target->name = yyvsp[-3].str; yyval.target->name = yyvsp[-3].str;
...@@ -10556,7 +10556,7 @@ case 837: ...@@ -10556,7 +10556,7 @@ case 837:
; ;
break;} break;}
case 838: case 838:
#line 4921 "gram.y" #line 4922 "gram.y"
{ {
yyval.target = makeNode(ResTarget); yyval.target = makeNode(ResTarget);
yyval.target->name = NULL; yyval.target->name = NULL;
...@@ -10565,7 +10565,7 @@ case 838: ...@@ -10565,7 +10565,7 @@ case 838:
; ;
break;} break;}
case 839: case 839:
#line 4928 "gram.y" #line 4929 "gram.y"
{ {
Attr *att = makeNode(Attr); Attr *att = makeNode(Attr);
att->relname = yyvsp[-2].str; att->relname = yyvsp[-2].str;
...@@ -10579,15 +10579,15 @@ case 839: ...@@ -10579,15 +10579,15 @@ case 839:
; ;
break;} break;}
case 840: case 840:
#line 4947 "gram.y" #line 4948 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); ; { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); ;
break;} break;}
case 841: case 841:
#line 4949 "gram.y" #line 4950 "gram.y"
{ yyval.list = lcons(yyvsp[0].target, NIL); ; { yyval.list = lcons(yyvsp[0].target, NIL); ;
break;} break;}
case 842: case 842:
#line 4954 "gram.y" #line 4955 "gram.y"
{ {
yyval.target = makeNode(ResTarget); yyval.target = makeNode(ResTarget);
yyval.target->name = yyvsp[0].str; yyval.target->name = yyvsp[0].str;
...@@ -10596,7 +10596,7 @@ case 842: ...@@ -10596,7 +10596,7 @@ case 842:
; ;
break;} break;}
case 843: case 843:
#line 4961 "gram.y" #line 4962 "gram.y"
{ {
yyval.target = makeNode(ResTarget); yyval.target = makeNode(ResTarget);
yyval.target->name = NULL; yyval.target->name = NULL;
...@@ -10605,7 +10605,7 @@ case 843: ...@@ -10605,7 +10605,7 @@ case 843:
; ;
break;} break;}
case 844: case 844:
#line 4968 "gram.y" #line 4969 "gram.y"
{ {
Attr *att = makeNode(Attr); Attr *att = makeNode(Attr);
att->relname = yyvsp[-2].str; att->relname = yyvsp[-2].str;
...@@ -10619,7 +10619,7 @@ case 844: ...@@ -10619,7 +10619,7 @@ case 844:
; ;
break;} break;}
case 845: case 845:
#line 4980 "gram.y" #line 4981 "gram.y"
{ {
Attr *att = makeNode(Attr); Attr *att = makeNode(Attr);
att->relname = "*"; att->relname = "*";
...@@ -10633,22 +10633,22 @@ case 845: ...@@ -10633,22 +10633,22 @@ case 845:
; ;
break;} break;}
case 846: case 846:
#line 4993 "gram.y" #line 4994 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 847: case 847:
#line 4994 "gram.y" #line 4995 "gram.y"
{ yyval.str = NULL; ; { yyval.str = NULL; ;
break;} break;}
case 848: case 848:
#line 4998 "gram.y" #line 4999 "gram.y"
{ {
yyval.str = yyvsp[0].str; yyval.str = yyvsp[0].str;
StrNCpy(saved_relname, yyvsp[0].str, NAMEDATALEN); StrNCpy(saved_relname, yyvsp[0].str, NAMEDATALEN);
; ;
break;} break;}
case 849: case 849:
#line 5003 "gram.y" #line 5004 "gram.y"
{ {
/* disallow refs to variable system tables */ /* disallow refs to variable system tables */
if (strcmp(LogRelationName, yyvsp[0].str) == 0 if (strcmp(LogRelationName, yyvsp[0].str) == 0
...@@ -10660,39 +10660,39 @@ case 849: ...@@ -10660,39 +10660,39 @@ case 849:
; ;
break;} break;}
case 850: case 850:
#line 5014 "gram.y" #line 5015 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 851: case 851:
#line 5015 "gram.y" #line 5016 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 852: case 852:
#line 5016 "gram.y" #line 5017 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 853: case 853:
#line 5017 "gram.y" #line 5018 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 854: case 854:
#line 5018 "gram.y" #line 5019 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 855: case 855:
#line 5024 "gram.y" #line 5025 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 856: case 856:
#line 5025 "gram.y" #line 5026 "gram.y"
{ yyval.str = xlateSqlFunc(yyvsp[0].str); ; { yyval.str = xlateSqlFunc(yyvsp[0].str); ;
break;} break;}
case 857: case 857:
#line 5027 "gram.y" #line 5028 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 858: case 858:
#line 5034 "gram.y" #line 5035 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_Integer; n->val.type = T_Integer;
...@@ -10701,7 +10701,7 @@ case 858: ...@@ -10701,7 +10701,7 @@ case 858:
; ;
break;} break;}
case 859: case 859:
#line 5041 "gram.y" #line 5042 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_Float; n->val.type = T_Float;
...@@ -10710,7 +10710,7 @@ case 859: ...@@ -10710,7 +10710,7 @@ case 859:
; ;
break;} break;}
case 860: case 860:
#line 5048 "gram.y" #line 5049 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -10719,7 +10719,7 @@ case 860: ...@@ -10719,7 +10719,7 @@ case 860:
; ;
break;} break;}
case 861: case 861:
#line 5055 "gram.y" #line 5056 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->typename = yyvsp[-1].typnam; n->typename = yyvsp[-1].typnam;
...@@ -10729,11 +10729,11 @@ case 861: ...@@ -10729,11 +10729,11 @@ case 861:
; ;
break;} break;}
case 862: case 862:
#line 5063 "gram.y" #line 5064 "gram.y"
{ yyval.node = (Node *)yyvsp[0].paramno; ; { yyval.node = (Node *)yyvsp[0].paramno; ;
break;} break;}
case 863: case 863:
#line 5065 "gram.y" #line 5066 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -10745,7 +10745,7 @@ case 863: ...@@ -10745,7 +10745,7 @@ case 863:
; ;
break;} break;}
case 864: case 864:
#line 5075 "gram.y" #line 5076 "gram.y"
{ {
A_Const *n = makeNode(A_Const); A_Const *n = makeNode(A_Const);
n->val.type = T_String; n->val.type = T_String;
...@@ -10757,7 +10757,7 @@ case 864: ...@@ -10757,7 +10757,7 @@ case 864:
; ;
break;} break;}
case 865: case 865:
#line 5087 "gram.y" #line 5088 "gram.y"
{ {
yyval.paramno = makeNode(ParamNo); yyval.paramno = makeNode(ParamNo);
yyval.paramno->number = yyvsp[-1].ival; yyval.paramno->number = yyvsp[-1].ival;
...@@ -10765,463 +10765,463 @@ case 865: ...@@ -10765,463 +10765,463 @@ case 865:
; ;
break;} break;}
case 866: case 866:
#line 5094 "gram.y" #line 5095 "gram.y"
{ yyval.ival = yyvsp[0].ival; ; { yyval.ival = yyvsp[0].ival; ;
break;} break;}
case 867: case 867:
#line 5095 "gram.y" #line 5096 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 868: case 868:
#line 5096 "gram.y" #line 5097 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 869: case 869:
#line 5104 "gram.y" #line 5105 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].str); ; { yyval.str = xlateSqlType(yyvsp[0].str); ;
break;} break;}
case 870: case 870:
#line 5106 "gram.y" #line 5107 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].str); ; { yyval.str = xlateSqlType(yyvsp[0].str); ;
break;} break;}
case 871: case 871:
#line 5108 "gram.y" #line 5109 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].str); ; { yyval.str = xlateSqlType(yyvsp[0].str); ;
break;} break;}
case 872: case 872:
#line 5118 "gram.y" #line 5119 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 873: case 873:
#line 5119 "gram.y" #line 5120 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 874: case 874:
#line 5120 "gram.y" #line 5121 "gram.y"
{ yyval.str = "absolute"; ; { yyval.str = "absolute"; ;
break;} break;}
case 875: case 875:
#line 5121 "gram.y" #line 5122 "gram.y"
{ yyval.str = "action"; ; { yyval.str = "action"; ;
break;} break;}
case 876: case 876:
#line 5122 "gram.y" #line 5123 "gram.y"
{ yyval.str = "after"; ; { yyval.str = "after"; ;
break;} break;}
case 877: case 877:
#line 5123 "gram.y" #line 5124 "gram.y"
{ yyval.str = "aggregate"; ; { yyval.str = "aggregate"; ;
break;} break;}
case 878: case 878:
#line 5124 "gram.y" #line 5125 "gram.y"
{ yyval.str = "backward"; ; { yyval.str = "backward"; ;
break;} break;}
case 879: case 879:
#line 5125 "gram.y" #line 5126 "gram.y"
{ yyval.str = "before"; ; { yyval.str = "before"; ;
break;} break;}
case 880: case 880:
#line 5126 "gram.y" #line 5127 "gram.y"
{ yyval.str = "cache"; ; { yyval.str = "cache"; ;
break;} break;}
case 881: case 881:
#line 5127 "gram.y" #line 5128 "gram.y"
{ yyval.str = "createdb"; ; { yyval.str = "createdb"; ;
break;} break;}
case 882: case 882:
#line 5128 "gram.y" #line 5129 "gram.y"
{ yyval.str = "createuser"; ; { yyval.str = "createuser"; ;
break;} break;}
case 883: case 883:
#line 5129 "gram.y" #line 5130 "gram.y"
{ yyval.str = "cycle"; ; { yyval.str = "cycle"; ;
break;} break;}
case 884: case 884:
#line 5130 "gram.y" #line 5131 "gram.y"
{ yyval.str = "database"; ; { yyval.str = "database"; ;
break;} break;}
case 885: case 885:
#line 5131 "gram.y" #line 5132 "gram.y"
{ yyval.str = "delimiters"; ; { yyval.str = "delimiters"; ;
break;} break;}
case 886: case 886:
#line 5132 "gram.y" #line 5133 "gram.y"
{ yyval.str = "double"; ; { yyval.str = "double"; ;
break;} break;}
case 887: case 887:
#line 5133 "gram.y" #line 5134 "gram.y"
{ yyval.str = "each"; ; { yyval.str = "each"; ;
break;} break;}
case 888: case 888:
#line 5134 "gram.y" #line 5135 "gram.y"
{ yyval.str = "encoding"; ; { yyval.str = "encoding"; ;
break;} break;}
case 889: case 889:
#line 5135 "gram.y" #line 5136 "gram.y"
{ yyval.str = "forward"; ; { yyval.str = "forward"; ;
break;} break;}
case 890: case 890:
#line 5136 "gram.y" #line 5137 "gram.y"
{ yyval.str = "function"; ; { yyval.str = "function"; ;
break;} break;}
case 891: case 891:
#line 5137 "gram.y" #line 5138 "gram.y"
{ yyval.str = "handler"; ; { yyval.str = "handler"; ;
break;} break;}
case 892: case 892:
#line 5138 "gram.y" #line 5139 "gram.y"
{ yyval.str = "increment"; ; { yyval.str = "increment"; ;
break;} break;}
case 893: case 893:
#line 5139 "gram.y" #line 5140 "gram.y"
{ yyval.str = "index"; ; { yyval.str = "index"; ;
break;} break;}
case 894: case 894:
#line 5140 "gram.y" #line 5141 "gram.y"
{ yyval.str = "inherits"; ; { yyval.str = "inherits"; ;
break;} break;}
case 895: case 895:
#line 5141 "gram.y" #line 5142 "gram.y"
{ yyval.str = "insensitive"; ; { yyval.str = "insensitive"; ;
break;} break;}
case 896: case 896:
#line 5142 "gram.y" #line 5143 "gram.y"
{ yyval.str = "instead"; ; { yyval.str = "instead"; ;
break;} break;}
case 897: case 897:
#line 5143 "gram.y" #line 5144 "gram.y"
{ yyval.str = "isnull"; ; { yyval.str = "isnull"; ;
break;} break;}
case 898: case 898:
#line 5144 "gram.y" #line 5145 "gram.y"
{ yyval.str = "key"; ; { yyval.str = "key"; ;
break;} break;}
case 899: case 899:
#line 5145 "gram.y" #line 5146 "gram.y"
{ yyval.str = "language"; ; { yyval.str = "language"; ;
break;} break;}
case 900: case 900:
#line 5146 "gram.y" #line 5147 "gram.y"
{ yyval.str = "lancompiler"; ; { yyval.str = "lancompiler"; ;
break;} break;}
case 901: case 901:
#line 5147 "gram.y" #line 5148 "gram.y"
{ yyval.str = "location"; ; { yyval.str = "location"; ;
break;} break;}
case 902: case 902:
#line 5148 "gram.y" #line 5149 "gram.y"
{ yyval.str = "match"; ; { yyval.str = "match"; ;
break;} break;}
case 903: case 903:
#line 5149 "gram.y" #line 5150 "gram.y"
{ yyval.str = "maxvalue"; ; { yyval.str = "maxvalue"; ;
break;} break;}
case 904: case 904:
#line 5150 "gram.y" #line 5151 "gram.y"
{ yyval.str = "minvalue"; ; { yyval.str = "minvalue"; ;
break;} break;}
case 905: case 905:
#line 5151 "gram.y" #line 5152 "gram.y"
{ yyval.str = "next"; ; { yyval.str = "next"; ;
break;} break;}
case 906: case 906:
#line 5152 "gram.y" #line 5153 "gram.y"
{ yyval.str = "nocreatedb"; ; { yyval.str = "nocreatedb"; ;
break;} break;}
case 907: case 907:
#line 5153 "gram.y" #line 5154 "gram.y"
{ yyval.str = "nocreateuser"; ; { yyval.str = "nocreateuser"; ;
break;} break;}
case 908: case 908:
#line 5154 "gram.y" #line 5155 "gram.y"
{ yyval.str = "nothing"; ; { yyval.str = "nothing"; ;
break;} break;}
case 909: case 909:
#line 5155 "gram.y" #line 5156 "gram.y"
{ yyval.str = "notnull"; ; { yyval.str = "notnull"; ;
break;} break;}
case 910: case 910:
#line 5156 "gram.y" #line 5157 "gram.y"
{ yyval.str = "of"; ; { yyval.str = "of"; ;
break;} break;}
case 911: case 911:
#line 5157 "gram.y" #line 5158 "gram.y"
{ yyval.str = "oids"; ; { yyval.str = "oids"; ;
break;} break;}
case 912: case 912:
#line 5158 "gram.y" #line 5159 "gram.y"
{ yyval.str = "only"; ; { yyval.str = "only"; ;
break;} break;}
case 913: case 913:
#line 5159 "gram.y" #line 5160 "gram.y"
{ yyval.str = "operator"; ; { yyval.str = "operator"; ;
break;} break;}
case 914: case 914:
#line 5160 "gram.y" #line 5161 "gram.y"
{ yyval.str = "option"; ; { yyval.str = "option"; ;
break;} break;}
case 915: case 915:
#line 5161 "gram.y" #line 5162 "gram.y"
{ yyval.str = "password"; ; { yyval.str = "password"; ;
break;} break;}
case 916: case 916:
#line 5162 "gram.y" #line 5163 "gram.y"
{ yyval.str = "prior"; ; { yyval.str = "prior"; ;
break;} break;}
case 917: case 917:
#line 5163 "gram.y" #line 5164 "gram.y"
{ yyval.str = "privileges"; ; { yyval.str = "privileges"; ;
break;} break;}
case 918: case 918:
#line 5164 "gram.y" #line 5165 "gram.y"
{ yyval.str = "procedural"; ; { yyval.str = "procedural"; ;
break;} break;}
case 919: case 919:
#line 5165 "gram.y" #line 5166 "gram.y"
{ yyval.str = "read"; ; { yyval.str = "read"; ;
break;} break;}
case 920: case 920:
#line 5166 "gram.y" #line 5167 "gram.y"
{ yyval.str = "relative"; ; { yyval.str = "relative"; ;
break;} break;}
case 921: case 921:
#line 5167 "gram.y" #line 5168 "gram.y"
{ yyval.str = "rename"; ; { yyval.str = "rename"; ;
break;} break;}
case 922: case 922:
#line 5168 "gram.y" #line 5169 "gram.y"
{ yyval.str = "returns"; ; { yyval.str = "returns"; ;
break;} break;}
case 923: case 923:
#line 5169 "gram.y" #line 5170 "gram.y"
{ yyval.str = "row"; ; { yyval.str = "row"; ;
break;} break;}
case 924: case 924:
#line 5170 "gram.y" #line 5171 "gram.y"
{ yyval.str = "rule"; ; { yyval.str = "rule"; ;
break;} break;}
case 925: case 925:
#line 5171 "gram.y" #line 5172 "gram.y"
{ yyval.str = "scroll"; ; { yyval.str = "scroll"; ;
break;} break;}
case 926: case 926:
#line 5172 "gram.y" #line 5173 "gram.y"
{ yyval.str = "sequence"; ; { yyval.str = "sequence"; ;
break;} break;}
case 927: case 927:
#line 5173 "gram.y" #line 5174 "gram.y"
{ yyval.str = "serial"; ; { yyval.str = "serial"; ;
break;} break;}
case 928: case 928:
#line 5174 "gram.y" #line 5175 "gram.y"
{ yyval.str = "start"; ; { yyval.str = "start"; ;
break;} break;}
case 929: case 929:
#line 5175 "gram.y" #line 5176 "gram.y"
{ yyval.str = "statement"; ; { yyval.str = "statement"; ;
break;} break;}
case 930: case 930:
#line 5176 "gram.y" #line 5177 "gram.y"
{ yyval.str = "stdin"; ; { yyval.str = "stdin"; ;
break;} break;}
case 931: case 931:
#line 5177 "gram.y" #line 5178 "gram.y"
{ yyval.str = "stdout"; ; { yyval.str = "stdout"; ;
break;} break;}
case 932: case 932:
#line 5178 "gram.y" #line 5179 "gram.y"
{ yyval.str = "time"; ; { yyval.str = "time"; ;
break;} break;}
case 933: case 933:
#line 5179 "gram.y" #line 5180 "gram.y"
{ yyval.str = "timestamp"; ; { yyval.str = "timestamp"; ;
break;} break;}
case 934: case 934:
#line 5180 "gram.y" #line 5181 "gram.y"
{ yyval.str = "timezone_hour"; ; { yyval.str = "timezone_hour"; ;
break;} break;}
case 935: case 935:
#line 5181 "gram.y" #line 5182 "gram.y"
{ yyval.str = "timezone_minute"; ; { yyval.str = "timezone_minute"; ;
break;} break;}
case 936: case 936:
#line 5182 "gram.y" #line 5183 "gram.y"
{ yyval.str = "trigger"; ; { yyval.str = "trigger"; ;
break;} break;}
case 937: case 937:
#line 5183 "gram.y" #line 5184 "gram.y"
{ yyval.str = "trusted"; ; { yyval.str = "trusted"; ;
break;} break;}
case 938: case 938:
#line 5184 "gram.y" #line 5185 "gram.y"
{ yyval.str = "type"; ; { yyval.str = "type"; ;
break;} break;}
case 939: case 939:
#line 5185 "gram.y" #line 5186 "gram.y"
{ yyval.str = "valid"; ; { yyval.str = "valid"; ;
break;} break;}
case 940: case 940:
#line 5186 "gram.y" #line 5187 "gram.y"
{ yyval.str = "version"; ; { yyval.str = "version"; ;
break;} break;}
case 941: case 941:
#line 5187 "gram.y" #line 5188 "gram.y"
{ yyval.str = "zone"; ; { yyval.str = "zone"; ;
break;} break;}
case 942: case 942:
#line 5200 "gram.y" #line 5201 "gram.y"
{ yyval.str = yyvsp[0].str; ; { yyval.str = yyvsp[0].str; ;
break;} break;}
case 943: case 943:
#line 5201 "gram.y" #line 5202 "gram.y"
{ yyval.str = "abort"; ; { yyval.str = "abort"; ;
break;} break;}
case 944: case 944:
#line 5202 "gram.y" #line 5203 "gram.y"
{ yyval.str = "analyze"; ; { yyval.str = "analyze"; ;
break;} break;}
case 945: case 945:
#line 5203 "gram.y" #line 5204 "gram.y"
{ yyval.str = "binary"; ; { yyval.str = "binary"; ;
break;} break;}
case 946: case 946:
#line 5204 "gram.y" #line 5205 "gram.y"
{ yyval.str = "case"; ; { yyval.str = "case"; ;
break;} break;}
case 947: case 947:
#line 5205 "gram.y" #line 5206 "gram.y"
{ yyval.str = "cluster"; ; { yyval.str = "cluster"; ;
break;} break;}
case 948: case 948:
#line 5206 "gram.y" #line 5207 "gram.y"
{ yyval.str = "coalesce"; ; { yyval.str = "coalesce"; ;
break;} break;}
case 949: case 949:
#line 5207 "gram.y" #line 5208 "gram.y"
{ yyval.str = "constraint"; ; { yyval.str = "constraint"; ;
break;} break;}
case 950: case 950:
#line 5208 "gram.y" #line 5209 "gram.y"
{ yyval.str = "copy"; ; { yyval.str = "copy"; ;
break;} break;}
case 951: case 951:
#line 5209 "gram.y" #line 5210 "gram.y"
{ yyval.str = "current"; ; { yyval.str = "current"; ;
break;} break;}
case 952: case 952:
#line 5210 "gram.y" #line 5211 "gram.y"
{ yyval.str = "do"; ; { yyval.str = "do"; ;
break;} break;}
case 953: case 953:
#line 5211 "gram.y" #line 5212 "gram.y"
{ yyval.str = "else"; ; { yyval.str = "else"; ;
break;} break;}
case 954: case 954:
#line 5212 "gram.y" #line 5213 "gram.y"
{ yyval.str = "end"; ; { yyval.str = "end"; ;
break;} break;}
case 955: case 955:
#line 5213 "gram.y" #line 5214 "gram.y"
{ yyval.str = "explain"; ; { yyval.str = "explain"; ;
break;} break;}
case 956: case 956:
#line 5214 "gram.y" #line 5215 "gram.y"
{ yyval.str = "extend"; ; { yyval.str = "extend"; ;
break;} break;}
case 957: case 957:
#line 5215 "gram.y" #line 5216 "gram.y"
{ yyval.str = "false"; ; { yyval.str = "false"; ;
break;} break;}
case 958: case 958:
#line 5216 "gram.y" #line 5217 "gram.y"
{ yyval.str = "foreign"; ; { yyval.str = "foreign"; ;
break;} break;}
case 959: case 959:
#line 5217 "gram.y" #line 5218 "gram.y"
{ yyval.str = "group"; ; { yyval.str = "group"; ;
break;} break;}
case 960: case 960:
#line 5218 "gram.y" #line 5219 "gram.y"
{ yyval.str = "listen"; ; { yyval.str = "listen"; ;
break;} break;}
case 961: case 961:
#line 5219 "gram.y" #line 5220 "gram.y"
{ yyval.str = "load"; ; { yyval.str = "load"; ;
break;} break;}
case 962: case 962:
#line 5220 "gram.y" #line 5221 "gram.y"
{ yyval.str = "lock"; ; { yyval.str = "lock"; ;
break;} break;}
case 963: case 963:
#line 5221 "gram.y" #line 5222 "gram.y"
{ yyval.str = "move"; ; { yyval.str = "move"; ;
break;} break;}
case 964: case 964:
#line 5222 "gram.y" #line 5223 "gram.y"
{ yyval.str = "new"; ; { yyval.str = "new"; ;
break;} break;}
case 965: case 965:
#line 5223 "gram.y" #line 5224 "gram.y"
{ yyval.str = "none"; ; { yyval.str = "none"; ;
break;} break;}
case 966: case 966:
#line 5224 "gram.y" #line 5225 "gram.y"
{ yyval.str = "nullif"; ; { yyval.str = "nullif"; ;
break;} break;}
case 967: case 967:
#line 5225 "gram.y" #line 5226 "gram.y"
{ yyval.str = "order"; ; { yyval.str = "order"; ;
break;} break;}
case 968: case 968:
#line 5226 "gram.y" #line 5227 "gram.y"
{ yyval.str = "position"; ; { yyval.str = "position"; ;
break;} break;}
case 969: case 969:
#line 5227 "gram.y" #line 5228 "gram.y"
{ yyval.str = "precision"; ; { yyval.str = "precision"; ;
break;} break;}
case 970: case 970:
#line 5228 "gram.y" #line 5229 "gram.y"
{ yyval.str = "reset"; ; { yyval.str = "reset"; ;
break;} break;}
case 971: case 971:
#line 5229 "gram.y" #line 5230 "gram.y"
{ yyval.str = "setof"; ; { yyval.str = "setof"; ;
break;} break;}
case 972: case 972:
#line 5230 "gram.y" #line 5231 "gram.y"
{ yyval.str = "show"; ; { yyval.str = "show"; ;
break;} break;}
case 973: case 973:
#line 5231 "gram.y" #line 5232 "gram.y"
{ yyval.str = "table"; ; { yyval.str = "table"; ;
break;} break;}
case 974: case 974:
#line 5232 "gram.y" #line 5233 "gram.y"
{ yyval.str = "then"; ; { yyval.str = "then"; ;
break;} break;}
case 975: case 975:
#line 5233 "gram.y" #line 5234 "gram.y"
{ yyval.str = "transaction"; ; { yyval.str = "transaction"; ;
break;} break;}
case 976: case 976:
#line 5234 "gram.y" #line 5235 "gram.y"
{ yyval.str = "true"; ; { yyval.str = "true"; ;
break;} break;}
case 977: case 977:
#line 5235 "gram.y" #line 5236 "gram.y"
{ yyval.str = "vacuum"; ; { yyval.str = "vacuum"; ;
break;} break;}
case 978: case 978:
#line 5236 "gram.y" #line 5237 "gram.y"
{ yyval.str = "verbose"; ; { yyval.str = "verbose"; ;
break;} break;}
case 979: case 979:
#line 5237 "gram.y" #line 5238 "gram.y"
{ yyval.str = "when"; ; { yyval.str = "when"; ;
break;} break;}
case 980: case 980:
#line 5241 "gram.y" #line 5242 "gram.y"
{ {
if (QueryIsRule) if (QueryIsRule)
yyval.str = "*CURRENT*"; yyval.str = "*CURRENT*";
...@@ -11230,7 +11230,7 @@ case 980: ...@@ -11230,7 +11230,7 @@ case 980:
; ;
break;} break;}
case 981: case 981:
#line 5248 "gram.y" #line 5249 "gram.y"
{ {
if (QueryIsRule) if (QueryIsRule)
yyval.str = "*NEW*"; yyval.str = "*NEW*";
...@@ -11436,7 +11436,7 @@ yyerrhandle: ...@@ -11436,7 +11436,7 @@ yyerrhandle:
yystate = yyn; yystate = yyn;
goto yynewstate; goto yynewstate;
} }
#line 5256 "gram.y" #line 5257 "gram.y"
static Node * static Node *
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.40 1999/03/15 16:48:34 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.41 1999/03/16 04:25:54 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -580,7 +580,15 @@ ParseFuncOrColumn(ParseState *pstate, char *funcname, List *fargs, ...@@ -580,7 +580,15 @@ ParseFuncOrColumn(ParseState *pstate, char *funcname, List *fargs,
elog(ERROR, "Only constant sequence names are acceptable for function '%s'", funcname); elog(ERROR, "Only constant sequence names are acceptable for function '%s'", funcname);
seqrel = textout((text *) DatumGetPointer(seq->constvalue)); seqrel = textout((text *) DatumGetPointer(seq->constvalue));
if (RelnameFindRelid(seqrel) == InvalidOid) /* Do we have nextval('"Aa"')? */
if (strlen(seqrel) >= 2 &&
seqrel[0] == '\"' && seqrel[strlen(seqrel)-1] == '\"')
{
/* strip off quotes, keep case */
seqrel = pstrdup(seqrel+1);
seqrel[strlen(seqrel)-1] = '\0';
}
else
{ {
pfree(seqrel); pfree(seqrel);
seqname = lower((text *) DatumGetPointer(seq->constvalue)); seqname = lower((text *) DatumGetPointer(seq->constvalue));
......
...@@ -138,7 +138,7 @@ tprintf1(const char *fmt, ... ) ...@@ -138,7 +138,7 @@ tprintf1(const char *fmt, ... )
#ifdef ELOG_TIMESTAMPS #ifdef ELOG_TIMESTAMPS
strcpy(line, tprintf_timestamp()); strcpy(line, tprintf_timestamp());
#endif #endif
vsnprintf(line+TIMESTAMP_SIZE, ELOG_MAXLEN, fmt, ap); vsnprintf(line + TIMESTAMP_SIZE, ELOG_MAXLEN, fmt, ap);
va_end(ap); va_end(ap);
#ifdef USE_SYSLOG #ifdef USE_SYSLOG
......
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment