aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1998-05-04 02:02:09 +0000
committerBruce Momjian <bruce@momjian.us>1998-05-04 02:02:09 +0000
commit29c20d498d271d44d37db945e9ae466cdec557e2 (patch)
tree2f9f78a2e78e8ffbe12266bfc7e0bec50536045c
parentdfb731c2730063c307ff39aac9b6387f52e129bb (diff)
downloadpostgresql-29c20d498d271d44d37db945e9ae466cdec557e2.tar.gz
postgresql-29c20d498d271d44d37db945e9ae466cdec557e2.zip
Fix for missing parens with \g causing psql to get completely
confused.
-rw-r--r--src/backend/parser/gram.c873
-rw-r--r--src/backend/parser/scan.c4
-rw-r--r--src/bin/psql/psql.c5
-rw-r--r--src/include/storage/s_lock.h3
-rw-r--r--src/makefiles/Makefile.bsdi2
5 files changed, 446 insertions, 441 deletions
diff --git a/src/backend/parser/gram.c b/src/backend/parser/gram.c
index dce5bf3dffe..e46c032006b 100644
--- a/src/backend/parser/gram.c
+++ b/src/backend/parser/gram.c
@@ -216,7 +216,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.8 1998/04/17 03:06:13 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.9 1998/05/04 02:01:45 momjian Exp $
*
* HISTORY
* AUTHOR DATE MAJOR EVENT
@@ -815,46 +815,46 @@ static const short yyrline[] = { 0,
2434, 2435, 2438, 2439, 2442, 2443, 2444, 2445, 2448, 2449,
2452, 2453, 2456, 2464, 2472, 2482, 2483, 2484, 2485, 2486,
2487, 2497, 2498, 2501, 2503, 2505, 2509, 2510, 2513, 2514,
- 2517, 2525, 2533, 2543, 2547, 2559, 2564, 2565, 2568, 2570,
- 2572, 2576, 2582, 2588, 2596, 2597, 2599, 2601, 2603, 2605,
- 2607, 2609, 2613, 2614, 2617, 2618, 2619, 2622, 2623, 2626,
- 2634, 2642, 2652, 2653, 2656, 2663, 2671, 2673, 2675, 2679,
- 2681, 2683, 2698, 2720, 2721, 2728, 2729, 2730, 2733, 2741,
- 2742, 2751, 2757, 2762, 2768, 2776, 2778, 2780, 2782, 2786,
- 2797, 2803, 2810, 2815, 2821, 2829, 2835, 2848, 2874, 2882,
- 2902, 2903, 2904, 2905, 2908, 2909, 2912, 2913, 2916, 2917,
- 2920, 2926, 2933, 2939, 2947, 2948, 2949, 2950, 2951, 2952,
- 2955, 2956, 2959, 2960, 2961, 2962, 2963, 2964, 2965, 2966,
- 2976, 2978, 2990, 3000, 3010, 3023, 3033, 3043, 3053, 3063,
- 3073, 3083, 3093, 3106, 3116, 3126, 3136, 3146, 3156, 3166,
- 3176, 3189, 3199, 3209, 3219, 3229, 3239, 3249, 3259, 3263,
- 3267, 3271, 3275, 3279, 3283, 3287, 3293, 3299, 3303, 3317,
- 3322, 3324, 3326, 3334, 3336, 3338, 3340, 3342, 3344, 3346,
- 3348, 3350, 3352, 3354, 3356, 3372, 3388, 3390, 3392, 3394,
- 3396, 3398, 3400, 3412, 3419, 3426, 3441, 3456, 3478, 3493,
- 3515, 3522, 3532, 3539, 3546, 3554, 3561, 3568, 3575, 3582,
- 3584, 3586, 3588, 3595, 3605, 3615, 3625, 3635, 3641, 3647,
- 3647, 3661, 3661, 3675, 3685, 3695, 3705, 3715, 3725, 3735,
- 3745, 3755, 3765, 3775, 3785, 3795, 3805, 3815, 3825, 3835,
- 3845, 3855, 3865, 3875, 3885, 3895, 3905, 3915, 3917, 3919,
- 3929, 3934, 3936, 3944, 3946, 3948, 3950, 3952, 3954, 3956,
- 3958, 3960, 3976, 3992, 3994, 3996, 3998, 4000, 4007, 4014,
- 4029, 4044, 4066, 4081, 4103, 4110, 4117, 4125, 4132, 4139,
- 4146, 4155, 4162, 4169, 4173, 4175, 4177, 4181, 4188, 4196,
- 4200, 4202, 4206, 4211, 4213, 4215, 4217, 4219, 4221, 4223,
- 4225, 4241, 4257, 4259, 4261, 4263, 4265, 4273, 4280, 4287,
- 4294, 4302, 4309, 4316, 4323, 4332, 4336, 4340, 4342, 4351,
- 4353, 4357, 4359, 4361, 4365, 4371, 4375, 4377, 4383, 4389,
- 4393, 4395, 4401, 4409, 4419, 4421, 4423, 4434, 4436, 4438,
- 4453, 4460, 4467, 4486, 4488, 4493, 4500, 4507, 4519, 4533,
- 4534, 4537, 4542, 4554, 4555, 4556, 4557, 4558, 4564, 4565,
- 4567, 4568, 4573, 4580, 4587, 4594, 4602, 4604, 4614, 4626,
- 4633, 4634, 4637, 4638, 4639, 4646, 4648, 4650, 4661, 4662,
- 4663, 4664, 4665, 4666, 4667, 4668, 4669, 4670, 4671, 4672,
- 4673, 4674, 4675, 4676, 4677, 4678, 4679, 4680, 4681, 4682,
- 4683, 4684, 4685, 4686, 4687, 4688, 4689, 4690, 4691, 4692,
- 4693, 4706, 4707, 4708, 4709, 4710, 4711, 4712, 4713, 4714,
- 4715, 4716, 4717, 4718, 4719, 4720, 4723, 4730
+ 2517, 2525, 2533, 2543, 2548, 2560, 2565, 2566, 2569, 2571,
+ 2573, 2577, 2583, 2589, 2597, 2598, 2600, 2602, 2604, 2606,
+ 2608, 2610, 2614, 2615, 2618, 2619, 2620, 2623, 2624, 2627,
+ 2635, 2643, 2653, 2654, 2657, 2664, 2672, 2674, 2676, 2680,
+ 2682, 2684, 2699, 2721, 2722, 2729, 2730, 2731, 2734, 2742,
+ 2743, 2752, 2758, 2763, 2769, 2777, 2779, 2781, 2783, 2787,
+ 2798, 2804, 2811, 2816, 2822, 2830, 2836, 2849, 2875, 2883,
+ 2903, 2904, 2905, 2906, 2909, 2910, 2913, 2914, 2917, 2918,
+ 2921, 2927, 2934, 2940, 2948, 2949, 2950, 2951, 2952, 2953,
+ 2956, 2957, 2960, 2961, 2962, 2963, 2964, 2965, 2966, 2967,
+ 2977, 2979, 2991, 3001, 3011, 3024, 3034, 3044, 3054, 3064,
+ 3074, 3084, 3094, 3107, 3117, 3127, 3137, 3147, 3157, 3167,
+ 3177, 3190, 3200, 3210, 3220, 3230, 3240, 3250, 3260, 3264,
+ 3268, 3272, 3276, 3280, 3284, 3288, 3294, 3300, 3304, 3318,
+ 3323, 3325, 3327, 3335, 3337, 3339, 3341, 3343, 3345, 3347,
+ 3349, 3351, 3353, 3355, 3357, 3373, 3389, 3391, 3393, 3395,
+ 3397, 3399, 3401, 3413, 3420, 3427, 3442, 3457, 3479, 3494,
+ 3516, 3523, 3533, 3540, 3547, 3555, 3562, 3569, 3576, 3583,
+ 3585, 3587, 3589, 3596, 3606, 3616, 3626, 3636, 3642, 3648,
+ 3648, 3662, 3662, 3676, 3686, 3696, 3706, 3716, 3726, 3736,
+ 3746, 3756, 3766, 3776, 3786, 3796, 3806, 3816, 3826, 3836,
+ 3846, 3856, 3866, 3876, 3886, 3896, 3906, 3916, 3918, 3920,
+ 3930, 3935, 3937, 3945, 3947, 3949, 3951, 3953, 3955, 3957,
+ 3959, 3961, 3977, 3993, 3995, 3997, 3999, 4001, 4008, 4015,
+ 4030, 4045, 4067, 4082, 4104, 4111, 4118, 4126, 4133, 4140,
+ 4147, 4156, 4163, 4170, 4174, 4176, 4178, 4182, 4189, 4197,
+ 4201, 4203, 4207, 4212, 4214, 4216, 4218, 4220, 4222, 4224,
+ 4226, 4242, 4258, 4260, 4262, 4264, 4266, 4274, 4281, 4288,
+ 4295, 4303, 4310, 4317, 4324, 4333, 4337, 4341, 4343, 4352,
+ 4354, 4358, 4360, 4362, 4366, 4372, 4376, 4378, 4384, 4390,
+ 4394, 4396, 4402, 4410, 4420, 4422, 4424, 4435, 4437, 4439,
+ 4454, 4461, 4468, 4487, 4489, 4494, 4501, 4508, 4520, 4534,
+ 4535, 4538, 4543, 4555, 4556, 4557, 4558, 4559, 4565, 4566,
+ 4568, 4569, 4574, 4581, 4588, 4595, 4603, 4605, 4615, 4627,
+ 4634, 4635, 4638, 4639, 4640, 4647, 4649, 4651, 4662, 4663,
+ 4664, 4665, 4666, 4667, 4668, 4669, 4670, 4671, 4672, 4673,
+ 4674, 4675, 4676, 4677, 4678, 4679, 4680, 4681, 4682, 4683,
+ 4684, 4685, 4686, 4687, 4688, 4689, 4690, 4691, 4692, 4693,
+ 4694, 4707, 4708, 4709, 4710, 4711, 4712, 4713, 4714, 4715,
+ 4716, 4717, 4718, 4719, 4720, 4721, 4724, 4731
};
#endif
@@ -3866,7 +3866,7 @@ static const short yycheck[] = { 3,
-1, -1, 172, -1, -1, -1, -1, -1, 178
};
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
-#line 3 "/usr/share/misc/bison.simple"
+#line 3 "/usr/local/bison/bison.simple"
/* Skeleton output parser for bison,
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
@@ -4059,7 +4059,7 @@ __yy_memcpy (char *to, char *from, int count)
#endif
#endif
-#line 196 "/usr/share/misc/bison.simple"
+#line 196 "/usr/local/bison/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 *.
@@ -6776,42 +6776,43 @@ case 463:
case 464:
#line 2544 "gram.y"
{
- yyval.node = yyvsp[0].node;
+ elog(ERROR,"HAVING clause not yet implemented");
+/* $$ = $2; use this line instead to enable HAVING */
;
break;}
case 465:
-#line 2547 "gram.y"
+#line 2548 "gram.y"
{ yyval.node = NULL; ;
break;}
case 466:
-#line 2560 "gram.y"
+#line 2561 "gram.y"
{
yyval.list = NIL;
elog(ERROR,"JOIN not yet implemented");
;
break;}
case 467:
-#line 2564 "gram.y"
+#line 2565 "gram.y"
{ yyval.list = yyvsp[0].list; ;
break;}
case 468:
-#line 2565 "gram.y"
+#line 2566 "gram.y"
{ yyval.list = NIL; ;
break;}
case 469:
-#line 2569 "gram.y"
+#line 2570 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].range); ;
break;}
case 470:
-#line 2571 "gram.y"
+#line 2572 "gram.y"
{ elog(ERROR,"CROSS JOIN not yet implemented"); ;
break;}
case 471:
-#line 2573 "gram.y"
+#line 2574 "gram.y"
{ yyval.list = lcons(yyvsp[0].range, NIL); ;
break;}
case 472:
-#line 2577 "gram.y"
+#line 2578 "gram.y"
{
yyval.range = makeNode(RangeVar);
yyval.range->relExpr = yyvsp[-2].relexp;
@@ -6819,7 +6820,7 @@ case 472:
;
break;}
case 473:
-#line 2583 "gram.y"
+#line 2584 "gram.y"
{
yyval.range = makeNode(RangeVar);
yyval.range->relExpr = yyvsp[-1].relexp;
@@ -6827,7 +6828,7 @@ case 473:
;
break;}
case 474:
-#line 2589 "gram.y"
+#line 2590 "gram.y"
{
yyval.range = makeNode(RangeVar);
yyval.range->relExpr = yyvsp[0].relexp;
@@ -6835,67 +6836,67 @@ case 474:
;
break;}
case 475:
-#line 2596 "gram.y"
+#line 2597 "gram.y"
{ yyval.str = NULL; ;
break;}
case 476:
-#line 2598 "gram.y"
+#line 2599 "gram.y"
{ elog(ERROR,"FULL OUTER JOIN not yet implemented"); ;
break;}
case 477:
-#line 2600 "gram.y"
+#line 2601 "gram.y"
{ elog(ERROR,"LEFT OUTER JOIN not yet implemented"); ;
break;}
case 478:
-#line 2602 "gram.y"
+#line 2603 "gram.y"
{ elog(ERROR,"RIGHT OUTER JOIN not yet implemented"); ;
break;}
case 479:
-#line 2604 "gram.y"
+#line 2605 "gram.y"
{ elog(ERROR,"OUTER JOIN not yet implemented"); ;
break;}
case 480:
-#line 2606 "gram.y"
+#line 2607 "gram.y"
{ elog(ERROR,"INNER JOIN not yet implemented"); ;
break;}
case 481:
-#line 2608 "gram.y"
+#line 2609 "gram.y"
{ elog(ERROR,"UNION JOIN not yet implemented"); ;
break;}
case 482:
-#line 2610 "gram.y"
+#line 2611 "gram.y"
{ elog(ERROR,"INNER JOIN not yet implemented"); ;
break;}
case 483:
-#line 2613 "gram.y"
+#line 2614 "gram.y"
{ yyval.str = NULL; ;
break;}
case 484:
-#line 2614 "gram.y"
+#line 2615 "gram.y"
{ yyval.str = NULL; /* no qualifiers */ ;
break;}
case 485:
-#line 2617 "gram.y"
+#line 2618 "gram.y"
{ yyval.str = NULL; ;
break;}
case 486:
-#line 2618 "gram.y"
+#line 2619 "gram.y"
{ yyval.str = NULL; ;
break;}
case 487:
-#line 2619 "gram.y"
+#line 2620 "gram.y"
{ yyval.str = NULL; /* no qualifiers */ ;
break;}
case 488:
-#line 2622 "gram.y"
+#line 2623 "gram.y"
{ yyval.list = lcons(yyvsp[0].sortgroupby, NIL); ;
break;}
case 489:
-#line 2623 "gram.y"
+#line 2624 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].sortgroupby); ;
break;}
case 490:
-#line 2627 "gram.y"
+#line 2628 "gram.y"
{
yyval.sortgroupby = makeNode(SortGroupBy);
yyval.sortgroupby->resno = 0;
@@ -6905,7 +6906,7 @@ case 490:
;
break;}
case 491:
-#line 2635 "gram.y"
+#line 2636 "gram.y"
{
yyval.sortgroupby = makeNode(SortGroupBy);
yyval.sortgroupby->resno = 0;
@@ -6915,7 +6916,7 @@ case 491:
;
break;}
case 492:
-#line 2643 "gram.y"
+#line 2644 "gram.y"
{
yyval.sortgroupby = makeNode(SortGroupBy);
yyval.sortgroupby->resno = yyvsp[0].ival;
@@ -6925,15 +6926,15 @@ case 492:
;
break;}
case 493:
-#line 2652 "gram.y"
+#line 2653 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 494:
-#line 2653 "gram.y"
+#line 2654 "gram.y"
{ yyval.node = NULL; /* no qualifiers */ ;
break;}
case 495:
-#line 2657 "gram.y"
+#line 2658 "gram.y"
{
/* normal relations */
yyval.relexp = makeNode(RelExpr);
@@ -6942,7 +6943,7 @@ case 495:
;
break;}
case 496:
-#line 2664 "gram.y"
+#line 2665 "gram.y"
{
/* inheritance query */
yyval.relexp = makeNode(RelExpr);
@@ -6951,31 +6952,31 @@ case 496:
;
break;}
case 497:
-#line 2672 "gram.y"
+#line 2673 "gram.y"
{ yyval.list = lcons(makeInteger(-1), yyvsp[0].list); ;
break;}
case 498:
-#line 2674 "gram.y"
+#line 2675 "gram.y"
{ yyval.list = lcons(makeInteger(yyvsp[-2].ival), yyvsp[0].list); ;
break;}
case 499:
-#line 2676 "gram.y"
+#line 2677 "gram.y"
{ yyval.list = NIL; ;
break;}
case 500:
-#line 2680 "gram.y"
+#line 2681 "gram.y"
{ yyval.list = lcons(makeInteger(-1), yyvsp[0].list); ;
break;}
case 501:
-#line 2682 "gram.y"
+#line 2683 "gram.y"
{ yyval.list = lcons(makeInteger(yyvsp[-2].ival), yyvsp[0].list); ;
break;}
case 502:
-#line 2684 "gram.y"
+#line 2685 "gram.y"
{ yyval.list = NIL; ;
break;}
case 503:
-#line 2699 "gram.y"
+#line 2700 "gram.y"
{
yyval.typnam = yyvsp[-1].typnam;
yyval.typnam->arrayBounds = yyvsp[0].list;
@@ -6999,14 +7000,14 @@ case 503:
;
break;}
case 505:
-#line 2722 "gram.y"
+#line 2723 "gram.y"
{
yyval.typnam = yyvsp[0].typnam;
yyval.typnam->setof = TRUE;
;
break;}
case 509:
-#line 2734 "gram.y"
+#line 2735 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType(yyvsp[0].str);
@@ -7014,15 +7015,15 @@ case 509:
;
break;}
case 510:
-#line 2741 "gram.y"
+#line 2742 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 511:
-#line 2742 "gram.y"
+#line 2743 "gram.y"
{ yyval.str = xlateSqlType("type"); ;
break;}
case 512:
-#line 2752 "gram.y"
+#line 2753 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType(yyvsp[0].str);
@@ -7030,14 +7031,14 @@ case 512:
;
break;}
case 513:
-#line 2758 "gram.y"
+#line 2759 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType("float");
;
break;}
case 514:
-#line 2763 "gram.y"
+#line 2764 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType("integer");
@@ -7045,7 +7046,7 @@ case 514:
;
break;}
case 515:
-#line 2769 "gram.y"
+#line 2770 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType("integer");
@@ -7053,23 +7054,23 @@ case 515:
;
break;}
case 516:
-#line 2777 "gram.y"
+#line 2778 "gram.y"
{ yyval.str = xlateSqlType("float8"); ;
break;}
case 517:
-#line 2779 "gram.y"
+#line 2780 "gram.y"
{ yyval.str = xlateSqlType("float8"); ;
break;}
case 518:
-#line 2781 "gram.y"
+#line 2782 "gram.y"
{ yyval.str = xlateSqlType("decimal"); ;
break;}
case 519:
-#line 2783 "gram.y"
+#line 2784 "gram.y"
{ yyval.str = xlateSqlType("numeric"); ;
break;}
case 520:
-#line 2787 "gram.y"
+#line 2788 "gram.y"
{
if (yyvsp[-1].ival < 1)
elog(ERROR,"precision for FLOAT must be at least 1");
@@ -7082,13 +7083,13 @@ case 520:
;
break;}
case 521:
-#line 2798 "gram.y"
+#line 2799 "gram.y"
{
yyval.str = xlateSqlType("float8");
;
break;}
case 522:
-#line 2804 "gram.y"
+#line 2805 "gram.y"
{
if (yyvsp[-3].ival != 9)
elog(ERROR,"NUMERIC precision %d must be 9",yyvsp[-3].ival);
@@ -7097,20 +7098,20 @@ case 522:
;
break;}
case 523:
-#line 2811 "gram.y"
+#line 2812 "gram.y"
{
if (yyvsp[-1].ival != 9)
elog(ERROR,"NUMERIC precision %d must be 9",yyvsp[-1].ival);
;
break;}
case 524:
-#line 2816 "gram.y"
+#line 2817 "gram.y"
{
yyval.str = NULL;
;
break;}
case 525:
-#line 2822 "gram.y"
+#line 2823 "gram.y"
{
if (yyvsp[-3].ival > 9)
elog(ERROR,"DECIMAL precision %d exceeds implementation limit of 9",yyvsp[-3].ival);
@@ -7120,7 +7121,7 @@ case 525:
;
break;}
case 526:
-#line 2830 "gram.y"
+#line 2831 "gram.y"
{
if (yyvsp[-1].ival > 9)
elog(ERROR,"DECIMAL precision %d exceeds implementation limit of 9",yyvsp[-1].ival);
@@ -7128,13 +7129,13 @@ case 526:
;
break;}
case 527:
-#line 2836 "gram.y"
+#line 2837 "gram.y"
{
yyval.str = NULL;
;
break;}
case 528:
-#line 2849 "gram.y"
+#line 2850 "gram.y"
{
yyval.typnam = makeNode(TypeName);
if (!strcasecmp(yyvsp[-3].str, "char"))
@@ -7162,7 +7163,7 @@ case 528:
;
break;}
case 529:
-#line 2875 "gram.y"
+#line 2876 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType(yyvsp[0].str);
@@ -7170,7 +7171,7 @@ case 529:
;
break;}
case 530:
-#line 2883 "gram.y"
+#line 2884 "gram.y"
{
char *type, *c;
if ((yyvsp[-1].str == NULL) || (strcasecmp(yyvsp[-1].str, "sql_text") == 0)) {
@@ -7192,47 +7193,47 @@ case 530:
;
break;}
case 531:
-#line 2902 "gram.y"
+#line 2903 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ;
break;}
case 532:
-#line 2903 "gram.y"
+#line 2904 "gram.y"
{ yyval.str = xlateSqlType("varchar"); ;
break;}
case 533:
-#line 2904 "gram.y"
+#line 2905 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ;
break;}
case 534:
-#line 2905 "gram.y"
+#line 2906 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ;
break;}
case 535:
-#line 2908 "gram.y"
+#line 2909 "gram.y"
{ yyval.boolean = TRUE; ;
break;}
case 536:
-#line 2909 "gram.y"
+#line 2910 "gram.y"
{ yyval.boolean = FALSE; ;
break;}
case 537:
-#line 2912 "gram.y"
+#line 2913 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 538:
-#line 2913 "gram.y"
+#line 2914 "gram.y"
{ yyval.str = NULL; ;
break;}
case 539:
-#line 2916 "gram.y"
+#line 2917 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 540:
-#line 2917 "gram.y"
+#line 2918 "gram.y"
{ yyval.str = NULL; ;
break;}
case 541:
-#line 2921 "gram.y"
+#line 2922 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType(yyvsp[0].str);
@@ -7240,7 +7241,7 @@ case 541:
;
break;}
case 542:
-#line 2927 "gram.y"
+#line 2928 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType("timestamp");
@@ -7249,7 +7250,7 @@ case 542:
;
break;}
case 543:
-#line 2934 "gram.y"
+#line 2935 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType("time");
@@ -7257,7 +7258,7 @@ case 543:
;
break;}
case 544:
-#line 2940 "gram.y"
+#line 2941 "gram.y"
{
yyval.typnam = makeNode(TypeName);
yyval.typnam->name = xlateSqlType("interval");
@@ -7265,75 +7266,75 @@ case 544:
;
break;}
case 545:
-#line 2947 "gram.y"
+#line 2948 "gram.y"
{ yyval.str = "year"; ;
break;}
case 546:
-#line 2948 "gram.y"
+#line 2949 "gram.y"
{ yyval.str = "month"; ;
break;}
case 547:
-#line 2949 "gram.y"
+#line 2950 "gram.y"
{ yyval.str = "day"; ;
break;}
case 548:
-#line 2950 "gram.y"
+#line 2951 "gram.y"
{ yyval.str = "hour"; ;
break;}
case 549:
-#line 2951 "gram.y"
+#line 2952 "gram.y"
{ yyval.str = "minute"; ;
break;}
case 550:
-#line 2952 "gram.y"
+#line 2953 "gram.y"
{ yyval.str = "second"; ;
break;}
case 551:
-#line 2955 "gram.y"
+#line 2956 "gram.y"
{ yyval.boolean = TRUE; ;
break;}
case 552:
-#line 2956 "gram.y"
+#line 2957 "gram.y"
{ yyval.boolean = FALSE; ;
break;}
case 553:
-#line 2959 "gram.y"
+#line 2960 "gram.y"
{ yyval.list = lcons(yyvsp[0].str, NIL); ;
break;}
case 554:
-#line 2960 "gram.y"
+#line 2961 "gram.y"
{ yyval.list = NIL; ;
break;}
case 555:
-#line 2961 "gram.y"
+#line 2962 "gram.y"
{ yyval.list = NIL; ;
break;}
case 556:
-#line 2962 "gram.y"
+#line 2963 "gram.y"
{ yyval.list = NIL; ;
break;}
case 557:
-#line 2963 "gram.y"
+#line 2964 "gram.y"
{ yyval.list = NIL; ;
break;}
case 558:
-#line 2964 "gram.y"
+#line 2965 "gram.y"
{ yyval.list = NIL; ;
break;}
case 559:
-#line 2965 "gram.y"
+#line 2966 "gram.y"
{ yyval.list = NIL; ;
break;}
case 560:
-#line 2966 "gram.y"
+#line 2967 "gram.y"
{ yyval.list = NIL; ;
break;}
case 561:
-#line 2977 "gram.y"
+#line 2978 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 562:
-#line 2979 "gram.y"
+#line 2980 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_Null;
@@ -7341,7 +7342,7 @@ case 562:
;
break;}
case 563:
-#line 2991 "gram.y"
+#line 2992 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7353,7 +7354,7 @@ case 563:
;
break;}
case 564:
-#line 3001 "gram.y"
+#line 3002 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7365,7 +7366,7 @@ case 564:
;
break;}
case 565:
-#line 3011 "gram.y"
+#line 3012 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7380,7 +7381,7 @@ case 565:
;
break;}
case 566:
-#line 3024 "gram.y"
+#line 3025 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7392,7 +7393,7 @@ case 566:
;
break;}
case 567:
-#line 3034 "gram.y"
+#line 3035 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7404,7 +7405,7 @@ case 567:
;
break;}
case 568:
-#line 3044 "gram.y"
+#line 3045 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7416,7 +7417,7 @@ case 568:
;
break;}
case 569:
-#line 3054 "gram.y"
+#line 3055 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7428,7 +7429,7 @@ case 569:
;
break;}
case 570:
-#line 3064 "gram.y"
+#line 3065 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7440,7 +7441,7 @@ case 570:
;
break;}
case 571:
-#line 3074 "gram.y"
+#line 3075 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7452,7 +7453,7 @@ case 571:
;
break;}
case 572:
-#line 3084 "gram.y"
+#line 3085 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-5].list;
@@ -7464,7 +7465,7 @@ case 572:
;
break;}
case 573:
-#line 3094 "gram.y"
+#line 3095 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7479,7 +7480,7 @@ case 573:
;
break;}
case 574:
-#line 3107 "gram.y"
+#line 3108 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7491,7 +7492,7 @@ case 574:
;
break;}
case 575:
-#line 3117 "gram.y"
+#line 3118 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7503,7 +7504,7 @@ case 575:
;
break;}
case 576:
-#line 3127 "gram.y"
+#line 3128 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7515,7 +7516,7 @@ case 576:
;
break;}
case 577:
-#line 3137 "gram.y"
+#line 3138 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7527,7 +7528,7 @@ case 577:
;
break;}
case 578:
-#line 3147 "gram.y"
+#line 3148 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7539,7 +7540,7 @@ case 578:
;
break;}
case 579:
-#line 3157 "gram.y"
+#line 3158 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7551,7 +7552,7 @@ case 579:
;
break;}
case 580:
-#line 3167 "gram.y"
+#line 3168 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7563,7 +7564,7 @@ case 580:
;
break;}
case 581:
-#line 3177 "gram.y"
+#line 3178 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7578,7 +7579,7 @@ case 581:
;
break;}
case 582:
-#line 3190 "gram.y"
+#line 3191 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7590,7 +7591,7 @@ case 582:
;
break;}
case 583:
-#line 3200 "gram.y"
+#line 3201 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7602,7 +7603,7 @@ case 583:
;
break;}
case 584:
-#line 3210 "gram.y"
+#line 3211 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7614,7 +7615,7 @@ case 584:
;
break;}
case 585:
-#line 3220 "gram.y"
+#line 3221 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7626,7 +7627,7 @@ case 585:
;
break;}
case 586:
-#line 3230 "gram.y"
+#line 3231 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7638,7 +7639,7 @@ case 586:
;
break;}
case 587:
-#line 3240 "gram.y"
+#line 3241 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7650,7 +7651,7 @@ case 587:
;
break;}
case 588:
-#line 3250 "gram.y"
+#line 3251 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = yyvsp[-6].list;
@@ -7662,88 +7663,88 @@ case 588:
;
break;}
case 589:
-#line 3260 "gram.y"
+#line 3261 "gram.y"
{
yyval.node = makeRowExpr(yyvsp[-3].str, yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 590:
-#line 3264 "gram.y"
+#line 3265 "gram.y"
{
yyval.node = makeRowExpr("+", yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 591:
-#line 3268 "gram.y"
+#line 3269 "gram.y"
{
yyval.node = makeRowExpr("-", yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 592:
-#line 3272 "gram.y"
+#line 3273 "gram.y"
{
yyval.node = makeRowExpr("/", yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 593:
-#line 3276 "gram.y"
+#line 3277 "gram.y"
{
yyval.node = makeRowExpr("*", yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 594:
-#line 3280 "gram.y"
+#line 3281 "gram.y"
{
yyval.node = makeRowExpr("<", yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 595:
-#line 3284 "gram.y"
+#line 3285 "gram.y"
{
yyval.node = makeRowExpr(">", yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 596:
-#line 3288 "gram.y"
+#line 3289 "gram.y"
{
yyval.node = makeRowExpr("=", yyvsp[-5].list, yyvsp[-1].list);
;
break;}
case 597:
-#line 3294 "gram.y"
+#line 3295 "gram.y"
{
yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node);
;
break;}
case 598:
-#line 3300 "gram.y"
+#line 3301 "gram.y"
{
yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node);
;
break;}
case 599:
-#line 3304 "gram.y"
+#line 3305 "gram.y"
{
yyval.list = lcons(yyvsp[0].node, NIL);
;
break;}
case 600:
-#line 3318 "gram.y"
+#line 3319 "gram.y"
{
yyvsp[-1].attr->indirection = yyvsp[0].list;
yyval.node = (Node *)yyvsp[-1].attr;
;
break;}
case 601:
-#line 3323 "gram.y"
+#line 3324 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 602:
-#line 3325 "gram.y"
+#line 3326 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 603:
-#line 3327 "gram.y"
+#line 3328 "gram.y"
{
/* could be a column name or a relation_name */
Ident *n = makeNode(Ident);
@@ -7753,51 +7754,51 @@ case 603:
;
break;}
case 604:
-#line 3335 "gram.y"
+#line 3336 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ;
break;}
case 605:
-#line 3337 "gram.y"
+#line 3338 "gram.y"
{ yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 606:
-#line 3339 "gram.y"
+#line 3340 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 607:
-#line 3341 "gram.y"
+#line 3342 "gram.y"
{ yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 608:
-#line 3343 "gram.y"
+#line 3344 "gram.y"
{ yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 609:
-#line 3345 "gram.y"
+#line 3346 "gram.y"
{ yyval.node = makeA_Expr(OP, "<", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 610:
-#line 3347 "gram.y"
+#line 3348 "gram.y"
{ yyval.node = makeA_Expr(OP, ">", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 611:
-#line 3349 "gram.y"
+#line 3350 "gram.y"
{ yyval.node = makeA_Expr(OP, "=", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 612:
-#line 3351 "gram.y"
+#line 3352 "gram.y"
{ yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ;
break;}
case 613:
-#line 3353 "gram.y"
+#line 3354 "gram.y"
{ yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ;
break;}
case 614:
-#line 3355 "gram.y"
+#line 3356 "gram.y"
{ yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ;
break;}
case 615:
-#line 3357 "gram.y"
+#line 3358 "gram.y"
{
yyval.node = (Node *)yyvsp[-2].node;
/* AexprConst can be either A_Const or ParamNo */
@@ -7815,7 +7816,7 @@ case 615:
;
break;}
case 616:
-#line 3373 "gram.y"
+#line 3374 "gram.y"
{
yyval.node = (Node *)yyvsp[-3].node;
/* AexprConst can be either A_Const or ParamNo */
@@ -7833,31 +7834,31 @@ case 616:
;
break;}
case 617:
-#line 3389 "gram.y"
+#line 3390 "gram.y"
{ yyval.node = yyvsp[-1].node; ;
break;}
case 618:
-#line 3391 "gram.y"
+#line 3392 "gram.y"
{ yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ;
break;}
case 619:
-#line 3393 "gram.y"
+#line 3394 "gram.y"
{ yyval.node = makeIndexable("~~", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 620:
-#line 3395 "gram.y"
+#line 3396 "gram.y"
{ yyval.node = makeA_Expr(OP, "!~~", yyvsp[-3].node, yyvsp[0].node); ;
break;}
case 621:
-#line 3397 "gram.y"
+#line 3398 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ;
break;}
case 622:
-#line 3399 "gram.y"
+#line 3400 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ;
break;}
case 623:
-#line 3401 "gram.y"
+#line 3402 "gram.y"
{
/* cheap hack for aggregate (eg. count) */
FuncCall *n = makeNode(FuncCall);
@@ -7871,7 +7872,7 @@ case 623:
;
break;}
case 624:
-#line 3413 "gram.y"
+#line 3414 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-2].str;
@@ -7880,7 +7881,7 @@ case 624:
;
break;}
case 625:
-#line 3420 "gram.y"
+#line 3421 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-3].str;
@@ -7889,7 +7890,7 @@ case 625:
;
break;}
case 626:
-#line 3427 "gram.y"
+#line 3428 "gram.y"
{
A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName);
@@ -7906,7 +7907,7 @@ case 626:
;
break;}
case 627:
-#line 3442 "gram.y"
+#line 3443 "gram.y"
{
A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName);
@@ -7923,7 +7924,7 @@ case 627:
;
break;}
case 628:
-#line 3457 "gram.y"
+#line 3458 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const);
@@ -7947,7 +7948,7 @@ case 628:
;
break;}
case 629:
-#line 3479 "gram.y"
+#line 3480 "gram.y"
{
A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName);
@@ -7964,7 +7965,7 @@ case 629:
;
break;}
case 630:
-#line 3494 "gram.y"
+#line 3495 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const);
@@ -7988,7 +7989,7 @@ case 630:
;
break;}
case 631:
-#line 3516 "gram.y"
+#line 3517 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "getpgusername";
@@ -7997,7 +7998,7 @@ case 631:
;
break;}
case 632:
-#line 3523 "gram.y"
+#line 3524 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = NIL;
@@ -8009,7 +8010,7 @@ case 632:
;
break;}
case 633:
-#line 3533 "gram.y"
+#line 3534 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "date_part";
@@ -8018,7 +8019,7 @@ case 633:
;
break;}
case 634:
-#line 3540 "gram.y"
+#line 3541 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "strpos";
@@ -8027,7 +8028,7 @@ case 634:
;
break;}
case 635:
-#line 3547 "gram.y"
+#line 3548 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "substr";
@@ -8036,7 +8037,7 @@ case 635:
;
break;}
case 636:
-#line 3555 "gram.y"
+#line 3556 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim";
@@ -8045,7 +8046,7 @@ case 636:
;
break;}
case 637:
-#line 3562 "gram.y"
+#line 3563 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "ltrim";
@@ -8054,7 +8055,7 @@ case 637:
;
break;}
case 638:
-#line 3569 "gram.y"
+#line 3570 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "rtrim";
@@ -8063,7 +8064,7 @@ case 638:
;
break;}
case 639:
-#line 3576 "gram.y"
+#line 3577 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim";
@@ -8072,23 +8073,23 @@ case 639:
;
break;}
case 640:
-#line 3583 "gram.y"
+#line 3584 "gram.y"
{ yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-1].node, NULL); ;
break;}
case 641:
-#line 3585 "gram.y"
+#line 3586 "gram.y"
{ yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-2].node, NULL); ;
break;}
case 642:
-#line 3587 "gram.y"
+#line 3588 "gram.y"
{ yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-1].node, NULL); ;
break;}
case 643:
-#line 3589 "gram.y"
+#line 3590 "gram.y"
{ yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-3].node, NULL); ;
break;}
case 644:
-#line 3596 "gram.y"
+#line 3597 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -8100,7 +8101,7 @@ case 644:
;
break;}
case 645:
-#line 3606 "gram.y"
+#line 3607 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -8112,7 +8113,7 @@ case 645:
;
break;}
case 646:
-#line 3616 "gram.y"
+#line 3617 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -8124,7 +8125,7 @@ case 646:
;
break;}
case 647:
-#line 3626 "gram.y"
+#line 3627 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -8136,7 +8137,7 @@ case 647:
;
break;}
case 648:
-#line 3636 "gram.y"
+#line 3637 "gram.y"
{
yyval.node = makeA_Expr(AND, NULL,
makeA_Expr(OP, ">=", yyvsp[-4].node, yyvsp[-2].node),
@@ -8144,7 +8145,7 @@ case 648:
;
break;}
case 649:
-#line 3642 "gram.y"
+#line 3643 "gram.y"
{
yyval.node = makeA_Expr(OR, NULL,
makeA_Expr(OP, "<", yyvsp[-5].node, yyvsp[-2].node),
@@ -8152,11 +8153,11 @@ case 649:
;
break;}
case 650:
-#line 3647 "gram.y"
+#line 3648 "gram.y"
{ saved_In_Expr = lcons(yyvsp[-1].node,saved_In_Expr); ;
break;}
case 651:
-#line 3648 "gram.y"
+#line 3649 "gram.y"
{
saved_In_Expr = lnext(saved_In_Expr);
if (nodeTag(yyvsp[-1].node) == T_SubLink)
@@ -8172,11 +8173,11 @@ case 651:
;
break;}
case 652:
-#line 3661 "gram.y"
+#line 3662 "gram.y"
{ saved_In_Expr = lcons(yyvsp[-2].node,saved_In_Expr); ;
break;}
case 653:
-#line 3662 "gram.y"
+#line 3663 "gram.y"
{
saved_In_Expr = lnext(saved_In_Expr);
if (nodeTag(yyvsp[-1].node) == T_SubLink)
@@ -8192,7 +8193,7 @@ case 653:
;
break;}
case 654:
-#line 3676 "gram.y"
+#line 3677 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8204,7 +8205,7 @@ case 654:
;
break;}
case 655:
-#line 3686 "gram.y"
+#line 3687 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8216,7 +8217,7 @@ case 655:
;
break;}
case 656:
-#line 3696 "gram.y"
+#line 3697 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8228,7 +8229,7 @@ case 656:
;
break;}
case 657:
-#line 3706 "gram.y"
+#line 3707 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8240,7 +8241,7 @@ case 657:
;
break;}
case 658:
-#line 3716 "gram.y"
+#line 3717 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8252,7 +8253,7 @@ case 658:
;
break;}
case 659:
-#line 3726 "gram.y"
+#line 3727 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8264,7 +8265,7 @@ case 659:
;
break;}
case 660:
-#line 3736 "gram.y"
+#line 3737 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8276,7 +8277,7 @@ case 660:
;
break;}
case 661:
-#line 3746 "gram.y"
+#line 3747 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-4].node, NULL);
@@ -8288,7 +8289,7 @@ case 661:
;
break;}
case 662:
-#line 3756 "gram.y"
+#line 3757 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8300,7 +8301,7 @@ case 662:
;
break;}
case 663:
-#line 3766 "gram.y"
+#line 3767 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8312,7 +8313,7 @@ case 663:
;
break;}
case 664:
-#line 3776 "gram.y"
+#line 3777 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8324,7 +8325,7 @@ case 664:
;
break;}
case 665:
-#line 3786 "gram.y"
+#line 3787 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8336,7 +8337,7 @@ case 665:
;
break;}
case 666:
-#line 3796 "gram.y"
+#line 3797 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8348,7 +8349,7 @@ case 666:
;
break;}
case 667:
-#line 3806 "gram.y"
+#line 3807 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8360,7 +8361,7 @@ case 667:
;
break;}
case 668:
-#line 3816 "gram.y"
+#line 3817 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8372,7 +8373,7 @@ case 668:
;
break;}
case 669:
-#line 3826 "gram.y"
+#line 3827 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node,NIL);
@@ -8384,7 +8385,7 @@ case 669:
;
break;}
case 670:
-#line 3836 "gram.y"
+#line 3837 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8396,7 +8397,7 @@ case 670:
;
break;}
case 671:
-#line 3846 "gram.y"
+#line 3847 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8408,7 +8409,7 @@ case 671:
;
break;}
case 672:
-#line 3856 "gram.y"
+#line 3857 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8420,7 +8421,7 @@ case 672:
;
break;}
case 673:
-#line 3866 "gram.y"
+#line 3867 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8432,7 +8433,7 @@ case 673:
;
break;}
case 674:
-#line 3876 "gram.y"
+#line 3877 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8444,7 +8445,7 @@ case 674:
;
break;}
case 675:
-#line 3886 "gram.y"
+#line 3887 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8456,7 +8457,7 @@ case 675:
;
break;}
case 676:
-#line 3896 "gram.y"
+#line 3897 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8468,7 +8469,7 @@ case 676:
;
break;}
case 677:
-#line 3906 "gram.y"
+#line 3907 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->lefthand = lcons(yyvsp[-5].node, NULL);
@@ -8480,30 +8481,30 @@ case 677:
;
break;}
case 678:
-#line 3916 "gram.y"
+#line 3917 "gram.y"
{ yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 679:
-#line 3918 "gram.y"
+#line 3919 "gram.y"
{ yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 680:
-#line 3920 "gram.y"
+#line 3921 "gram.y"
{ yyval.node = makeA_Expr(NOT, NULL, NULL, yyvsp[0].node); ;
break;}
case 681:
-#line 3930 "gram.y"
+#line 3931 "gram.y"
{
yyvsp[-1].attr->indirection = yyvsp[0].list;
yyval.node = (Node *)yyvsp[-1].attr;
;
break;}
case 682:
-#line 3935 "gram.y"
+#line 3936 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 683:
-#line 3937 "gram.y"
+#line 3938 "gram.y"
{
/* could be a column name or a relation_name */
Ident *n = makeNode(Ident);
@@ -8513,39 +8514,39 @@ case 683:
;
break;}
case 684:
-#line 3945 "gram.y"
+#line 3946 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ;
break;}
case 685:
-#line 3947 "gram.y"
+#line 3948 "gram.y"
{ yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 686:
-#line 3949 "gram.y"
+#line 3950 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 687:
-#line 3951 "gram.y"
+#line 3952 "gram.y"
{ yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 688:
-#line 3953 "gram.y"
+#line 3954 "gram.y"
{ yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 689:
-#line 3955 "gram.y"
+#line 3956 "gram.y"
{ yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ;
break;}
case 690:
-#line 3957 "gram.y"
+#line 3958 "gram.y"
{ yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ;
break;}
case 691:
-#line 3959 "gram.y"
+#line 3960 "gram.y"
{ yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ;
break;}
case 692:
-#line 3961 "gram.y"
+#line 3962 "gram.y"
{
yyval.node = (Node *)yyvsp[-2].node;
/* AexprConst can be either A_Const or ParamNo */
@@ -8563,7 +8564,7 @@ case 692:
;
break;}
case 693:
-#line 3977 "gram.y"
+#line 3978 "gram.y"
{
yyval.node = (Node *)yyvsp[-3].node;
/* AexprConst can be either A_Const or ParamNo */
@@ -8581,23 +8582,23 @@ case 693:
;
break;}
case 694:
-#line 3993 "gram.y"
+#line 3994 "gram.y"
{ yyval.node = yyvsp[-1].node; ;
break;}
case 695:
-#line 3995 "gram.y"
+#line 3996 "gram.y"
{ yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ;
break;}
case 696:
-#line 3997 "gram.y"
+#line 3998 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ;
break;}
case 697:
-#line 3999 "gram.y"
+#line 4000 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ;
break;}
case 698:
-#line 4001 "gram.y"
+#line 4002 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-2].str;
@@ -8606,7 +8607,7 @@ case 698:
;
break;}
case 699:
-#line 4008 "gram.y"
+#line 4009 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-3].str;
@@ -8615,7 +8616,7 @@ case 699:
;
break;}
case 700:
-#line 4015 "gram.y"
+#line 4016 "gram.y"
{
A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName);
@@ -8632,7 +8633,7 @@ case 700:
;
break;}
case 701:
-#line 4030 "gram.y"
+#line 4031 "gram.y"
{
A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName);
@@ -8649,7 +8650,7 @@ case 701:
;
break;}
case 702:
-#line 4045 "gram.y"
+#line 4046 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const);
@@ -8673,7 +8674,7 @@ case 702:
;
break;}
case 703:
-#line 4067 "gram.y"
+#line 4068 "gram.y"
{
A_Const *n = makeNode(A_Const);
TypeName *t = makeNode(TypeName);
@@ -8690,7 +8691,7 @@ case 703:
;
break;}
case 704:
-#line 4082 "gram.y"
+#line 4083 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
A_Const *s = makeNode(A_Const);
@@ -8714,7 +8715,7 @@ case 704:
;
break;}
case 705:
-#line 4104 "gram.y"
+#line 4105 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "getpgusername";
@@ -8723,7 +8724,7 @@ case 705:
;
break;}
case 706:
-#line 4111 "gram.y"
+#line 4112 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "strpos";
@@ -8732,7 +8733,7 @@ case 706:
;
break;}
case 707:
-#line 4118 "gram.y"
+#line 4119 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "substr";
@@ -8741,7 +8742,7 @@ case 707:
;
break;}
case 708:
-#line 4126 "gram.y"
+#line 4127 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim";
@@ -8750,7 +8751,7 @@ case 708:
;
break;}
case 709:
-#line 4133 "gram.y"
+#line 4134 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "ltrim";
@@ -8759,7 +8760,7 @@ case 709:
;
break;}
case 710:
-#line 4140 "gram.y"
+#line 4141 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "rtrim";
@@ -8768,7 +8769,7 @@ case 710:
;
break;}
case 711:
-#line 4147 "gram.y"
+#line 4148 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim";
@@ -8777,7 +8778,7 @@ case 711:
;
break;}
case 712:
-#line 4156 "gram.y"
+#line 4157 "gram.y"
{
A_Indices *ai = makeNode(A_Indices);
ai->lidx = NULL;
@@ -8786,7 +8787,7 @@ case 712:
;
break;}
case 713:
-#line 4163 "gram.y"
+#line 4164 "gram.y"
{
A_Indices *ai = makeNode(A_Indices);
ai->lidx = yyvsp[-4].node;
@@ -8795,23 +8796,23 @@ case 713:
;
break;}
case 714:
-#line 4170 "gram.y"
+#line 4171 "gram.y"
{ yyval.list = NIL; ;
break;}
case 715:
-#line 4174 "gram.y"
+#line 4175 "gram.y"
{ yyval.list = lcons(yyvsp[0].node, NIL); ;
break;}
case 716:
-#line 4176 "gram.y"
+#line 4177 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ;
break;}
case 717:
-#line 4178 "gram.y"
+#line 4179 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ;
break;}
case 718:
-#line 4182 "gram.y"
+#line 4183 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -8820,58 +8821,58 @@ case 718:
;
break;}
case 719:
-#line 4189 "gram.y"
+#line 4190 "gram.y"
{ yyval.list = NIL; ;
break;}
case 720:
-#line 4197 "gram.y"
+#line 4198 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 721:
-#line 4201 "gram.y"
+#line 4202 "gram.y"
{ yyval.list = makeList(yyvsp[0].node, yyvsp[-2].node, -1); ;
break;}
case 722:
-#line 4203 "gram.y"
+#line 4204 "gram.y"
{ yyval.list = NIL; ;
break;}
case 723:
-#line 4207 "gram.y"
+#line 4208 "gram.y"
{
yyvsp[-1].attr->indirection = yyvsp[0].list;
yyval.node = (Node *)yyvsp[-1].attr;
;
break;}
case 724:
-#line 4212 "gram.y"
+#line 4213 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 725:
-#line 4214 "gram.y"
+#line 4215 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ;
break;}
case 726:
-#line 4216 "gram.y"
+#line 4217 "gram.y"
{ yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 727:
-#line 4218 "gram.y"
+#line 4219 "gram.y"
{ yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 728:
-#line 4220 "gram.y"
+#line 4221 "gram.y"
{ yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 729:
-#line 4222 "gram.y"
+#line 4223 "gram.y"
{ yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 730:
-#line 4224 "gram.y"
+#line 4225 "gram.y"
{ yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ;
break;}
case 731:
-#line 4226 "gram.y"
+#line 4227 "gram.y"
{
yyval.node = (Node *)yyvsp[-2].node;
/* AexprConst can be either A_Const or ParamNo */
@@ -8889,7 +8890,7 @@ case 731:
;
break;}
case 732:
-#line 4242 "gram.y"
+#line 4243 "gram.y"
{
yyval.node = (Node *)yyvsp[-3].node;
/* AexprConst can be either A_Const or ParamNo */
@@ -8907,23 +8908,23 @@ case 732:
;
break;}
case 733:
-#line 4258 "gram.y"
+#line 4259 "gram.y"
{ yyval.node = yyvsp[-1].node; ;
break;}
case 734:
-#line 4260 "gram.y"
+#line 4261 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, yyvsp[-2].node, yyvsp[0].node); ;
break;}
case 735:
-#line 4262 "gram.y"
+#line 4263 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ;
break;}
case 736:
-#line 4264 "gram.y"
+#line 4265 "gram.y"
{ yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ;
break;}
case 737:
-#line 4266 "gram.y"
+#line 4267 "gram.y"
{
/* could be a column name or a relation_name */
Ident *n = makeNode(Ident);
@@ -8933,7 +8934,7 @@ case 737:
;
break;}
case 738:
-#line 4274 "gram.y"
+#line 4275 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-2].str;
@@ -8942,7 +8943,7 @@ case 738:
;
break;}
case 739:
-#line 4281 "gram.y"
+#line 4282 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = yyvsp[-3].str;
@@ -8951,7 +8952,7 @@ case 739:
;
break;}
case 740:
-#line 4288 "gram.y"
+#line 4289 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "strpos";
@@ -8960,7 +8961,7 @@ case 740:
;
break;}
case 741:
-#line 4295 "gram.y"
+#line 4296 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "substr";
@@ -8969,7 +8970,7 @@ case 741:
;
break;}
case 742:
-#line 4303 "gram.y"
+#line 4304 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim";
@@ -8978,7 +8979,7 @@ case 742:
;
break;}
case 743:
-#line 4310 "gram.y"
+#line 4311 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "ltrim";
@@ -8987,7 +8988,7 @@ case 743:
;
break;}
case 744:
-#line 4317 "gram.y"
+#line 4318 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "rtrim";
@@ -8996,7 +8997,7 @@ case 744:
;
break;}
case 745:
-#line 4324 "gram.y"
+#line 4325 "gram.y"
{
FuncCall *n = makeNode(FuncCall);
n->funcname = "btrim";
@@ -9005,21 +9006,21 @@ case 745:
;
break;}
case 746:
-#line 4333 "gram.y"
+#line 4334 "gram.y"
{
yyval.list = nconc(nconc(yyvsp[-2].list,yyvsp[-1].list),yyvsp[0].list);
;
break;}
case 747:
-#line 4337 "gram.y"
+#line 4338 "gram.y"
{ yyval.list = NIL; ;
break;}
case 748:
-#line 4341 "gram.y"
+#line 4342 "gram.y"
{ yyval.list = yyvsp[0].list; ;
break;}
case 749:
-#line 4343 "gram.y"
+#line 4344 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_Integer;
@@ -9028,27 +9029,27 @@ case 749:
;
break;}
case 750:
-#line 4352 "gram.y"
+#line 4353 "gram.y"
{ yyval.list = yyvsp[0].list; ;
break;}
case 751:
-#line 4354 "gram.y"
+#line 4355 "gram.y"
{ yyval.list = NIL; ;
break;}
case 752:
-#line 4358 "gram.y"
+#line 4359 "gram.y"
{ yyval.list = lappend(yyvsp[0].list, yyvsp[-2].node); ;
break;}
case 753:
-#line 4360 "gram.y"
+#line 4361 "gram.y"
{ yyval.list = yyvsp[0].list; ;
break;}
case 754:
-#line 4362 "gram.y"
+#line 4363 "gram.y"
{ yyval.list = yyvsp[0].list; ;
break;}
case 755:
-#line 4366 "gram.y"
+#line 4367 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->subselect = yyvsp[0].node;
@@ -9056,21 +9057,21 @@ case 755:
;
break;}
case 756:
-#line 4372 "gram.y"
+#line 4373 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 757:
-#line 4376 "gram.y"
+#line 4377 "gram.y"
{ yyval.node = makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node); ;
break;}
case 758:
-#line 4378 "gram.y"
+#line 4379 "gram.y"
{ yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node,
makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node));
;
break;}
case 759:
-#line 4384 "gram.y"
+#line 4385 "gram.y"
{
SubLink *n = makeNode(SubLink);
n->subselect = yyvsp[0].node;
@@ -9078,21 +9079,21 @@ case 759:
;
break;}
case 760:
-#line 4390 "gram.y"
+#line 4391 "gram.y"
{ yyval.node = yyvsp[0].node; ;
break;}
case 761:
-#line 4394 "gram.y"
+#line 4395 "gram.y"
{ yyval.node = makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node); ;
break;}
case 762:
-#line 4396 "gram.y"
+#line 4397 "gram.y"
{ yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node,
makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node));
;
break;}
case 763:
-#line 4402 "gram.y"
+#line 4403 "gram.y"
{
yyval.attr = makeNode(Attr);
yyval.attr->relname = yyvsp[-2].str;
@@ -9102,7 +9103,7 @@ case 763:
;
break;}
case 764:
-#line 4410 "gram.y"
+#line 4411 "gram.y"
{
yyval.attr = makeNode(Attr);
yyval.attr->relname = NULL;
@@ -9112,27 +9113,27 @@ case 764:
;
break;}
case 765:
-#line 4420 "gram.y"
+#line 4421 "gram.y"
{ yyval.list = lcons(makeString(yyvsp[0].str), NIL); ;
break;}
case 766:
-#line 4422 "gram.y"
+#line 4423 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); ;
break;}
case 767:
-#line 4424 "gram.y"
+#line 4425 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, makeString("*")); ;
break;}
case 768:
-#line 4435 "gram.y"
+#line 4436 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list,yyvsp[0].target); ;
break;}
case 769:
-#line 4437 "gram.y"
+#line 4438 "gram.y"
{ yyval.list = lcons(yyvsp[0].target, NIL); ;
break;}
case 770:
-#line 4439 "gram.y"
+#line 4440 "gram.y"
{
ResTarget *rt = makeNode(ResTarget);
Attr *att = makeNode(Attr);
@@ -9147,7 +9148,7 @@ case 770:
;
break;}
case 771:
-#line 4454 "gram.y"
+#line 4455 "gram.y"
{
yyval.target = makeNode(ResTarget);
yyval.target->name = yyvsp[-3].str;
@@ -9156,7 +9157,7 @@ case 771:
;
break;}
case 772:
-#line 4461 "gram.y"
+#line 4462 "gram.y"
{
yyval.target = makeNode(ResTarget);
yyval.target->name = NULL;
@@ -9165,7 +9166,7 @@ case 772:
;
break;}
case 773:
-#line 4468 "gram.y"
+#line 4469 "gram.y"
{
Attr *att = makeNode(Attr);
att->relname = yyvsp[-2].str;
@@ -9179,15 +9180,15 @@ case 773:
;
break;}
case 774:
-#line 4487 "gram.y"
+#line 4488 "gram.y"
{ yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); ;
break;}
case 775:
-#line 4489 "gram.y"
+#line 4490 "gram.y"
{ yyval.list = lcons(yyvsp[0].target, NIL); ;
break;}
case 776:
-#line 4494 "gram.y"
+#line 4495 "gram.y"
{
yyval.target = makeNode(ResTarget);
yyval.target->name = yyvsp[0].str;
@@ -9196,7 +9197,7 @@ case 776:
;
break;}
case 777:
-#line 4501 "gram.y"
+#line 4502 "gram.y"
{
yyval.target = makeNode(ResTarget);
yyval.target->name = NULL;
@@ -9205,7 +9206,7 @@ case 777:
;
break;}
case 778:
-#line 4508 "gram.y"
+#line 4509 "gram.y"
{
Attr *att = makeNode(Attr);
att->relname = yyvsp[-2].str;
@@ -9219,7 +9220,7 @@ case 778:
;
break;}
case 779:
-#line 4520 "gram.y"
+#line 4521 "gram.y"
{
Attr *att = makeNode(Attr);
att->relname = "*";
@@ -9233,22 +9234,22 @@ case 779:
;
break;}
case 780:
-#line 4533 "gram.y"
+#line 4534 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 781:
-#line 4534 "gram.y"
+#line 4535 "gram.y"
{ yyval.str = NULL; ;
break;}
case 782:
-#line 4538 "gram.y"
+#line 4539 "gram.y"
{
yyval.str = yyvsp[0].str;
StrNCpy(saved_relname, yyvsp[0].str, NAMEDATALEN);
;
break;}
case 783:
-#line 4543 "gram.y"
+#line 4544 "gram.y"
{
/* disallow refs to variable system tables */
if (strcmp(LogRelationName, yyvsp[0].str) == 0
@@ -9260,43 +9261,43 @@ case 783:
;
break;}
case 784:
-#line 4554 "gram.y"
+#line 4555 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 785:
-#line 4555 "gram.y"
+#line 4556 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 786:
-#line 4556 "gram.y"
+#line 4557 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 787:
-#line 4557 "gram.y"
+#line 4558 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 788:
-#line 4558 "gram.y"
+#line 4559 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 789:
-#line 4564 "gram.y"
+#line 4565 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 790:
-#line 4565 "gram.y"
+#line 4566 "gram.y"
{ yyval.str = xlateSqlFunc(yyvsp[0].str); ;
break;}
case 791:
-#line 4567 "gram.y"
+#line 4568 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 792:
-#line 4568 "gram.y"
+#line 4569 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 793:
-#line 4574 "gram.y"
+#line 4575 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_Integer;
@@ -9305,7 +9306,7 @@ case 793:
;
break;}
case 794:
-#line 4581 "gram.y"
+#line 4582 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_Float;
@@ -9314,7 +9315,7 @@ case 794:
;
break;}
case 795:
-#line 4588 "gram.y"
+#line 4589 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -9323,7 +9324,7 @@ case 795:
;
break;}
case 796:
-#line 4595 "gram.y"
+#line 4596 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->typename = yyvsp[-1].typnam;
@@ -9333,11 +9334,11 @@ case 796:
;
break;}
case 797:
-#line 4603 "gram.y"
+#line 4604 "gram.y"
{ yyval.node = (Node *)yyvsp[0].paramno; ;
break;}
case 798:
-#line 4605 "gram.y"
+#line 4606 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -9349,7 +9350,7 @@ case 798:
;
break;}
case 799:
-#line 4615 "gram.y"
+#line 4616 "gram.y"
{
A_Const *n = makeNode(A_Const);
n->val.type = T_String;
@@ -9361,238 +9362,238 @@ case 799:
;
break;}
case 800:
-#line 4627 "gram.y"
+#line 4628 "gram.y"
{
yyval.paramno = makeNode(ParamNo);
yyval.paramno->number = yyvsp[0].ival;
;
break;}
case 801:
-#line 4633 "gram.y"
+#line 4634 "gram.y"
{ yyval.value = makeInteger(yyvsp[0].ival); ;
break;}
case 802:
-#line 4634 "gram.y"
+#line 4635 "gram.y"
{ yyval.value = makeFloat(yyvsp[0].dval); ;
break;}
case 803:
-#line 4637 "gram.y"
+#line 4638 "gram.y"
{ yyval.ival = yyvsp[0].ival; ;
break;}
case 804:
-#line 4638 "gram.y"
+#line 4639 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 805:
-#line 4639 "gram.y"
+#line 4640 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 806:
-#line 4647 "gram.y"
+#line 4648 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].str); ;
break;}
case 807:
-#line 4649 "gram.y"
+#line 4650 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].str); ;
break;}
case 808:
-#line 4651 "gram.y"
+#line 4652 "gram.y"
{ yyval.str = xlateSqlType(yyvsp[0].str); ;
break;}
case 809:
-#line 4661 "gram.y"
+#line 4662 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 810:
-#line 4662 "gram.y"
+#line 4663 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 811:
-#line 4663 "gram.y"
+#line 4664 "gram.y"
{ yyval.str = "action"; ;
break;}
case 812:
-#line 4664 "gram.y"
+#line 4665 "gram.y"
{ yyval.str = "cache"; ;
break;}
case 813:
-#line 4665 "gram.y"
+#line 4666 "gram.y"
{ yyval.str = "cycle"; ;
break;}
case 814:
-#line 4666 "gram.y"
+#line 4667 "gram.y"
{ yyval.str = "database"; ;
break;}
case 815:
-#line 4667 "gram.y"
+#line 4668 "gram.y"
{ yyval.str = "delimiters"; ;
break;}
case 816:
-#line 4668 "gram.y"
+#line 4669 "gram.y"
{ yyval.str = "double"; ;
break;}
case 817:
-#line 4669 "gram.y"
+#line 4670 "gram.y"
{ yyval.str = "each"; ;
break;}
case 818:
-#line 4670 "gram.y"
+#line 4671 "gram.y"
{ yyval.str = "function"; ;
break;}
case 819:
-#line 4671 "gram.y"
+#line 4672 "gram.y"
{ yyval.str = "increment"; ;
break;}
case 820:
-#line 4672 "gram.y"
+#line 4673 "gram.y"
{ yyval.str = "index"; ;
break;}
case 821:
-#line 4673 "gram.y"
+#line 4674 "gram.y"
{ yyval.str = "key"; ;
break;}
case 822:
-#line 4674 "gram.y"
+#line 4675 "gram.y"
{ yyval.str = "language"; ;
break;}
case 823:
-#line 4675 "gram.y"
+#line 4676 "gram.y"
{ yyval.str = "location"; ;
break;}
case 824:
-#line 4676 "gram.y"
+#line 4677 "gram.y"
{ yyval.str = "match"; ;
break;}
case 825:
-#line 4677 "gram.y"
+#line 4678 "gram.y"
{ yyval.str = "maxvalue"; ;
break;}
case 826:
-#line 4678 "gram.y"
+#line 4679 "gram.y"
{ yyval.str = "minvalue"; ;
break;}
case 827:
-#line 4679 "gram.y"
+#line 4680 "gram.y"
{ yyval.str = "operator"; ;
break;}
case 828:
-#line 4680 "gram.y"
+#line 4681 "gram.y"
{ yyval.str = "option"; ;
break;}
case 829:
-#line 4681 "gram.y"
+#line 4682 "gram.y"
{ yyval.str = "password"; ;
break;}
case 830:
-#line 4682 "gram.y"
+#line 4683 "gram.y"
{ yyval.str = "privileges"; ;
break;}
case 831:
-#line 4683 "gram.y"
+#line 4684 "gram.y"
{ yyval.str = "recipe"; ;
break;}
case 832:
-#line 4684 "gram.y"
+#line 4685 "gram.y"
{ yyval.str = "row"; ;
break;}
case 833:
-#line 4685 "gram.y"
+#line 4686 "gram.y"
{ yyval.str = "start"; ;
break;}
case 834:
-#line 4686 "gram.y"
+#line 4687 "gram.y"
{ yyval.str = "statement"; ;
break;}
case 835:
-#line 4687 "gram.y"
+#line 4688 "gram.y"
{ yyval.str = "time"; ;
break;}
case 836:
-#line 4688 "gram.y"
+#line 4689 "gram.y"
{ yyval.str = "trigger"; ;
break;}
case 837:
-#line 4689 "gram.y"
+#line 4690 "gram.y"
{ yyval.str = "type"; ;
break;}
case 838:
-#line 4690 "gram.y"
+#line 4691 "gram.y"
{ yyval.str = "user"; ;
break;}
case 839:
-#line 4691 "gram.y"
+#line 4692 "gram.y"
{ yyval.str = "valid"; ;
break;}
case 840:
-#line 4692 "gram.y"
+#line 4693 "gram.y"
{ yyval.str = "version"; ;
break;}
case 841:
-#line 4693 "gram.y"
+#line 4694 "gram.y"
{ yyval.str = "zone"; ;
break;}
case 842:
-#line 4706 "gram.y"
+#line 4707 "gram.y"
{ yyval.str = yyvsp[0].str; ;
break;}
case 843:
-#line 4707 "gram.y"
+#line 4708 "gram.y"
{ yyval.str = "archive"; ;
break;}
case 844:
-#line 4708 "gram.y"
+#line 4709 "gram.y"
{ yyval.str = "cluster"; ;
break;}
case 845:
-#line 4709 "gram.y"
+#line 4710 "gram.y"
{ yyval.str = "constraint"; ;
break;}
case 846:
-#line 4710 "gram.y"
+#line 4711 "gram.y"
{ yyval.str = "cross"; ;
break;}
case 847:
-#line 4711 "gram.y"
+#line 4712 "gram.y"
{ yyval.str = "foreign"; ;
break;}
case 848:
-#line 4712 "gram.y"
+#line 4713 "gram.y"
{ yyval.str = "group"; ;
break;}
case 849:
-#line 4713 "gram.y"
+#line 4714 "gram.y"
{ yyval.str = "load"; ;
break;}
case 850:
-#line 4714 "gram.y"
+#line 4715 "gram.y"
{ yyval.str = "order"; ;
break;}
case 851:
-#line 4715 "gram.y"
+#line 4716 "gram.y"
{ yyval.str = "position"; ;
break;}
case 852:
-#line 4716 "gram.y"
+#line 4717 "gram.y"
{ yyval.str = "precision"; ;
break;}
case 853:
-#line 4717 "gram.y"
+#line 4718 "gram.y"
{ yyval.str = "table"; ;
break;}
case 854:
-#line 4718 "gram.y"
+#line 4719 "gram.y"
{ yyval.str = "transaction"; ;
break;}
case 855:
-#line 4719 "gram.y"
+#line 4720 "gram.y"
{ yyval.str = "true"; ;
break;}
case 856:
-#line 4720 "gram.y"
+#line 4721 "gram.y"
{ yyval.str = "false"; ;
break;}
case 857:
-#line 4724 "gram.y"
+#line 4725 "gram.y"
{
if (QueryIsRule)
yyval.str = "*CURRENT*";
@@ -9601,7 +9602,7 @@ case 857:
;
break;}
case 858:
-#line 4731 "gram.y"
+#line 4732 "gram.y"
{
if (QueryIsRule)
yyval.str = "*NEW*";
@@ -9611,7 +9612,7 @@ case 858:
break;}
}
/* the action file gets copied in in place of this dollarsign */
-#line 498 "/usr/share/misc/bison.simple"
+#line 498 "/usr/local/bison/bison.simple"
yyvsp -= yylen;
yyssp -= yylen;
@@ -9807,7 +9808,7 @@ yyerrhandle:
yystate = yyn;
goto yynewstate;
}
-#line 4739 "gram.y"
+#line 4740 "gram.y"
static Node *
diff --git a/src/backend/parser/scan.c b/src/backend/parser/scan.c
index be8872ff524..1b5839ffbd1 100644
--- a/src/backend/parser/scan.c
+++ b/src/backend/parser/scan.c
@@ -1,7 +1,7 @@
/* A lexical scanner generated by flex */
/* Scanner skeleton version:
- * $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.18 1998/04/17 03:06:26 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.19 1998/05/04 02:01:56 momjian Exp $
*/
#define FLEX_SCANNER
@@ -547,7 +547,7 @@ char *yytext;
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.18 1998/04/17 03:06:26 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.19 1998/05/04 02:01:56 momjian Exp $
*
*-------------------------------------------------------------------------
*/
diff --git a/src/bin/psql/psql.c b/src/bin/psql/psql.c
index cb6d6f993ce..ad2b93e93dd 100644
--- a/src/bin/psql/psql.c
+++ b/src/bin/psql/psql.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.138 1998/04/05 21:29:36 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.139 1998/05/04 02:02:01 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -2420,6 +2420,9 @@ MainLoop(PsqlSettings *pset, char *query, FILE *source)
{
SendQuery(&success, pset, query, false, false, 0);
successResult &= success;
+ xcomment = NULL;
+ in_quote = false;
+ paren_level = 0;
querySent = true;
}
} /* while */
diff --git a/src/include/storage/s_lock.h b/src/include/storage/s_lock.h
index 34303903033..af319e72200 100644
--- a/src/include/storage/s_lock.h
+++ b/src/include/storage/s_lock.h
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.30 1998/04/29 12:40:56 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.31 1998/05/04 02:02:06 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -87,6 +87,7 @@
/***************************************************************************
* All non Linux
*/
+#endif
#if defined (nextstep)
/*
diff --git a/src/makefiles/Makefile.bsdi b/src/makefiles/Makefile.bsdi
index 8ddfb6644ae..886c4cd6c5d 100644
--- a/src/makefiles/Makefile.bsdi
+++ b/src/makefiles/Makefile.bsdi
@@ -1 +1 @@
-CC=gcc2 -O2 -m486 -pipe
+CC=gcc2 -O2 -m486 -pipe -g -Wall -g -Wall