From c8ae6afd130f41e02ee2c818066c8eac38b3cf9e Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Wed, 20 Jan 1999 22:31:07 +0000 Subject: [PATCH] Update gram.c. --- src/backend/parser/gram.c | 1074 +++++++++++++++++++------------------ 1 file changed, 538 insertions(+), 536 deletions(-) diff --git a/src/backend/parser/gram.c b/src/backend/parser/gram.c index ee8d7055cd..15b4c69050 100644 --- a/src/backend/parser/gram.c +++ b/src/backend/parser/gram.c @@ -239,7 +239,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.57 1999/01/18 06:46:27 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.58 1999/01/20 22:31:07 momjian Exp $ * * HISTORY * AUTHOR DATE MAJOR EVENT @@ -867,55 +867,55 @@ static const short yyrline[] = { 0, 2456, 2468, 2484, 2500, 2514, 2532, 2533, 2536, 2539, 2543, 2560, 2570, 2578, 2604, 2621, 2638, 2639, 2649, 2671, 2693, 2694, 2695, 2696, 2697, 2700, 2701, 2704, 2705, 2713, 2730, - 2830, 2834, 2838, 2843, 2852, 2859, 2886, 2887, 2890, 2891, - 2894, 2895, 2898, 2899, 2900, 2901, 2904, 2905, 2908, 2909, - 2912, 2920, 2921, 2922, 2923, 2924, 2925, 2935, 2936, 2939, - 2941, 2943, 2947, 2948, 2951, 2955, 2958, 2963, 2967, 2981, - 2986, 2987, 2990, 2992, 2994, 2998, 3004, 3010, 3018, 3019, - 3021, 3023, 3025, 3027, 3029, 3031, 3035, 3036, 3039, 3040, - 3041, 3044, 3045, 3048, 3063, 3070, 3079, 3080, 3083, 3090, - 3098, 3100, 3102, 3106, 3108, 3110, 3125, 3147, 3148, 3155, - 3156, 3157, 3160, 3168, 3169, 3177, 3183, 3188, 3194, 3202, - 3204, 3206, 3208, 3212, 3223, 3229, 3240, 3248, 3254, 3265, - 3273, 3287, 3314, 3333, 3353, 3354, 3355, 3356, 3359, 3360, - 3363, 3364, 3367, 3368, 3371, 3377, 3384, 3390, 3398, 3399, - 3400, 3401, 3402, 3403, 3406, 3407, 3410, 3411, 3412, 3413, - 3414, 3415, 3416, 3417, 3418, 3428, 3430, 3447, 3457, 3467, - 3480, 3493, 3499, 3505, 3509, 3515, 3516, 3517, 3518, 3519, - 3520, 3521, 3522, 3525, 3526, 3537, 3542, 3544, 3546, 3554, - 3556, 3558, 3560, 3562, 3564, 3566, 3568, 3570, 3572, 3574, - 3576, 3592, 3608, 3610, 3612, 3614, 3616, 3618, 3620, 3632, - 3639, 3646, 3661, 3676, 3698, 3713, 3735, 3742, 3749, 3759, - 3766, 3773, 3781, 3788, 3795, 3802, 3809, 3811, 3813, 3815, - 3822, 3832, 3842, 3852, 3862, 3868, 3874, 3874, 3888, 3888, - 3902, 3912, 3922, 3932, 3942, 3952, 3962, 3972, 3982, 3992, - 4002, 4012, 4022, 4032, 4042, 4052, 4062, 4072, 4082, 4092, - 4102, 4112, 4122, 4132, 4142, 4144, 4146, 4148, 4157, 4162, - 4164, 4172, 4174, 4176, 4178, 4180, 4182, 4184, 4186, 4188, - 4204, 4220, 4222, 4224, 4226, 4228, 4235, 4242, 4257, 4272, - 4294, 4309, 4331, 4338, 4345, 4352, 4360, 4367, 4374, 4381, - 4390, 4397, 4404, 4408, 4410, 4412, 4416, 4423, 4427, 4428, - 4429, 4432, 4434, 4438, 4443, 4445, 4447, 4449, 4451, 4453, - 4455, 4457, 4473, 4489, 4491, 4493, 4495, 4497, 4505, 4512, - 4519, 4526, 4534, 4541, 4548, 4555, 4564, 4568, 4572, 4574, - 4583, 4585, 4589, 4591, 4593, 4597, 4603, 4607, 4609, 4615, - 4621, 4625, 4627, 4648, 4656, 4667, 4685, 4687, 4691, 4700, - 4701, 4704, 4709, 4717, 4721, 4729, 4739, 4741, 4743, 4754, - 4756, 4758, 4773, 4780, 4787, 4806, 4808, 4813, 4820, 4827, - 4839, 4853, 4854, 4857, 4862, 4874, 4875, 4876, 4877, 4878, - 4884, 4885, 4887, 4888, 4893, 4900, 4907, 4914, 4922, 4924, - 4934, 4946, 4954, 4955, 4956, 4963, 4965, 4967, 4978, 4979, - 4980, 4981, 4982, 4983, 4984, 4985, 4986, 4987, 4988, 4989, - 4990, 4991, 4992, 4993, 4994, 4995, 4996, 4997, 4998, 4999, - 5000, 5001, 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, - 5010, 5011, 5012, 5013, 5014, 5015, 5016, 5017, 5018, 5019, - 5020, 5021, 5022, 5023, 5024, 5025, 5026, 5027, 5028, 5029, - 5030, 5031, 5032, 5033, 5034, 5035, 5036, 5037, 5038, 5039, - 5040, 5041, 5042, 5043, 5044, 5045, 5046, 5047, 5048, 5061, - 5062, 5063, 5064, 5065, 5066, 5067, 5068, 5069, 5070, 5071, - 5072, 5073, 5074, 5075, 5076, 5077, 5078, 5079, 5080, 5081, - 5082, 5083, 5084, 5085, 5086, 5087, 5088, 5089, 5090, 5091, - 5092, 5093, 5094, 5095, 5096, 5097, 5098, 5099, 5102, 5109 + 2832, 2836, 2840, 2845, 2854, 2861, 2888, 2889, 2892, 2893, + 2896, 2897, 2900, 2901, 2902, 2903, 2906, 2907, 2910, 2911, + 2914, 2922, 2923, 2924, 2925, 2926, 2927, 2937, 2938, 2941, + 2943, 2945, 2949, 2950, 2953, 2957, 2960, 2965, 2969, 2983, + 2988, 2989, 2992, 2994, 2996, 3000, 3006, 3012, 3020, 3021, + 3023, 3025, 3027, 3029, 3031, 3033, 3037, 3038, 3041, 3042, + 3043, 3046, 3047, 3050, 3065, 3072, 3081, 3082, 3085, 3092, + 3100, 3102, 3104, 3108, 3110, 3112, 3127, 3149, 3150, 3157, + 3158, 3159, 3162, 3170, 3171, 3179, 3185, 3190, 3196, 3204, + 3206, 3208, 3210, 3214, 3225, 3231, 3242, 3250, 3256, 3267, + 3275, 3289, 3316, 3335, 3355, 3356, 3357, 3358, 3361, 3362, + 3365, 3366, 3369, 3370, 3373, 3379, 3386, 3392, 3400, 3401, + 3402, 3403, 3404, 3405, 3408, 3409, 3412, 3413, 3414, 3415, + 3416, 3417, 3418, 3419, 3420, 3430, 3432, 3449, 3459, 3469, + 3482, 3495, 3501, 3507, 3511, 3517, 3518, 3519, 3520, 3521, + 3522, 3523, 3524, 3527, 3528, 3539, 3544, 3546, 3548, 3556, + 3558, 3560, 3562, 3564, 3566, 3568, 3570, 3572, 3574, 3576, + 3578, 3594, 3610, 3612, 3614, 3616, 3618, 3620, 3622, 3634, + 3641, 3648, 3663, 3678, 3700, 3715, 3737, 3744, 3751, 3761, + 3768, 3775, 3783, 3790, 3797, 3804, 3811, 3813, 3815, 3817, + 3824, 3834, 3844, 3854, 3864, 3870, 3876, 3876, 3890, 3890, + 3904, 3914, 3924, 3934, 3944, 3954, 3964, 3974, 3984, 3994, + 4004, 4014, 4024, 4034, 4044, 4054, 4064, 4074, 4084, 4094, + 4104, 4114, 4124, 4134, 4144, 4146, 4148, 4150, 4159, 4164, + 4166, 4174, 4176, 4178, 4180, 4182, 4184, 4186, 4188, 4190, + 4206, 4222, 4224, 4226, 4228, 4230, 4237, 4244, 4259, 4274, + 4296, 4311, 4333, 4340, 4347, 4354, 4362, 4369, 4376, 4383, + 4392, 4399, 4406, 4410, 4412, 4414, 4418, 4425, 4429, 4430, + 4431, 4434, 4436, 4440, 4445, 4447, 4449, 4451, 4453, 4455, + 4457, 4459, 4475, 4491, 4493, 4495, 4497, 4499, 4507, 4514, + 4521, 4528, 4536, 4543, 4550, 4557, 4566, 4570, 4574, 4576, + 4585, 4587, 4591, 4593, 4595, 4599, 4605, 4609, 4611, 4617, + 4623, 4627, 4629, 4650, 4658, 4669, 4687, 4689, 4693, 4702, + 4703, 4706, 4711, 4719, 4723, 4731, 4741, 4743, 4745, 4756, + 4758, 4760, 4775, 4782, 4789, 4808, 4810, 4815, 4822, 4829, + 4841, 4855, 4856, 4859, 4864, 4876, 4877, 4878, 4879, 4880, + 4886, 4887, 4889, 4890, 4895, 4902, 4909, 4916, 4924, 4926, + 4936, 4948, 4956, 4957, 4958, 4965, 4967, 4969, 4980, 4981, + 4982, 4983, 4984, 4985, 4986, 4987, 4988, 4989, 4990, 4991, + 4992, 4993, 4994, 4995, 4996, 4997, 4998, 4999, 5000, 5001, + 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, 5010, 5011, + 5012, 5013, 5014, 5015, 5016, 5017, 5018, 5019, 5020, 5021, + 5022, 5023, 5024, 5025, 5026, 5027, 5028, 5029, 5030, 5031, + 5032, 5033, 5034, 5035, 5036, 5037, 5038, 5039, 5040, 5041, + 5042, 5043, 5044, 5045, 5046, 5047, 5048, 5049, 5050, 5063, + 5064, 5065, 5066, 5067, 5068, 5069, 5070, 5071, 5072, 5073, + 5074, 5075, 5076, 5077, 5078, 5079, 5080, 5081, 5082, 5083, + 5084, 5085, 5086, 5087, 5088, 5089, 5090, 5091, 5092, 5093, + 5094, 5095, 5096, 5097, 5098, 5099, 5100, 5101, 5104, 5111 }; #endif @@ -7946,6 +7946,8 @@ case 470: if (n->unionClause != NULL) elog(ERROR, "SELECT FOR UPDATE is not allowed with UNION clause"); + if (n->intersectClause != NULL) + elog(ERROR, "SELECT FOR UPDATE is not allowed with INTERSECT/EXCEPT clause"); if (n->unique != NULL) elog(ERROR, "SELECT FOR UPDATE is not allowed with DISTINCT clause"); if (n->groupClause != NULL) @@ -7956,26 +7958,26 @@ case 470: ; break;} case 471: -#line 2831 "gram.y" +#line 2833 "gram.y" { yyval.node = yyvsp[-1].node; ; break;} case 472: -#line 2835 "gram.y" +#line 2837 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 473: -#line 2839 "gram.y" +#line 2841 "gram.y" { yyval.node = (Node *)makeA_Expr(AND,NULL,yyvsp[-2].node, makeA_Expr(NOT,NULL,NULL,yyvsp[0].node)); ; break;} case 474: -#line 2844 "gram.y" +#line 2846 "gram.y" { if (IsA(yyvsp[0].node, SelectStmt)) { @@ -7986,13 +7988,13 @@ case 474: ; break;} case 475: -#line 2853 "gram.y" +#line 2855 "gram.y" { yyval.node = (Node *)makeA_Expr(AND,NULL,yyvsp[-2].node,yyvsp[0].node); ; break;} case 476: -#line 2862 "gram.y" +#line 2864 "gram.y" { SelectStmt *n = makeNode(SelectStmt); n->unique = yyvsp[-6].str; @@ -8017,63 +8019,63 @@ case 476: ; break;} case 477: -#line 2886 "gram.y" +#line 2888 "gram.y" { yyval.str= yyvsp[0].str; ; break;} case 478: -#line 2887 "gram.y" +#line 2889 "gram.y" { yyval.str = NULL; ; break;} case 479: -#line 2890 "gram.y" +#line 2892 "gram.y" { yyval.boolean = TRUE; ; break;} case 480: -#line 2891 "gram.y" +#line 2893 "gram.y" { yyval.boolean = FALSE; ; break;} case 481: -#line 2894 "gram.y" +#line 2896 "gram.y" { yyval.boolean = TRUE; ; break;} case 482: -#line 2895 "gram.y" +#line 2897 "gram.y" { yyval.boolean = FALSE; ; break;} case 483: -#line 2898 "gram.y" +#line 2900 "gram.y" { yyval.str = "*"; ; break;} case 484: -#line 2899 "gram.y" +#line 2901 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 485: -#line 2900 "gram.y" +#line 2902 "gram.y" { yyval.str = NULL; ; break;} case 486: -#line 2901 "gram.y" +#line 2903 "gram.y" { yyval.str = NULL; ; break;} case 487: -#line 2904 "gram.y" +#line 2906 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 488: -#line 2905 "gram.y" +#line 2907 "gram.y" { yyval.list = NIL; ; break;} case 489: -#line 2908 "gram.y" +#line 2910 "gram.y" { yyval.list = lcons(yyvsp[0].sortgroupby, NIL); ; break;} case 490: -#line 2909 "gram.y" +#line 2911 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].sortgroupby); ; break;} case 491: -#line 2913 "gram.y" +#line 2915 "gram.y" { yyval.sortgroupby = makeNode(SortGroupBy); yyval.sortgroupby->node = yyvsp[-1].node; @@ -8081,110 +8083,110 @@ case 491: ; break;} case 492: -#line 2920 "gram.y" +#line 2922 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 493: -#line 2921 "gram.y" +#line 2923 "gram.y" { yyval.str = "<"; ; break;} case 494: -#line 2922 "gram.y" +#line 2924 "gram.y" { yyval.str = ">"; ; break;} case 495: -#line 2923 "gram.y" +#line 2925 "gram.y" { yyval.str = "<"; ; break;} case 496: -#line 2924 "gram.y" +#line 2926 "gram.y" { yyval.str = ">"; ; break;} case 497: -#line 2925 "gram.y" +#line 2927 "gram.y" { yyval.str = "<"; /*default*/ ; break;} case 498: -#line 2935 "gram.y" +#line 2937 "gram.y" { yyval.boolean = TRUE; ; break;} case 499: -#line 2936 "gram.y" +#line 2938 "gram.y" { yyval.boolean = FALSE; ; break;} case 501: -#line 2942 "gram.y" +#line 2944 "gram.y" { yyval.list = lcons(makeString(yyvsp[0].str),NIL); ; break;} case 502: -#line 2944 "gram.y" +#line 2946 "gram.y" { yyval.list = lappend(yyvsp[-2].list,makeString(yyvsp[0].str)); ; break;} case 503: -#line 2947 "gram.y" +#line 2949 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 504: -#line 2948 "gram.y" +#line 2950 "gram.y" { yyval.list = NIL; ; break;} case 505: -#line 2952 "gram.y" +#line 2954 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 506: -#line 2955 "gram.y" +#line 2957 "gram.y" { yyval.node = NULL; ; break;} case 507: -#line 2960 "gram.y" +#line 2962 "gram.y" { yyval.list = lcons(NULL, NULL); ; break;} case 508: -#line 2964 "gram.y" +#line 2966 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 509: -#line 2968 "gram.y" +#line 2970 "gram.y" { yyval.list = NULL; ; break;} case 510: -#line 2982 "gram.y" +#line 2984 "gram.y" { yyval.list = NIL; elog(ERROR,"JOIN not yet implemented"); ; break;} case 511: -#line 2986 "gram.y" +#line 2988 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 512: -#line 2987 "gram.y" +#line 2989 "gram.y" { yyval.list = NIL; ; break;} case 513: -#line 2991 "gram.y" +#line 2993 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].range); ; break;} case 514: -#line 2993 "gram.y" +#line 2995 "gram.y" { elog(ERROR,"CROSS JOIN not yet implemented"); ; break;} case 515: -#line 2995 "gram.y" +#line 2997 "gram.y" { yyval.list = lcons(yyvsp[0].range, NIL); ; break;} case 516: -#line 2999 "gram.y" +#line 3001 "gram.y" { yyval.range = makeNode(RangeVar); yyval.range->relExpr = yyvsp[-2].relexp; @@ -8192,7 +8194,7 @@ case 516: ; break;} case 517: -#line 3005 "gram.y" +#line 3007 "gram.y" { yyval.range = makeNode(RangeVar); yyval.range->relExpr = yyvsp[-1].relexp; @@ -8200,7 +8202,7 @@ case 517: ; break;} case 518: -#line 3011 "gram.y" +#line 3013 "gram.y" { yyval.range = makeNode(RangeVar); yyval.range->relExpr = yyvsp[0].relexp; @@ -8208,67 +8210,67 @@ case 518: ; break;} case 519: -#line 3018 "gram.y" +#line 3020 "gram.y" { yyval.str = NULL; ; break;} case 520: -#line 3020 "gram.y" +#line 3022 "gram.y" { elog(ERROR,"FULL OUTER JOIN not yet implemented"); ; break;} case 521: -#line 3022 "gram.y" +#line 3024 "gram.y" { elog(ERROR,"LEFT OUTER JOIN not yet implemented"); ; break;} case 522: -#line 3024 "gram.y" +#line 3026 "gram.y" { elog(ERROR,"RIGHT OUTER JOIN not yet implemented"); ; break;} case 523: -#line 3026 "gram.y" +#line 3028 "gram.y" { elog(ERROR,"OUTER JOIN not yet implemented"); ; break;} case 524: -#line 3028 "gram.y" +#line 3030 "gram.y" { elog(ERROR,"INNER JOIN not yet implemented"); ; break;} case 525: -#line 3030 "gram.y" +#line 3032 "gram.y" { elog(ERROR,"UNION JOIN not yet implemented"); ; break;} case 526: -#line 3032 "gram.y" +#line 3034 "gram.y" { elog(ERROR,"INNER JOIN not yet implemented"); ; break;} case 527: -#line 3035 "gram.y" +#line 3037 "gram.y" { yyval.str = NULL; ; break;} case 528: -#line 3036 "gram.y" +#line 3038 "gram.y" { yyval.str = NULL; /* no qualifiers */ ; break;} case 529: -#line 3039 "gram.y" +#line 3041 "gram.y" { yyval.str = NULL; ; break;} case 530: -#line 3040 "gram.y" +#line 3042 "gram.y" { yyval.str = NULL; ; break;} case 531: -#line 3041 "gram.y" +#line 3043 "gram.y" { yyval.str = NULL; /* no qualifiers */ ; break;} case 532: -#line 3044 "gram.y" +#line 3046 "gram.y" { yyval.list = lcons(yyvsp[0].joinusing, NIL); ; break;} case 533: -#line 3045 "gram.y" +#line 3047 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].joinusing); ; break;} case 534: -#line 3057 "gram.y" +#line 3059 "gram.y" { yyval.joinusing = makeNode(JoinUsing); yyval.joinusing->resno = 0; @@ -8277,7 +8279,7 @@ case 534: ; break;} case 535: -#line 3064 "gram.y" +#line 3066 "gram.y" { yyval.joinusing = makeNode(JoinUsing); yyval.joinusing->resno = 0; @@ -8286,7 +8288,7 @@ case 535: ; break;} case 536: -#line 3071 "gram.y" +#line 3073 "gram.y" { yyval.joinusing = makeNode(JoinUsing); yyval.joinusing->resno = yyvsp[0].ival; @@ -8295,15 +8297,15 @@ case 536: ; break;} case 537: -#line 3079 "gram.y" +#line 3081 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 538: -#line 3080 "gram.y" +#line 3082 "gram.y" { yyval.node = NULL; /* no qualifiers */ ; break;} case 539: -#line 3084 "gram.y" +#line 3086 "gram.y" { /* normal relations */ yyval.relexp = makeNode(RelExpr); @@ -8312,7 +8314,7 @@ case 539: ; break;} case 540: -#line 3091 "gram.y" +#line 3093 "gram.y" { /* inheritance query */ yyval.relexp = makeNode(RelExpr); @@ -8321,31 +8323,31 @@ case 540: ; break;} case 541: -#line 3099 "gram.y" +#line 3101 "gram.y" { yyval.list = lcons(makeInteger(-1), yyvsp[0].list); ; break;} case 542: -#line 3101 "gram.y" +#line 3103 "gram.y" { yyval.list = lcons(makeInteger(yyvsp[-2].ival), yyvsp[0].list); ; break;} case 543: -#line 3103 "gram.y" +#line 3105 "gram.y" { yyval.list = NIL; ; break;} case 544: -#line 3107 "gram.y" +#line 3109 "gram.y" { yyval.list = lcons(makeInteger(-1), yyvsp[0].list); ; break;} case 545: -#line 3109 "gram.y" +#line 3111 "gram.y" { yyval.list = lcons(makeInteger(yyvsp[-2].ival), yyvsp[0].list); ; break;} case 546: -#line 3111 "gram.y" +#line 3113 "gram.y" { yyval.list = NIL; ; break;} case 547: -#line 3126 "gram.y" +#line 3128 "gram.y" { yyval.typnam = yyvsp[-1].typnam; yyval.typnam->arrayBounds = yyvsp[0].list; @@ -8369,14 +8371,14 @@ case 547: ; break;} case 549: -#line 3149 "gram.y" +#line 3151 "gram.y" { yyval.typnam = yyvsp[0].typnam; yyval.typnam->setof = TRUE; ; break;} case 553: -#line 3161 "gram.y" +#line 3163 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType(yyvsp[0].str); @@ -8384,15 +8386,15 @@ case 553: ; break;} case 554: -#line 3168 "gram.y" +#line 3170 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 555: -#line 3169 "gram.y" +#line 3171 "gram.y" { yyval.str = xlateSqlType("type"); ; break;} case 556: -#line 3178 "gram.y" +#line 3180 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType(yyvsp[0].str); @@ -8400,14 +8402,14 @@ case 556: ; break;} case 557: -#line 3184 "gram.y" +#line 3186 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("float"); ; break;} case 558: -#line 3189 "gram.y" +#line 3191 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("numeric"); @@ -8415,7 +8417,7 @@ case 558: ; break;} case 559: -#line 3195 "gram.y" +#line 3197 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("numeric"); @@ -8423,23 +8425,23 @@ case 559: ; break;} case 560: -#line 3203 "gram.y" +#line 3205 "gram.y" { yyval.str = xlateSqlType("float8"); ; break;} case 561: -#line 3205 "gram.y" +#line 3207 "gram.y" { yyval.str = xlateSqlType("float8"); ; break;} case 562: -#line 3207 "gram.y" +#line 3209 "gram.y" { yyval.str = xlateSqlType("numeric"); ; break;} case 563: -#line 3209 "gram.y" +#line 3211 "gram.y" { yyval.str = xlateSqlType("numeric"); ; break;} case 564: -#line 3213 "gram.y" +#line 3215 "gram.y" { if (yyvsp[-1].ival < 1) elog(ERROR,"precision for FLOAT must be at least 1"); @@ -8452,13 +8454,13 @@ case 564: ; break;} case 565: -#line 3224 "gram.y" +#line 3226 "gram.y" { yyval.str = xlateSqlType("float8"); ; break;} case 566: -#line 3230 "gram.y" +#line 3232 "gram.y" { if (yyvsp[-3].ival < 1 || yyvsp[-3].ival > NUMERIC_MAX_PRECISION) elog(ERROR,"NUMERIC precision %d must be beween 1 and %d", @@ -8471,7 +8473,7 @@ case 566: ; break;} case 567: -#line 3241 "gram.y" +#line 3243 "gram.y" { if (yyvsp[-1].ival < 1 || yyvsp[-1].ival > NUMERIC_MAX_PRECISION) elog(ERROR,"NUMERIC precision %d must be beween 1 and %d", @@ -8481,13 +8483,13 @@ case 567: ; break;} case 568: -#line 3249 "gram.y" +#line 3251 "gram.y" { yyval.ival = ((NUMERIC_DEFAULT_PRECISION << 16) | NUMERIC_DEFAULT_SCALE) + VARHDRSZ; ; break;} case 569: -#line 3255 "gram.y" +#line 3257 "gram.y" { if (yyvsp[-3].ival < 1 || yyvsp[-3].ival > NUMERIC_MAX_PRECISION) elog(ERROR,"DECIMAL precision %d must be beween 1 and %d", @@ -8500,7 +8502,7 @@ case 569: ; break;} case 570: -#line 3266 "gram.y" +#line 3268 "gram.y" { if (yyvsp[-1].ival < 1 || yyvsp[-1].ival > NUMERIC_MAX_PRECISION) elog(ERROR,"DECIMAL precision %d must be beween 1 and %d", @@ -8510,13 +8512,13 @@ case 570: ; break;} case 571: -#line 3274 "gram.y" +#line 3276 "gram.y" { yyval.ival = ((NUMERIC_DEFAULT_PRECISION << 16) | NUMERIC_DEFAULT_SCALE) + VARHDRSZ; ; break;} case 572: -#line 3288 "gram.y" +#line 3290 "gram.y" { yyval.typnam = makeNode(TypeName); if (strcasecmp(yyvsp[-3].str, "char") == 0) @@ -8545,7 +8547,7 @@ case 572: ; break;} case 573: -#line 3315 "gram.y" +#line 3317 "gram.y" { yyval.typnam = makeNode(TypeName); /* Let's try to make all single-character types into bpchar(1) @@ -8564,7 +8566,7 @@ case 573: ; break;} case 574: -#line 3334 "gram.y" +#line 3336 "gram.y" { char *type, *c; if ((yyvsp[-1].str == NULL) || (strcasecmp(yyvsp[-1].str, "sql_text") == 0)) { @@ -8586,47 +8588,47 @@ case 574: ; break;} case 575: -#line 3353 "gram.y" +#line 3355 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ; break;} case 576: -#line 3354 "gram.y" +#line 3356 "gram.y" { yyval.str = xlateSqlType("varchar"); ; break;} case 577: -#line 3355 "gram.y" +#line 3357 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ; break;} case 578: -#line 3356 "gram.y" +#line 3358 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ; break;} case 579: -#line 3359 "gram.y" +#line 3361 "gram.y" { yyval.boolean = TRUE; ; break;} case 580: -#line 3360 "gram.y" +#line 3362 "gram.y" { yyval.boolean = FALSE; ; break;} case 581: -#line 3363 "gram.y" +#line 3365 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 582: -#line 3364 "gram.y" +#line 3366 "gram.y" { yyval.str = NULL; ; break;} case 583: -#line 3367 "gram.y" +#line 3369 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 584: -#line 3368 "gram.y" +#line 3370 "gram.y" { yyval.str = NULL; ; break;} case 585: -#line 3372 "gram.y" +#line 3374 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType(yyvsp[0].str); @@ -8634,7 +8636,7 @@ case 585: ; break;} case 586: -#line 3378 "gram.y" +#line 3380 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("timestamp"); @@ -8643,7 +8645,7 @@ case 586: ; break;} case 587: -#line 3385 "gram.y" +#line 3387 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("time"); @@ -8651,7 +8653,7 @@ case 587: ; break;} case 588: -#line 3391 "gram.y" +#line 3393 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("interval"); @@ -8659,79 +8661,79 @@ case 588: ; break;} case 589: -#line 3398 "gram.y" +#line 3400 "gram.y" { yyval.str = "year"; ; break;} case 590: -#line 3399 "gram.y" +#line 3401 "gram.y" { yyval.str = "month"; ; break;} case 591: -#line 3400 "gram.y" +#line 3402 "gram.y" { yyval.str = "day"; ; break;} case 592: -#line 3401 "gram.y" +#line 3403 "gram.y" { yyval.str = "hour"; ; break;} case 593: -#line 3402 "gram.y" +#line 3404 "gram.y" { yyval.str = "minute"; ; break;} case 594: -#line 3403 "gram.y" +#line 3405 "gram.y" { yyval.str = "second"; ; break;} case 595: -#line 3406 "gram.y" +#line 3408 "gram.y" { yyval.boolean = TRUE; ; break;} case 596: -#line 3407 "gram.y" +#line 3409 "gram.y" { yyval.boolean = FALSE; ; break;} case 597: -#line 3410 "gram.y" +#line 3412 "gram.y" { yyval.list = lcons(yyvsp[0].str, NIL); ; break;} case 598: -#line 3411 "gram.y" +#line 3413 "gram.y" { yyval.list = NIL; ; break;} case 599: -#line 3412 "gram.y" +#line 3414 "gram.y" { yyval.list = NIL; ; break;} case 600: -#line 3413 "gram.y" +#line 3415 "gram.y" { yyval.list = NIL; ; break;} case 601: -#line 3414 "gram.y" +#line 3416 "gram.y" { yyval.list = NIL; ; break;} case 602: -#line 3415 "gram.y" +#line 3417 "gram.y" { yyval.list = NIL; ; break;} case 603: -#line 3416 "gram.y" +#line 3418 "gram.y" { yyval.list = NIL; ; break;} case 604: -#line 3417 "gram.y" +#line 3419 "gram.y" { yyval.list = NIL; ; break;} case 605: -#line 3418 "gram.y" +#line 3420 "gram.y" { yyval.list = NIL; ; break;} case 606: -#line 3429 "gram.y" +#line 3431 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 607: -#line 3431 "gram.y" +#line 3433 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Null; @@ -8739,7 +8741,7 @@ case 607: ; break;} case 608: -#line 3448 "gram.y" +#line 3450 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-5].list; @@ -8751,7 +8753,7 @@ case 608: ; break;} case 609: -#line 3458 "gram.y" +#line 3460 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-6].list; @@ -8763,7 +8765,7 @@ case 609: ; break;} case 610: -#line 3468 "gram.y" +#line 3470 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-6].list; @@ -8778,7 +8780,7 @@ case 610: ; break;} case 611: -#line 3481 "gram.y" +#line 3483 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-5].list; @@ -8793,86 +8795,86 @@ case 611: ; break;} case 612: -#line 3494 "gram.y" +#line 3496 "gram.y" { yyval.node = makeRowExpr(yyvsp[-3].str, yyvsp[-5].list, yyvsp[-1].list); ; break;} case 613: -#line 3500 "gram.y" +#line 3502 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 614: -#line 3506 "gram.y" +#line 3508 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 615: -#line 3510 "gram.y" +#line 3512 "gram.y" { yyval.list = lcons(yyvsp[0].node, NIL); ; break;} case 616: -#line 3515 "gram.y" +#line 3517 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 617: -#line 3516 "gram.y" +#line 3518 "gram.y" { yyval.str = "<"; ; break;} case 618: -#line 3517 "gram.y" +#line 3519 "gram.y" { yyval.str = "="; ; break;} case 619: -#line 3518 "gram.y" +#line 3520 "gram.y" { yyval.str = ">"; ; break;} case 620: -#line 3519 "gram.y" +#line 3521 "gram.y" { yyval.str = "+"; ; break;} case 621: -#line 3520 "gram.y" +#line 3522 "gram.y" { yyval.str = "-"; ; break;} case 622: -#line 3521 "gram.y" +#line 3523 "gram.y" { yyval.str = "*"; ; break;} case 623: -#line 3522 "gram.y" +#line 3524 "gram.y" { yyval.str = "/"; ; break;} case 624: -#line 3525 "gram.y" +#line 3527 "gram.y" { yyval.ival = ANY_SUBLINK; ; break;} case 625: -#line 3526 "gram.y" +#line 3528 "gram.y" { yyval.ival = ALL_SUBLINK; ; break;} case 626: -#line 3538 "gram.y" +#line 3540 "gram.y" { yyvsp[-1].attr->indirection = yyvsp[0].list; yyval.node = (Node *)yyvsp[-1].attr; ; break;} case 627: -#line 3543 "gram.y" +#line 3545 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 628: -#line 3545 "gram.y" +#line 3547 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 629: -#line 3547 "gram.y" +#line 3549 "gram.y" { /* could be a column name or a relation_name */ Ident *n = makeNode(Ident); @@ -8882,51 +8884,51 @@ case 629: ; break;} case 630: -#line 3555 "gram.y" +#line 3557 "gram.y" { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; break;} case 631: -#line 3557 "gram.y" +#line 3559 "gram.y" { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; break;} case 632: -#line 3559 "gram.y" +#line 3561 "gram.y" { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; break;} case 633: -#line 3561 "gram.y" +#line 3563 "gram.y" { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; break;} case 634: -#line 3563 "gram.y" +#line 3565 "gram.y" { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; break;} case 635: -#line 3565 "gram.y" +#line 3567 "gram.y" { yyval.node = makeA_Expr(OP, "<", yyvsp[-2].node, yyvsp[0].node); ; break;} case 636: -#line 3567 "gram.y" +#line 3569 "gram.y" { yyval.node = makeA_Expr(OP, ">", yyvsp[-2].node, yyvsp[0].node); ; break;} case 637: -#line 3569 "gram.y" +#line 3571 "gram.y" { yyval.node = makeA_Expr(OP, "=", yyvsp[-2].node, yyvsp[0].node); ; break;} case 638: -#line 3571 "gram.y" +#line 3573 "gram.y" { yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ; break;} case 639: -#line 3573 "gram.y" +#line 3575 "gram.y" { yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ; break;} case 640: -#line 3575 "gram.y" +#line 3577 "gram.y" { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; break;} case 641: -#line 3577 "gram.y" +#line 3579 "gram.y" { yyval.node = (Node *)yyvsp[-2].node; /* AexprConst can be either A_Const or ParamNo */ @@ -8944,7 +8946,7 @@ case 641: ; break;} case 642: -#line 3593 "gram.y" +#line 3595 "gram.y" { yyval.node = (Node *)yyvsp[-3].node; /* AexprConst can be either A_Const or ParamNo */ @@ -8962,31 +8964,31 @@ case 642: ; break;} case 643: -#line 3609 "gram.y" +#line 3611 "gram.y" { yyval.node = yyvsp[-1].node; ; break;} case 644: -#line 3611 "gram.y" +#line 3613 "gram.y" { yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ; break;} case 645: -#line 3613 "gram.y" +#line 3615 "gram.y" { yyval.node = makeIndexable("~~", yyvsp[-2].node, yyvsp[0].node); ; break;} case 646: -#line 3615 "gram.y" +#line 3617 "gram.y" { yyval.node = makeA_Expr(OP, "!~~", yyvsp[-3].node, yyvsp[0].node); ; break;} case 647: -#line 3617 "gram.y" +#line 3619 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; break;} case 648: -#line 3619 "gram.y" +#line 3621 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; break;} case 649: -#line 3621 "gram.y" +#line 3623 "gram.y" { /* cheap hack for aggregate (eg. count) */ FuncCall *n = makeNode(FuncCall); @@ -9000,7 +9002,7 @@ case 649: ; break;} case 650: -#line 3633 "gram.y" +#line 3635 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-2].str; @@ -9009,7 +9011,7 @@ case 650: ; break;} case 651: -#line 3640 "gram.y" +#line 3642 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-3].str; @@ -9018,7 +9020,7 @@ case 651: ; break;} case 652: -#line 3647 "gram.y" +#line 3649 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -9035,7 +9037,7 @@ case 652: ; break;} case 653: -#line 3662 "gram.y" +#line 3664 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -9052,7 +9054,7 @@ case 653: ; break;} case 654: -#line 3677 "gram.y" +#line 3679 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -9076,7 +9078,7 @@ case 654: ; break;} case 655: -#line 3699 "gram.y" +#line 3701 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -9093,7 +9095,7 @@ case 655: ; break;} case 656: -#line 3714 "gram.y" +#line 3716 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -9117,7 +9119,7 @@ case 656: ; break;} case 657: -#line 3736 "gram.y" +#line 3738 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -9126,7 +9128,7 @@ case 657: ; break;} case 658: -#line 3743 "gram.y" +#line 3745 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -9135,7 +9137,7 @@ case 658: ; break;} case 659: -#line 3750 "gram.y" +#line 3752 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = NIL; @@ -9147,7 +9149,7 @@ case 659: ; break;} case 660: -#line 3760 "gram.y" +#line 3762 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "date_part"; @@ -9156,7 +9158,7 @@ case 660: ; break;} case 661: -#line 3767 "gram.y" +#line 3769 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "strpos"; @@ -9165,7 +9167,7 @@ case 661: ; break;} case 662: -#line 3774 "gram.y" +#line 3776 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "substr"; @@ -9174,7 +9176,7 @@ case 662: ; break;} case 663: -#line 3782 "gram.y" +#line 3784 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -9183,7 +9185,7 @@ case 663: ; break;} case 664: -#line 3789 "gram.y" +#line 3791 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "ltrim"; @@ -9192,7 +9194,7 @@ case 664: ; break;} case 665: -#line 3796 "gram.y" +#line 3798 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "rtrim"; @@ -9201,7 +9203,7 @@ case 665: ; break;} case 666: -#line 3803 "gram.y" +#line 3805 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -9210,23 +9212,23 @@ case 666: ; break;} case 667: -#line 3810 "gram.y" +#line 3812 "gram.y" { yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-1].node, NULL); ; break;} case 668: -#line 3812 "gram.y" +#line 3814 "gram.y" { yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-2].node, NULL); ; break;} case 669: -#line 3814 "gram.y" +#line 3816 "gram.y" { yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-1].node, NULL); ; break;} case 670: -#line 3816 "gram.y" +#line 3818 "gram.y" { yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-3].node, NULL); ; break;} case 671: -#line 3823 "gram.y" +#line 3825 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9238,7 +9240,7 @@ case 671: ; break;} case 672: -#line 3833 "gram.y" +#line 3835 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9250,7 +9252,7 @@ case 672: ; break;} case 673: -#line 3843 "gram.y" +#line 3845 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9262,7 +9264,7 @@ case 673: ; break;} case 674: -#line 3853 "gram.y" +#line 3855 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9274,7 +9276,7 @@ case 674: ; break;} case 675: -#line 3863 "gram.y" +#line 3865 "gram.y" { yyval.node = makeA_Expr(AND, NULL, makeA_Expr(OP, ">=", yyvsp[-4].node, yyvsp[-2].node), @@ -9282,7 +9284,7 @@ case 675: ; break;} case 676: -#line 3869 "gram.y" +#line 3871 "gram.y" { yyval.node = makeA_Expr(OR, NULL, makeA_Expr(OP, "<", yyvsp[-5].node, yyvsp[-2].node), @@ -9290,11 +9292,11 @@ case 676: ; break;} case 677: -#line 3874 "gram.y" +#line 3876 "gram.y" { saved_In_Expr = lcons(yyvsp[-1].node,saved_In_Expr); ; break;} case 678: -#line 3875 "gram.y" +#line 3877 "gram.y" { saved_In_Expr = lnext(saved_In_Expr); if (nodeTag(yyvsp[-1].node) == T_SubLink) @@ -9310,11 +9312,11 @@ case 678: ; break;} case 679: -#line 3888 "gram.y" +#line 3890 "gram.y" { saved_In_Expr = lcons(yyvsp[-2].node,saved_In_Expr); ; break;} case 680: -#line 3889 "gram.y" +#line 3891 "gram.y" { saved_In_Expr = lnext(saved_In_Expr); if (nodeTag(yyvsp[-1].node) == T_SubLink) @@ -9330,7 +9332,7 @@ case 680: ; break;} case 681: -#line 3903 "gram.y" +#line 3905 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9342,7 +9344,7 @@ case 681: ; break;} case 682: -#line 3913 "gram.y" +#line 3915 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9354,7 +9356,7 @@ case 682: ; break;} case 683: -#line 3923 "gram.y" +#line 3925 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9366,7 +9368,7 @@ case 683: ; break;} case 684: -#line 3933 "gram.y" +#line 3935 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9378,7 +9380,7 @@ case 684: ; break;} case 685: -#line 3943 "gram.y" +#line 3945 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9390,7 +9392,7 @@ case 685: ; break;} case 686: -#line 3953 "gram.y" +#line 3955 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9402,7 +9404,7 @@ case 686: ; break;} case 687: -#line 3963 "gram.y" +#line 3965 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9414,7 +9416,7 @@ case 687: ; break;} case 688: -#line 3973 "gram.y" +#line 3975 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -9426,7 +9428,7 @@ case 688: ; break;} case 689: -#line 3983 "gram.y" +#line 3985 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9438,7 +9440,7 @@ case 689: ; break;} case 690: -#line 3993 "gram.y" +#line 3995 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9450,7 +9452,7 @@ case 690: ; break;} case 691: -#line 4003 "gram.y" +#line 4005 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9462,7 +9464,7 @@ case 691: ; break;} case 692: -#line 4013 "gram.y" +#line 4015 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9474,7 +9476,7 @@ case 692: ; break;} case 693: -#line 4023 "gram.y" +#line 4025 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9486,7 +9488,7 @@ case 693: ; break;} case 694: -#line 4033 "gram.y" +#line 4035 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9498,7 +9500,7 @@ case 694: ; break;} case 695: -#line 4043 "gram.y" +#line 4045 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9510,7 +9512,7 @@ case 695: ; break;} case 696: -#line 4053 "gram.y" +#line 4055 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -9522,7 +9524,7 @@ case 696: ; break;} case 697: -#line 4063 "gram.y" +#line 4065 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9534,7 +9536,7 @@ case 697: ; break;} case 698: -#line 4073 "gram.y" +#line 4075 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9546,7 +9548,7 @@ case 698: ; break;} case 699: -#line 4083 "gram.y" +#line 4085 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9558,7 +9560,7 @@ case 699: ; break;} case 700: -#line 4093 "gram.y" +#line 4095 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9570,7 +9572,7 @@ case 700: ; break;} case 701: -#line 4103 "gram.y" +#line 4105 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9582,7 +9584,7 @@ case 701: ; break;} case 702: -#line 4113 "gram.y" +#line 4115 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9594,7 +9596,7 @@ case 702: ; break;} case 703: -#line 4123 "gram.y" +#line 4125 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9606,7 +9608,7 @@ case 703: ; break;} case 704: -#line 4133 "gram.y" +#line 4135 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -9618,34 +9620,34 @@ case 704: ; break;} case 705: -#line 4143 "gram.y" +#line 4145 "gram.y" { yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, yyvsp[0].node); ; break;} case 706: -#line 4145 "gram.y" +#line 4147 "gram.y" { yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, yyvsp[0].node); ; break;} case 707: -#line 4147 "gram.y" +#line 4149 "gram.y" { yyval.node = makeA_Expr(NOT, NULL, NULL, yyvsp[0].node); ; break;} case 708: -#line 4149 "gram.y" +#line 4151 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 709: -#line 4158 "gram.y" +#line 4160 "gram.y" { yyvsp[-1].attr->indirection = yyvsp[0].list; yyval.node = (Node *)yyvsp[-1].attr; ; break;} case 710: -#line 4163 "gram.y" +#line 4165 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 711: -#line 4165 "gram.y" +#line 4167 "gram.y" { /* could be a column name or a relation_name */ Ident *n = makeNode(Ident); @@ -9655,39 +9657,39 @@ case 711: ; break;} case 712: -#line 4173 "gram.y" +#line 4175 "gram.y" { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; break;} case 713: -#line 4175 "gram.y" +#line 4177 "gram.y" { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; break;} case 714: -#line 4177 "gram.y" +#line 4179 "gram.y" { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; break;} case 715: -#line 4179 "gram.y" +#line 4181 "gram.y" { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; break;} case 716: -#line 4181 "gram.y" +#line 4183 "gram.y" { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; break;} case 717: -#line 4183 "gram.y" +#line 4185 "gram.y" { yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ; break;} case 718: -#line 4185 "gram.y" +#line 4187 "gram.y" { yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ; break;} case 719: -#line 4187 "gram.y" +#line 4189 "gram.y" { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; break;} case 720: -#line 4189 "gram.y" +#line 4191 "gram.y" { yyval.node = (Node *)yyvsp[-2].node; /* AexprConst can be either A_Const or ParamNo */ @@ -9705,7 +9707,7 @@ case 720: ; break;} case 721: -#line 4205 "gram.y" +#line 4207 "gram.y" { yyval.node = (Node *)yyvsp[-3].node; /* AexprConst can be either A_Const or ParamNo */ @@ -9723,23 +9725,23 @@ case 721: ; break;} case 722: -#line 4221 "gram.y" +#line 4223 "gram.y" { yyval.node = yyvsp[-1].node; ; break;} case 723: -#line 4223 "gram.y" +#line 4225 "gram.y" { yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ; break;} case 724: -#line 4225 "gram.y" +#line 4227 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; break;} case 725: -#line 4227 "gram.y" +#line 4229 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; break;} case 726: -#line 4229 "gram.y" +#line 4231 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-2].str; @@ -9748,7 +9750,7 @@ case 726: ; break;} case 727: -#line 4236 "gram.y" +#line 4238 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-3].str; @@ -9757,7 +9759,7 @@ case 727: ; break;} case 728: -#line 4243 "gram.y" +#line 4245 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -9774,7 +9776,7 @@ case 728: ; break;} case 729: -#line 4258 "gram.y" +#line 4260 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -9791,7 +9793,7 @@ case 729: ; break;} case 730: -#line 4273 "gram.y" +#line 4275 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -9815,7 +9817,7 @@ case 730: ; break;} case 731: -#line 4295 "gram.y" +#line 4297 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -9832,7 +9834,7 @@ case 731: ; break;} case 732: -#line 4310 "gram.y" +#line 4312 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -9856,7 +9858,7 @@ case 732: ; break;} case 733: -#line 4332 "gram.y" +#line 4334 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -9865,7 +9867,7 @@ case 733: ; break;} case 734: -#line 4339 "gram.y" +#line 4341 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -9874,7 +9876,7 @@ case 734: ; break;} case 735: -#line 4346 "gram.y" +#line 4348 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "strpos"; @@ -9883,7 +9885,7 @@ case 735: ; break;} case 736: -#line 4353 "gram.y" +#line 4355 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "substr"; @@ -9892,7 +9894,7 @@ case 736: ; break;} case 737: -#line 4361 "gram.y" +#line 4363 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -9901,7 +9903,7 @@ case 737: ; break;} case 738: -#line 4368 "gram.y" +#line 4370 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "ltrim"; @@ -9910,7 +9912,7 @@ case 738: ; break;} case 739: -#line 4375 "gram.y" +#line 4377 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "rtrim"; @@ -9919,7 +9921,7 @@ case 739: ; break;} case 740: -#line 4382 "gram.y" +#line 4384 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -9928,7 +9930,7 @@ case 740: ; break;} case 741: -#line 4391 "gram.y" +#line 4393 "gram.y" { A_Indices *ai = makeNode(A_Indices); ai->lidx = NULL; @@ -9937,7 +9939,7 @@ case 741: ; break;} case 742: -#line 4398 "gram.y" +#line 4400 "gram.y" { A_Indices *ai = makeNode(A_Indices); ai->lidx = yyvsp[-4].node; @@ -9946,23 +9948,23 @@ case 742: ; break;} case 743: -#line 4405 "gram.y" +#line 4407 "gram.y" { yyval.list = NIL; ; break;} case 744: -#line 4409 "gram.y" +#line 4411 "gram.y" { yyval.list = lcons(yyvsp[0].node, NIL); ; break;} case 745: -#line 4411 "gram.y" +#line 4413 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 746: -#line 4413 "gram.y" +#line 4415 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 747: -#line 4417 "gram.y" +#line 4419 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9971,66 +9973,66 @@ case 747: ; break;} case 748: -#line 4424 "gram.y" +#line 4426 "gram.y" { yyval.list = NIL; ; break;} case 749: -#line 4427 "gram.y" +#line 4429 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 750: -#line 4428 "gram.y" +#line 4430 "gram.y" { yyval.str = "tz_hour"; ; break;} case 751: -#line 4429 "gram.y" +#line 4431 "gram.y" { yyval.str = "tz_minute"; ; break;} case 752: -#line 4433 "gram.y" +#line 4435 "gram.y" { yyval.list = makeList(yyvsp[0].node, yyvsp[-2].node, -1); ; break;} case 753: -#line 4435 "gram.y" +#line 4437 "gram.y" { yyval.list = NIL; ; break;} case 754: -#line 4439 "gram.y" +#line 4441 "gram.y" { yyvsp[-1].attr->indirection = yyvsp[0].list; yyval.node = (Node *)yyvsp[-1].attr; ; break;} case 755: -#line 4444 "gram.y" +#line 4446 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 756: -#line 4446 "gram.y" +#line 4448 "gram.y" { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; break;} case 757: -#line 4448 "gram.y" +#line 4450 "gram.y" { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; break;} case 758: -#line 4450 "gram.y" +#line 4452 "gram.y" { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; break;} case 759: -#line 4452 "gram.y" +#line 4454 "gram.y" { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; break;} case 760: -#line 4454 "gram.y" +#line 4456 "gram.y" { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; break;} case 761: -#line 4456 "gram.y" +#line 4458 "gram.y" { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; break;} case 762: -#line 4458 "gram.y" +#line 4460 "gram.y" { yyval.node = (Node *)yyvsp[-2].node; /* AexprConst can be either A_Const or ParamNo */ @@ -10048,7 +10050,7 @@ case 762: ; break;} case 763: -#line 4474 "gram.y" +#line 4476 "gram.y" { yyval.node = (Node *)yyvsp[-3].node; /* AexprConst can be either A_Const or ParamNo */ @@ -10066,23 +10068,23 @@ case 763: ; break;} case 764: -#line 4490 "gram.y" +#line 4492 "gram.y" { yyval.node = yyvsp[-1].node; ; break;} case 765: -#line 4492 "gram.y" +#line 4494 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, yyvsp[-2].node, yyvsp[0].node); ; break;} case 766: -#line 4494 "gram.y" +#line 4496 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; break;} case 767: -#line 4496 "gram.y" +#line 4498 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; break;} case 768: -#line 4498 "gram.y" +#line 4500 "gram.y" { /* could be a column name or a relation_name */ Ident *n = makeNode(Ident); @@ -10092,7 +10094,7 @@ case 768: ; break;} case 769: -#line 4506 "gram.y" +#line 4508 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-2].str; @@ -10101,7 +10103,7 @@ case 769: ; break;} case 770: -#line 4513 "gram.y" +#line 4515 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-3].str; @@ -10110,7 +10112,7 @@ case 770: ; break;} case 771: -#line 4520 "gram.y" +#line 4522 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "strpos"; @@ -10119,7 +10121,7 @@ case 771: ; break;} case 772: -#line 4527 "gram.y" +#line 4529 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "substr"; @@ -10128,7 +10130,7 @@ case 772: ; break;} case 773: -#line 4535 "gram.y" +#line 4537 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -10137,7 +10139,7 @@ case 773: ; break;} case 774: -#line 4542 "gram.y" +#line 4544 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "ltrim"; @@ -10146,7 +10148,7 @@ case 774: ; break;} case 775: -#line 4549 "gram.y" +#line 4551 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "rtrim"; @@ -10155,7 +10157,7 @@ case 775: ; break;} case 776: -#line 4556 "gram.y" +#line 4558 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -10164,21 +10166,21 @@ case 776: ; break;} case 777: -#line 4565 "gram.y" +#line 4567 "gram.y" { yyval.list = nconc(nconc(yyvsp[-2].list,yyvsp[-1].list),yyvsp[0].list); ; break;} case 778: -#line 4569 "gram.y" +#line 4571 "gram.y" { yyval.list = NIL; ; break;} case 779: -#line 4573 "gram.y" +#line 4575 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 780: -#line 4575 "gram.y" +#line 4577 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Integer; @@ -10187,27 +10189,27 @@ case 780: ; break;} case 781: -#line 4584 "gram.y" +#line 4586 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 782: -#line 4586 "gram.y" +#line 4588 "gram.y" { yyval.list = NIL; ; break;} case 783: -#line 4590 "gram.y" +#line 4592 "gram.y" { yyval.list = lappend(yyvsp[0].list, yyvsp[-2].node); ; break;} case 784: -#line 4592 "gram.y" +#line 4594 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 785: -#line 4594 "gram.y" +#line 4596 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 786: -#line 4598 "gram.y" +#line 4600 "gram.y" { SubLink *n = makeNode(SubLink); n->subselect = yyvsp[0].node; @@ -10215,21 +10217,21 @@ case 786: ; break;} case 787: -#line 4604 "gram.y" +#line 4606 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 788: -#line 4608 "gram.y" +#line 4610 "gram.y" { yyval.node = makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node); ; break;} case 789: -#line 4610 "gram.y" +#line 4612 "gram.y" { yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node)); ; break;} case 790: -#line 4616 "gram.y" +#line 4618 "gram.y" { SubLink *n = makeNode(SubLink); n->subselect = yyvsp[0].node; @@ -10237,21 +10239,21 @@ case 790: ; break;} case 791: -#line 4622 "gram.y" +#line 4624 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 792: -#line 4626 "gram.y" +#line 4628 "gram.y" { yyval.node = makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node); ; break;} case 793: -#line 4628 "gram.y" +#line 4630 "gram.y" { yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node)); ; break;} case 794: -#line 4649 "gram.y" +#line 4651 "gram.y" { CaseExpr *c = makeNode(CaseExpr); c->arg = yyvsp[-3].node; @@ -10261,7 +10263,7 @@ case 794: ; break;} case 795: -#line 4657 "gram.y" +#line 4659 "gram.y" { CaseExpr *c = makeNode(CaseExpr); CaseWhen *w = makeNode(CaseWhen); @@ -10274,7 +10276,7 @@ case 795: ; break;} case 796: -#line 4668 "gram.y" +#line 4670 "gram.y" { CaseExpr *c = makeNode(CaseExpr); CaseWhen *w; @@ -10292,15 +10294,15 @@ case 796: ; break;} case 797: -#line 4686 "gram.y" +#line 4688 "gram.y" { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); ; break;} case 798: -#line 4688 "gram.y" +#line 4690 "gram.y" { yyval.list = lcons(yyvsp[0].node, NIL); ; break;} case 799: -#line 4692 "gram.y" +#line 4694 "gram.y" { CaseWhen *w = makeNode(CaseWhen); w->expr = yyvsp[-2].node; @@ -10309,22 +10311,22 @@ case 799: ; break;} case 800: -#line 4700 "gram.y" +#line 4702 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 801: -#line 4701 "gram.y" +#line 4703 "gram.y" { yyval.node = NULL; ; break;} case 802: -#line 4705 "gram.y" +#line 4707 "gram.y" { yyvsp[-1].attr->indirection = yyvsp[0].list; yyval.node = (Node *)yyvsp[-1].attr; ; break;} case 803: -#line 4710 "gram.y" +#line 4712 "gram.y" { /* could be a column name or a relation_name */ Ident *n = makeNode(Ident); @@ -10334,11 +10336,11 @@ case 803: ; break;} case 804: -#line 4718 "gram.y" +#line 4720 "gram.y" { yyval.node = NULL; ; break;} case 805: -#line 4722 "gram.y" +#line 4724 "gram.y" { yyval.attr = makeNode(Attr); yyval.attr->relname = yyvsp[-2].str; @@ -10348,7 +10350,7 @@ case 805: ; break;} case 806: -#line 4730 "gram.y" +#line 4732 "gram.y" { yyval.attr = makeNode(Attr); yyval.attr->relname = NULL; @@ -10358,27 +10360,27 @@ case 806: ; break;} case 807: -#line 4740 "gram.y" +#line 4742 "gram.y" { yyval.list = lcons(makeString(yyvsp[0].str), NIL); ; break;} case 808: -#line 4742 "gram.y" +#line 4744 "gram.y" { yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); ; break;} case 809: -#line 4744 "gram.y" +#line 4746 "gram.y" { yyval.list = lappend(yyvsp[-2].list, makeString("*")); ; break;} case 810: -#line 4755 "gram.y" +#line 4757 "gram.y" { yyval.list = lappend(yyvsp[-2].list,yyvsp[0].target); ; break;} case 811: -#line 4757 "gram.y" +#line 4759 "gram.y" { yyval.list = lcons(yyvsp[0].target, NIL); ; break;} case 812: -#line 4759 "gram.y" +#line 4761 "gram.y" { ResTarget *rt = makeNode(ResTarget); Attr *att = makeNode(Attr); @@ -10393,7 +10395,7 @@ case 812: ; break;} case 813: -#line 4774 "gram.y" +#line 4776 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = yyvsp[-3].str; @@ -10402,7 +10404,7 @@ case 813: ; break;} case 814: -#line 4781 "gram.y" +#line 4783 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = NULL; @@ -10411,7 +10413,7 @@ case 814: ; break;} case 815: -#line 4788 "gram.y" +#line 4790 "gram.y" { Attr *att = makeNode(Attr); att->relname = yyvsp[-2].str; @@ -10425,15 +10427,15 @@ case 815: ; break;} case 816: -#line 4807 "gram.y" +#line 4809 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); ; break;} case 817: -#line 4809 "gram.y" +#line 4811 "gram.y" { yyval.list = lcons(yyvsp[0].target, NIL); ; break;} case 818: -#line 4814 "gram.y" +#line 4816 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = yyvsp[0].str; @@ -10442,7 +10444,7 @@ case 818: ; break;} case 819: -#line 4821 "gram.y" +#line 4823 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = NULL; @@ -10451,7 +10453,7 @@ case 819: ; break;} case 820: -#line 4828 "gram.y" +#line 4830 "gram.y" { Attr *att = makeNode(Attr); att->relname = yyvsp[-2].str; @@ -10465,7 +10467,7 @@ case 820: ; break;} case 821: -#line 4840 "gram.y" +#line 4842 "gram.y" { Attr *att = makeNode(Attr); att->relname = "*"; @@ -10479,22 +10481,22 @@ case 821: ; break;} case 822: -#line 4853 "gram.y" +#line 4855 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 823: -#line 4854 "gram.y" +#line 4856 "gram.y" { yyval.str = NULL; ; break;} case 824: -#line 4858 "gram.y" +#line 4860 "gram.y" { yyval.str = yyvsp[0].str; StrNCpy(saved_relname, yyvsp[0].str, NAMEDATALEN); ; break;} case 825: -#line 4863 "gram.y" +#line 4865 "gram.y" { /* disallow refs to variable system tables */ if (strcmp(LogRelationName, yyvsp[0].str) == 0 @@ -10506,43 +10508,43 @@ case 825: ; break;} case 826: -#line 4874 "gram.y" +#line 4876 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 827: -#line 4875 "gram.y" +#line 4877 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 828: -#line 4876 "gram.y" +#line 4878 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 829: -#line 4877 "gram.y" +#line 4879 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 830: -#line 4878 "gram.y" +#line 4880 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 831: -#line 4884 "gram.y" +#line 4886 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 832: -#line 4885 "gram.y" +#line 4887 "gram.y" { yyval.str = xlateSqlFunc(yyvsp[0].str); ; break;} case 833: -#line 4887 "gram.y" +#line 4889 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 834: -#line 4888 "gram.y" +#line 4890 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 835: -#line 4894 "gram.y" +#line 4896 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Integer; @@ -10551,7 +10553,7 @@ case 835: ; break;} case 836: -#line 4901 "gram.y" +#line 4903 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Float; @@ -10560,7 +10562,7 @@ case 836: ; break;} case 837: -#line 4908 "gram.y" +#line 4910 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -10569,7 +10571,7 @@ case 837: ; break;} case 838: -#line 4915 "gram.y" +#line 4917 "gram.y" { A_Const *n = makeNode(A_Const); n->typename = yyvsp[-1].typnam; @@ -10579,11 +10581,11 @@ case 838: ; break;} case 839: -#line 4923 "gram.y" +#line 4925 "gram.y" { yyval.node = (Node *)yyvsp[0].paramno; ; break;} case 840: -#line 4925 "gram.y" +#line 4927 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -10595,7 +10597,7 @@ case 840: ; break;} case 841: -#line 4935 "gram.y" +#line 4937 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -10607,7 +10609,7 @@ case 841: ; break;} case 842: -#line 4947 "gram.y" +#line 4949 "gram.y" { yyval.paramno = makeNode(ParamNo); yyval.paramno->number = yyvsp[-1].ival; @@ -10615,471 +10617,471 @@ case 842: ; break;} case 843: -#line 4954 "gram.y" +#line 4956 "gram.y" { yyval.ival = yyvsp[0].ival; ; break;} case 844: -#line 4955 "gram.y" +#line 4957 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 845: -#line 4956 "gram.y" +#line 4958 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 846: -#line 4964 "gram.y" +#line 4966 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].str); ; break;} case 847: -#line 4966 "gram.y" +#line 4968 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].str); ; break;} case 848: -#line 4968 "gram.y" +#line 4970 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].str); ; break;} case 849: -#line 4978 "gram.y" +#line 4980 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 850: -#line 4979 "gram.y" +#line 4981 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 851: -#line 4980 "gram.y" +#line 4982 "gram.y" { yyval.str = "absolute"; ; break;} case 852: -#line 4981 "gram.y" +#line 4983 "gram.y" { yyval.str = "action"; ; break;} case 853: -#line 4982 "gram.y" +#line 4984 "gram.y" { yyval.str = "after"; ; break;} case 854: -#line 4983 "gram.y" +#line 4985 "gram.y" { yyval.str = "aggregate"; ; break;} case 855: -#line 4984 "gram.y" +#line 4986 "gram.y" { yyval.str = "backward"; ; break;} case 856: -#line 4985 "gram.y" +#line 4987 "gram.y" { yyval.str = "before"; ; break;} case 857: -#line 4986 "gram.y" +#line 4988 "gram.y" { yyval.str = "cache"; ; break;} case 858: -#line 4987 "gram.y" +#line 4989 "gram.y" { yyval.str = "createdb"; ; break;} case 859: -#line 4988 "gram.y" +#line 4990 "gram.y" { yyval.str = "createuser"; ; break;} case 860: -#line 4989 "gram.y" +#line 4991 "gram.y" { yyval.str = "cycle"; ; break;} case 861: -#line 4990 "gram.y" +#line 4992 "gram.y" { yyval.str = "database"; ; break;} case 862: -#line 4991 "gram.y" +#line 4993 "gram.y" { yyval.str = "delimiters"; ; break;} case 863: -#line 4992 "gram.y" +#line 4994 "gram.y" { yyval.str = "double"; ; break;} case 864: -#line 4993 "gram.y" +#line 4995 "gram.y" { yyval.str = "each"; ; break;} case 865: -#line 4994 "gram.y" +#line 4996 "gram.y" { yyval.str = "encoding"; ; break;} case 866: -#line 4995 "gram.y" +#line 4997 "gram.y" { yyval.str = "forward"; ; break;} case 867: -#line 4996 "gram.y" +#line 4998 "gram.y" { yyval.str = "function"; ; break;} case 868: -#line 4997 "gram.y" +#line 4999 "gram.y" { yyval.str = "handler"; ; break;} case 869: -#line 4998 "gram.y" +#line 5000 "gram.y" { yyval.str = "increment"; ; break;} case 870: -#line 4999 "gram.y" +#line 5001 "gram.y" { yyval.str = "index"; ; break;} case 871: -#line 5000 "gram.y" +#line 5002 "gram.y" { yyval.str = "inherits"; ; break;} case 872: -#line 5001 "gram.y" +#line 5003 "gram.y" { yyval.str = "insensitive"; ; break;} case 873: -#line 5002 "gram.y" +#line 5004 "gram.y" { yyval.str = "instead"; ; break;} case 874: -#line 5003 "gram.y" +#line 5005 "gram.y" { yyval.str = "isnull"; ; break;} case 875: -#line 5004 "gram.y" +#line 5006 "gram.y" { yyval.str = "key"; ; break;} case 876: -#line 5005 "gram.y" +#line 5007 "gram.y" { yyval.str = "language"; ; break;} case 877: -#line 5006 "gram.y" +#line 5008 "gram.y" { yyval.str = "lancompiler"; ; break;} case 878: -#line 5007 "gram.y" +#line 5009 "gram.y" { yyval.str = "location"; ; break;} case 879: -#line 5008 "gram.y" +#line 5010 "gram.y" { yyval.str = "match"; ; break;} case 880: -#line 5009 "gram.y" +#line 5011 "gram.y" { yyval.str = "maxvalue"; ; break;} case 881: -#line 5010 "gram.y" +#line 5012 "gram.y" { yyval.str = "minvalue"; ; break;} case 882: -#line 5011 "gram.y" +#line 5013 "gram.y" { yyval.str = "next"; ; break;} case 883: -#line 5012 "gram.y" +#line 5014 "gram.y" { yyval.str = "nocreatedb"; ; break;} case 884: -#line 5013 "gram.y" +#line 5015 "gram.y" { yyval.str = "nocreateuser"; ; break;} case 885: -#line 5014 "gram.y" +#line 5016 "gram.y" { yyval.str = "nothing"; ; break;} case 886: -#line 5015 "gram.y" +#line 5017 "gram.y" { yyval.str = "notnull"; ; break;} case 887: -#line 5016 "gram.y" +#line 5018 "gram.y" { yyval.str = "of"; ; break;} case 888: -#line 5017 "gram.y" +#line 5019 "gram.y" { yyval.str = "oids"; ; break;} case 889: -#line 5018 "gram.y" +#line 5020 "gram.y" { yyval.str = "only"; ; break;} case 890: -#line 5019 "gram.y" +#line 5021 "gram.y" { yyval.str = "operator"; ; break;} case 891: -#line 5020 "gram.y" +#line 5022 "gram.y" { yyval.str = "option"; ; break;} case 892: -#line 5021 "gram.y" +#line 5023 "gram.y" { yyval.str = "password"; ; break;} case 893: -#line 5022 "gram.y" +#line 5024 "gram.y" { yyval.str = "prior"; ; break;} case 894: -#line 5023 "gram.y" +#line 5025 "gram.y" { yyval.str = "privileges"; ; break;} case 895: -#line 5024 "gram.y" +#line 5026 "gram.y" { yyval.str = "procedural"; ; break;} case 896: -#line 5025 "gram.y" +#line 5027 "gram.y" { yyval.str = "read"; ; break;} case 897: -#line 5026 "gram.y" +#line 5028 "gram.y" { yyval.str = "recipe"; ; break;} case 898: -#line 5027 "gram.y" +#line 5029 "gram.y" { yyval.str = "relative"; ; break;} case 899: -#line 5028 "gram.y" +#line 5030 "gram.y" { yyval.str = "rename"; ; break;} case 900: -#line 5029 "gram.y" +#line 5031 "gram.y" { yyval.str = "returns"; ; break;} case 901: -#line 5030 "gram.y" +#line 5032 "gram.y" { yyval.str = "row"; ; break;} case 902: -#line 5031 "gram.y" +#line 5033 "gram.y" { yyval.str = "rule"; ; break;} case 903: -#line 5032 "gram.y" +#line 5034 "gram.y" { yyval.str = "scroll"; ; break;} case 904: -#line 5033 "gram.y" +#line 5035 "gram.y" { yyval.str = "sequence"; ; break;} case 905: -#line 5034 "gram.y" +#line 5036 "gram.y" { yyval.str = "serial"; ; break;} case 906: -#line 5035 "gram.y" +#line 5037 "gram.y" { yyval.str = "start"; ; break;} case 907: -#line 5036 "gram.y" +#line 5038 "gram.y" { yyval.str = "statement"; ; break;} case 908: -#line 5037 "gram.y" +#line 5039 "gram.y" { yyval.str = "stdin"; ; break;} case 909: -#line 5038 "gram.y" +#line 5040 "gram.y" { yyval.str = "stdout"; ; break;} case 910: -#line 5039 "gram.y" +#line 5041 "gram.y" { yyval.str = "time"; ; break;} case 911: -#line 5040 "gram.y" +#line 5042 "gram.y" { yyval.str = "timestamp"; ; break;} case 912: -#line 5041 "gram.y" +#line 5043 "gram.y" { yyval.str = "timezone_hour"; ; break;} case 913: -#line 5042 "gram.y" +#line 5044 "gram.y" { yyval.str = "timezone_minute"; ; break;} case 914: -#line 5043 "gram.y" +#line 5045 "gram.y" { yyval.str = "trigger"; ; break;} case 915: -#line 5044 "gram.y" +#line 5046 "gram.y" { yyval.str = "trusted"; ; break;} case 916: -#line 5045 "gram.y" +#line 5047 "gram.y" { yyval.str = "type"; ; break;} case 917: -#line 5046 "gram.y" +#line 5048 "gram.y" { yyval.str = "valid"; ; break;} case 918: -#line 5047 "gram.y" +#line 5049 "gram.y" { yyval.str = "version"; ; break;} case 919: -#line 5048 "gram.y" +#line 5050 "gram.y" { yyval.str = "zone"; ; break;} case 920: -#line 5061 "gram.y" +#line 5063 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 921: -#line 5062 "gram.y" +#line 5064 "gram.y" { yyval.str = "abort"; ; break;} case 922: -#line 5063 "gram.y" +#line 5065 "gram.y" { yyval.str = "analyze"; ; break;} case 923: -#line 5064 "gram.y" +#line 5066 "gram.y" { yyval.str = "binary"; ; break;} case 924: -#line 5065 "gram.y" +#line 5067 "gram.y" { yyval.str = "case"; ; break;} case 925: -#line 5066 "gram.y" +#line 5068 "gram.y" { yyval.str = "cluster"; ; break;} case 926: -#line 5067 "gram.y" +#line 5069 "gram.y" { yyval.str = "coalesce"; ; break;} case 927: -#line 5068 "gram.y" +#line 5070 "gram.y" { yyval.str = "constraint"; ; break;} case 928: -#line 5069 "gram.y" +#line 5071 "gram.y" { yyval.str = "copy"; ; break;} case 929: -#line 5070 "gram.y" +#line 5072 "gram.y" { yyval.str = "cross"; ; break;} case 930: -#line 5071 "gram.y" +#line 5073 "gram.y" { yyval.str = "current"; ; break;} case 931: -#line 5072 "gram.y" +#line 5074 "gram.y" { yyval.str = "do"; ; break;} case 932: -#line 5073 "gram.y" +#line 5075 "gram.y" { yyval.str = "else"; ; break;} case 933: -#line 5074 "gram.y" +#line 5076 "gram.y" { yyval.str = "end"; ; break;} case 934: -#line 5075 "gram.y" +#line 5077 "gram.y" { yyval.str = "explain"; ; break;} case 935: -#line 5076 "gram.y" +#line 5078 "gram.y" { yyval.str = "extend"; ; break;} case 936: -#line 5077 "gram.y" +#line 5079 "gram.y" { yyval.str = "false"; ; break;} case 937: -#line 5078 "gram.y" +#line 5080 "gram.y" { yyval.str = "foreign"; ; break;} case 938: -#line 5079 "gram.y" +#line 5081 "gram.y" { yyval.str = "group"; ; break;} case 939: -#line 5080 "gram.y" +#line 5082 "gram.y" { yyval.str = "listen"; ; break;} case 940: -#line 5081 "gram.y" +#line 5083 "gram.y" { yyval.str = "load"; ; break;} case 941: -#line 5082 "gram.y" +#line 5084 "gram.y" { yyval.str = "lock"; ; break;} case 942: -#line 5083 "gram.y" +#line 5085 "gram.y" { yyval.str = "move"; ; break;} case 943: -#line 5084 "gram.y" +#line 5086 "gram.y" { yyval.str = "new"; ; break;} case 944: -#line 5085 "gram.y" +#line 5087 "gram.y" { yyval.str = "none"; ; break;} case 945: -#line 5086 "gram.y" +#line 5088 "gram.y" { yyval.str = "nullif"; ; break;} case 946: -#line 5087 "gram.y" +#line 5089 "gram.y" { yyval.str = "order"; ; break;} case 947: -#line 5088 "gram.y" +#line 5090 "gram.y" { yyval.str = "position"; ; break;} case 948: -#line 5089 "gram.y" +#line 5091 "gram.y" { yyval.str = "precision"; ; break;} case 949: -#line 5090 "gram.y" +#line 5092 "gram.y" { yyval.str = "reset"; ; break;} case 950: -#line 5091 "gram.y" +#line 5093 "gram.y" { yyval.str = "setof"; ; break;} case 951: -#line 5092 "gram.y" +#line 5094 "gram.y" { yyval.str = "show"; ; break;} case 952: -#line 5093 "gram.y" +#line 5095 "gram.y" { yyval.str = "table"; ; break;} case 953: -#line 5094 "gram.y" +#line 5096 "gram.y" { yyval.str = "then"; ; break;} case 954: -#line 5095 "gram.y" +#line 5097 "gram.y" { yyval.str = "transaction"; ; break;} case 955: -#line 5096 "gram.y" +#line 5098 "gram.y" { yyval.str = "true"; ; break;} case 956: -#line 5097 "gram.y" +#line 5099 "gram.y" { yyval.str = "vacuum"; ; break;} case 957: -#line 5098 "gram.y" +#line 5100 "gram.y" { yyval.str = "verbose"; ; break;} case 958: -#line 5099 "gram.y" +#line 5101 "gram.y" { yyval.str = "when"; ; break;} case 959: -#line 5103 "gram.y" +#line 5105 "gram.y" { if (QueryIsRule) yyval.str = "*CURRENT*"; @@ -11088,7 +11090,7 @@ case 959: ; break;} case 960: -#line 5110 "gram.y" +#line 5112 "gram.y" { if (QueryIsRule) yyval.str = "*NEW*"; @@ -11294,7 +11296,7 @@ yyerrhandle: yystate = yyn; goto yynewstate; } -#line 5118 "gram.y" +#line 5120 "gram.y" static Node * -- GitLab