Commit 29c20d49 authored by Bruce Momjian's avatar Bruce Momjian

Fix for missing parens with \g causing psql to get completely

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