diff --git a/src/backend/optimizer/plan/subselect.c b/src/backend/optimizer/plan/subselect.c index c980144a0c1da8952752b3069e07b97ac22e4b5e..d01cb72383d1e213f2a18039e202143536d1c647 100644 --- a/src/backend/optimizer/plan/subselect.c +++ b/src/backend/optimizer/plan/subselect.c @@ -76,7 +76,7 @@ _replace_var(Var *var) lnext(vpe) = NULL; } - for (i = 1;; i++) + for (i = ObjectIdAttributeNumber;; i++) { if (i == var->varattno) break; diff --git a/src/backend/parser/gram.c b/src/backend/parser/gram.c index d18687dc73f4ff21a8af702feb9ae1f711dd17ce..ebbdfc6140211f17fe85de797e5f5b0ebd7e6ce3 100644 --- a/src/backend/parser/gram.c +++ b/src/backend/parser/gram.c @@ -219,7 +219,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.28 1998/08/23 22:25:47 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/parser/Attic/gram.c,v 2.29 1998/08/24 04:09:39 momjian Exp $ * * HISTORY * AUTHOR DATE MAJOR EVENT @@ -799,53 +799,53 @@ static const short yyrline[] = { 0, 1896, 1909, 1921, 1922, 1925, 1926, 1939, 1941, 1955, 1956, 1957, 1958, 1961, 1963, 1967, 1969, 1971, 1975, 1983, 1994, 1995, 1996, 1997, 2000, 2001, 2013, 2021, 2043, 2049, 2055, - 2061, 2067, 2075, 2076, 2077, 2088, 2109, 2125, 2148, 2160, - 2161, 2164, 2165, 2168, 2169, 2170, 2173, 2174, 2175, 2185, - 2201, 2218, 2227, 2240, 2241, 2244, 2245, 2248, 2249, 2252, - 2254, 2266, 2287, 2288, 2289, 2290, 2291, 2292, 2303, 2311, - 2322, 2338, 2339, 2342, 2345, 2349, 2366, 2381, 2406, 2427, - 2468, 2487, 2504, 2510, 2514, 2520, 2524, 2540, 2541, 2544, - 2545, 2548, 2549, 2552, 2553, 2554, 2555, 2558, 2559, 2562, - 2563, 2566, 2574, 2575, 2576, 2577, 2578, 2579, 2589, 2590, - 2593, 2595, 2597, 2601, 2602, 2605, 2609, 2621, 2626, 2627, - 2630, 2632, 2634, 2638, 2644, 2650, 2658, 2659, 2661, 2663, - 2665, 2667, 2669, 2671, 2675, 2676, 2679, 2680, 2681, 2684, - 2685, 2688, 2703, 2710, 2719, 2720, 2723, 2730, 2738, 2740, - 2742, 2746, 2748, 2750, 2765, 2787, 2788, 2795, 2796, 2797, - 2800, 2808, 2809, 2818, 2824, 2829, 2835, 2843, 2845, 2847, - 2849, 2853, 2864, 2870, 2877, 2882, 2888, 2896, 2902, 2915, - 2942, 2961, 2981, 2982, 2983, 2984, 2987, 2988, 2991, 2992, - 2995, 2996, 2999, 3005, 3012, 3018, 3026, 3027, 3028, 3029, - 3030, 3031, 3034, 3035, 3038, 3039, 3040, 3041, 3042, 3043, - 3044, 3045, 3046, 3056, 3058, 3075, 3085, 3095, 3108, 3121, - 3127, 3133, 3137, 3143, 3144, 3145, 3146, 3147, 3148, 3149, - 3150, 3153, 3154, 3165, 3170, 3172, 3174, 3182, 3184, 3186, - 3188, 3190, 3192, 3194, 3196, 3198, 3200, 3202, 3204, 3220, - 3236, 3238, 3240, 3242, 3244, 3246, 3248, 3260, 3267, 3274, - 3289, 3304, 3326, 3341, 3363, 3370, 3377, 3387, 3394, 3401, - 3409, 3416, 3423, 3430, 3437, 3439, 3441, 3443, 3450, 3460, - 3470, 3480, 3490, 3496, 3502, 3502, 3516, 3516, 3530, 3540, - 3550, 3560, 3570, 3580, 3590, 3600, 3610, 3620, 3630, 3640, - 3650, 3660, 3670, 3680, 3690, 3700, 3710, 3720, 3730, 3740, - 3750, 3760, 3770, 3772, 3774, 3784, 3789, 3791, 3799, 3801, - 3803, 3805, 3807, 3809, 3811, 3813, 3815, 3831, 3847, 3849, - 3851, 3853, 3855, 3862, 3869, 3884, 3899, 3921, 3936, 3958, - 3965, 3972, 3979, 3987, 3994, 4001, 4008, 4017, 4024, 4031, - 4035, 4037, 4039, 4043, 4050, 4054, 4055, 4056, 4059, 4061, - 4065, 4070, 4072, 4074, 4076, 4078, 4080, 4082, 4084, 4100, - 4116, 4118, 4120, 4122, 4124, 4132, 4139, 4146, 4153, 4161, - 4168, 4175, 4182, 4191, 4195, 4199, 4201, 4210, 4212, 4216, - 4218, 4220, 4224, 4230, 4234, 4236, 4242, 4248, 4252, 4254, - 4260, 4268, 4278, 4280, 4282, 4293, 4295, 4297, 4312, 4319, - 4326, 4345, 4347, 4352, 4359, 4366, 4378, 4392, 4393, 4396, - 4401, 4413, 4414, 4415, 4416, 4417, 4423, 4424, 4426, 4427, - 4432, 4439, 4446, 4453, 4461, 4463, 4473, 4485, 4492, 4493, - 4494, 4501, 4503, 4505, 4516, 4517, 4518, 4519, 4520, 4521, - 4522, 4523, 4524, 4525, 4526, 4527, 4528, 4529, 4530, 4531, - 4532, 4533, 4534, 4535, 4536, 4537, 4538, 4539, 4540, 4541, - 4542, 4543, 4544, 4545, 4546, 4547, 4548, 4549, 4550, 4563, - 4564, 4565, 4566, 4567, 4568, 4569, 4570, 4571, 4572, 4573, - 4574, 4575, 4576, 4577, 4580, 4587 + 2061, 2067, 2075, 2076, 2077, 2088, 2109, 2125, 2149, 2163, + 2164, 2167, 2168, 2171, 2172, 2173, 2176, 2177, 2178, 2188, + 2204, 2221, 2230, 2243, 2244, 2247, 2248, 2251, 2252, 2255, + 2257, 2269, 2290, 2291, 2292, 2293, 2294, 2295, 2306, 2314, + 2325, 2341, 2342, 2345, 2348, 2352, 2369, 2384, 2409, 2430, + 2471, 2490, 2507, 2513, 2517, 2523, 2527, 2543, 2544, 2547, + 2548, 2551, 2552, 2555, 2556, 2557, 2558, 2561, 2562, 2565, + 2566, 2569, 2577, 2578, 2579, 2580, 2581, 2582, 2592, 2593, + 2596, 2598, 2600, 2604, 2605, 2608, 2612, 2624, 2629, 2630, + 2633, 2635, 2637, 2641, 2647, 2653, 2661, 2662, 2664, 2666, + 2668, 2670, 2672, 2674, 2678, 2679, 2682, 2683, 2684, 2687, + 2688, 2691, 2706, 2713, 2722, 2723, 2726, 2733, 2741, 2743, + 2745, 2749, 2751, 2753, 2768, 2790, 2791, 2798, 2799, 2800, + 2803, 2811, 2812, 2821, 2827, 2832, 2838, 2846, 2848, 2850, + 2852, 2856, 2867, 2873, 2880, 2885, 2891, 2899, 2905, 2918, + 2945, 2964, 2984, 2985, 2986, 2987, 2990, 2991, 2994, 2995, + 2998, 2999, 3002, 3008, 3015, 3021, 3029, 3030, 3031, 3032, + 3033, 3034, 3037, 3038, 3041, 3042, 3043, 3044, 3045, 3046, + 3047, 3048, 3049, 3059, 3061, 3078, 3088, 3098, 3111, 3124, + 3130, 3136, 3140, 3146, 3147, 3148, 3149, 3150, 3151, 3152, + 3153, 3156, 3157, 3168, 3173, 3175, 3177, 3185, 3187, 3189, + 3191, 3193, 3195, 3197, 3199, 3201, 3203, 3205, 3207, 3223, + 3239, 3241, 3243, 3245, 3247, 3249, 3251, 3263, 3270, 3277, + 3292, 3307, 3329, 3344, 3366, 3373, 3380, 3390, 3397, 3404, + 3412, 3419, 3426, 3433, 3440, 3442, 3444, 3446, 3453, 3463, + 3473, 3483, 3493, 3499, 3505, 3505, 3519, 3519, 3533, 3543, + 3553, 3563, 3573, 3583, 3593, 3603, 3613, 3623, 3633, 3643, + 3653, 3663, 3673, 3683, 3693, 3703, 3713, 3723, 3733, 3743, + 3753, 3763, 3773, 3775, 3777, 3787, 3792, 3794, 3802, 3804, + 3806, 3808, 3810, 3812, 3814, 3816, 3818, 3834, 3850, 3852, + 3854, 3856, 3858, 3865, 3872, 3887, 3902, 3924, 3939, 3961, + 3968, 3975, 3982, 3990, 3997, 4004, 4011, 4020, 4027, 4034, + 4038, 4040, 4042, 4046, 4053, 4057, 4058, 4059, 4062, 4064, + 4068, 4073, 4075, 4077, 4079, 4081, 4083, 4085, 4087, 4103, + 4119, 4121, 4123, 4125, 4127, 4135, 4142, 4149, 4156, 4164, + 4171, 4178, 4185, 4194, 4198, 4202, 4204, 4213, 4215, 4219, + 4221, 4223, 4227, 4233, 4237, 4239, 4245, 4251, 4255, 4257, + 4263, 4271, 4281, 4283, 4285, 4296, 4298, 4300, 4315, 4322, + 4329, 4348, 4350, 4355, 4362, 4369, 4381, 4395, 4396, 4399, + 4404, 4416, 4417, 4418, 4419, 4420, 4426, 4427, 4429, 4430, + 4435, 4442, 4449, 4456, 4464, 4466, 4476, 4488, 4495, 4496, + 4497, 4504, 4506, 4508, 4519, 4520, 4521, 4522, 4523, 4524, + 4525, 4526, 4527, 4528, 4529, 4530, 4531, 4532, 4533, 4534, + 4535, 4536, 4537, 4538, 4539, 4540, 4541, 4542, 4543, 4544, + 4545, 4546, 4547, 4548, 4549, 4550, 4551, 4552, 4553, 4566, + 4567, 4568, 4569, 4570, 4571, 4572, 4573, 4574, 4575, 4576, + 4577, 4578, 4579, 4580, 4583, 4590 }; #endif @@ -6558,64 +6558,67 @@ case 398: #else if (yyvsp[0].str != NULL) elog(ERROR, "WITH ENCODING is not supported"); + n->encoding = 0; #endif yyval.node = (Node *)n; ; break;} case 399: -#line 2149 "gram.y" +#line 2150 "gram.y" { CreatedbStmt *n = makeNode(CreatedbStmt); n->dbname = yyvsp[0].str; n->dbpath = NULL; #ifdef MULTIBYTE n->encoding = GetTemplateEncoding(); +#else + n->encoding = 0; #endif yyval.node = (Node *)n; ; break;} case 400: -#line 2160 "gram.y" +#line 2163 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 401: -#line 2161 "gram.y" +#line 2164 "gram.y" { yyval.str = NULL; ; break;} case 402: -#line 2164 "gram.y" +#line 2167 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 403: -#line 2165 "gram.y" +#line 2168 "gram.y" { yyval.str = NULL; ; break;} case 404: -#line 2168 "gram.y" +#line 2171 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 405: -#line 2169 "gram.y" +#line 2172 "gram.y" { yyval.str = NULL; ; break;} case 406: -#line 2170 "gram.y" +#line 2173 "gram.y" { yyval.str = NULL; ; break;} case 407: -#line 2173 "gram.y" +#line 2176 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 408: -#line 2174 "gram.y" +#line 2177 "gram.y" { yyval.str = NULL; ; break;} case 409: -#line 2175 "gram.y" +#line 2178 "gram.y" { yyval.str = NULL; ; break;} case 410: -#line 2186 "gram.y" +#line 2189 "gram.y" { DestroydbStmt *n = makeNode(DestroydbStmt); n->dbname = yyvsp[0].str; @@ -6623,7 +6626,7 @@ case 410: ; break;} case 411: -#line 2202 "gram.y" +#line 2205 "gram.y" { ClusterStmt *n = makeNode(ClusterStmt); n->relname = yyvsp[0].str; @@ -6632,7 +6635,7 @@ case 411: ; break;} case 412: -#line 2219 "gram.y" +#line 2222 "gram.y" { VacuumStmt *n = makeNode(VacuumStmt); n->verbose = yyvsp[-1].boolean; @@ -6643,7 +6646,7 @@ case 412: ; break;} case 413: -#line 2228 "gram.y" +#line 2231 "gram.y" { VacuumStmt *n = makeNode(VacuumStmt); n->verbose = yyvsp[-3].boolean; @@ -6656,39 +6659,39 @@ case 413: ; break;} case 414: -#line 2240 "gram.y" +#line 2243 "gram.y" { yyval.boolean = TRUE; ; break;} case 415: -#line 2241 "gram.y" +#line 2244 "gram.y" { yyval.boolean = FALSE; ; break;} case 416: -#line 2244 "gram.y" +#line 2247 "gram.y" { yyval.boolean = TRUE; ; break;} case 417: -#line 2245 "gram.y" +#line 2248 "gram.y" { yyval.boolean = FALSE; ; break;} case 418: -#line 2248 "gram.y" +#line 2251 "gram.y" { yyval.list = yyvsp[-1].list; ; break;} case 419: -#line 2249 "gram.y" +#line 2252 "gram.y" { yyval.list = NIL; ; break;} case 420: -#line 2253 "gram.y" +#line 2256 "gram.y" { yyval.list=lcons(yyvsp[0].str,NIL); ; break;} case 421: -#line 2255 "gram.y" +#line 2258 "gram.y" { yyval.list=lappend(yyvsp[-2].list,yyvsp[0].str); ; break;} case 422: -#line 2267 "gram.y" +#line 2270 "gram.y" { ExplainStmt *n = makeNode(ExplainStmt); n->verbose = yyvsp[-1].boolean; @@ -6697,7 +6700,7 @@ case 422: ; break;} case 429: -#line 2304 "gram.y" +#line 2307 "gram.y" { yyvsp[0].astmt->relname = yyvsp[-2].str; yyvsp[0].astmt->cols = yyvsp[-1].list; @@ -6705,7 +6708,7 @@ case 429: ; break;} case 430: -#line 2312 "gram.y" +#line 2315 "gram.y" { yyval.astmt = makeNode(InsertStmt); yyval.astmt->unique = NULL; @@ -6718,7 +6721,7 @@ case 430: ; break;} case 431: -#line 2326 "gram.y" +#line 2329 "gram.y" { yyval.astmt = makeNode(InsertStmt); yyval.astmt->unique = yyvsp[-6].str; @@ -6731,23 +6734,23 @@ case 431: ; break;} case 432: -#line 2338 "gram.y" +#line 2341 "gram.y" { yyval.list = yyvsp[-1].list; ; break;} case 433: -#line 2339 "gram.y" +#line 2342 "gram.y" { yyval.list = NIL; ; break;} case 434: -#line 2344 "gram.y" +#line 2347 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 435: -#line 2346 "gram.y" +#line 2349 "gram.y" { yyval.list = lcons(yyvsp[0].node, NIL); ; break;} case 436: -#line 2350 "gram.y" +#line 2353 "gram.y" { Ident *id = makeNode(Ident); id->name = yyvsp[-1].str; @@ -6756,7 +6759,7 @@ case 436: ; break;} case 437: -#line 2368 "gram.y" +#line 2371 "gram.y" { DeleteStmt *n = makeNode(DeleteStmt); n->relname = yyvsp[-1].str; @@ -6765,7 +6768,7 @@ case 437: ; break;} case 438: -#line 2382 "gram.y" +#line 2385 "gram.y" { DeleteStmt *n = makeNode(DeleteStmt); A_Const *c = makeNode(A_Const); @@ -6782,7 +6785,7 @@ case 438: ; break;} case 439: -#line 2410 "gram.y" +#line 2413 "gram.y" { UpdateStmt *n = makeNode(UpdateStmt); n->relname = yyvsp[-4].str; @@ -6793,7 +6796,7 @@ case 439: ; break;} case 440: -#line 2432 "gram.y" +#line 2435 "gram.y" { SelectStmt *n = makeNode(SelectStmt); @@ -6822,7 +6825,7 @@ case 440: ; break;} case 441: -#line 2472 "gram.y" +#line 2475 "gram.y" { SelectStmt *n = makeNode(SelectStmt); n->unique = yyvsp[-8].str; @@ -6838,7 +6841,7 @@ case 441: ; break;} case 442: -#line 2491 "gram.y" +#line 2494 "gram.y" { SelectStmt *n = makeNode(SelectStmt); n->unique = yyvsp[-6].str; @@ -6852,7 +6855,7 @@ case 442: ; break;} case 443: -#line 2505 "gram.y" +#line 2508 "gram.y" { SelectStmt *n = (SelectStmt *)lfirst(yyvsp[0].list); n->unionall = yyvsp[-1].boolean; @@ -6860,11 +6863,11 @@ case 443: ; break;} case 444: -#line 2511 "gram.y" +#line 2514 "gram.y" { yyval.list = NIL; ; break;} case 445: -#line 2515 "gram.y" +#line 2518 "gram.y" { SelectStmt *n = (SelectStmt *)yyvsp[0].node; n->unionall = yyvsp[-1].boolean; @@ -6872,11 +6875,11 @@ case 445: ; break;} case 446: -#line 2521 "gram.y" +#line 2524 "gram.y" { yyval.list = lcons(yyvsp[0].node, NIL); ; break;} case 447: -#line 2527 "gram.y" +#line 2530 "gram.y" { SelectStmt *n = makeNode(SelectStmt); n->unique = yyvsp[-5].str; @@ -6890,63 +6893,63 @@ case 447: ; break;} case 448: -#line 2540 "gram.y" +#line 2543 "gram.y" { yyval.str= yyvsp[0].str; ; break;} case 449: -#line 2541 "gram.y" +#line 2544 "gram.y" { yyval.str = NULL; ; break;} case 450: -#line 2544 "gram.y" +#line 2547 "gram.y" { yyval.boolean = TRUE; ; break;} case 451: -#line 2545 "gram.y" +#line 2548 "gram.y" { yyval.boolean = FALSE; ; break;} case 452: -#line 2548 "gram.y" +#line 2551 "gram.y" { yyval.boolean = TRUE; ; break;} case 453: -#line 2549 "gram.y" +#line 2552 "gram.y" { yyval.boolean = FALSE; ; break;} case 454: -#line 2552 "gram.y" +#line 2555 "gram.y" { yyval.str = "*"; ; break;} case 455: -#line 2553 "gram.y" +#line 2556 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 456: -#line 2554 "gram.y" +#line 2557 "gram.y" { yyval.str = NULL; ; break;} case 457: -#line 2555 "gram.y" +#line 2558 "gram.y" { yyval.str = NULL; ; break;} case 458: -#line 2558 "gram.y" +#line 2561 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 459: -#line 2559 "gram.y" +#line 2562 "gram.y" { yyval.list = NIL; ; break;} case 460: -#line 2562 "gram.y" +#line 2565 "gram.y" { yyval.list = lcons(yyvsp[0].sortgroupby, NIL); ; break;} case 461: -#line 2563 "gram.y" +#line 2566 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].sortgroupby); ; break;} case 462: -#line 2567 "gram.y" +#line 2570 "gram.y" { yyval.sortgroupby = makeNode(SortGroupBy); yyval.sortgroupby->node = yyvsp[-1].node; @@ -6954,92 +6957,92 @@ case 462: ; break;} case 463: -#line 2574 "gram.y" +#line 2577 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 464: -#line 2575 "gram.y" +#line 2578 "gram.y" { yyval.str = "<"; ; break;} case 465: -#line 2576 "gram.y" +#line 2579 "gram.y" { yyval.str = ">"; ; break;} case 466: -#line 2577 "gram.y" +#line 2580 "gram.y" { yyval.str = "<"; ; break;} case 467: -#line 2578 "gram.y" +#line 2581 "gram.y" { yyval.str = ">"; ; break;} case 468: -#line 2579 "gram.y" +#line 2582 "gram.y" { yyval.str = "<"; /*default*/ ; break;} case 469: -#line 2589 "gram.y" +#line 2592 "gram.y" { yyval.boolean = TRUE; ; break;} case 470: -#line 2590 "gram.y" +#line 2593 "gram.y" { yyval.boolean = FALSE; ; break;} case 472: -#line 2596 "gram.y" +#line 2599 "gram.y" { yyval.list = lcons(makeString(yyvsp[0].str),NIL); ; break;} case 473: -#line 2598 "gram.y" +#line 2601 "gram.y" { yyval.list = lappend(yyvsp[-2].list,makeString(yyvsp[0].str)); ; break;} case 474: -#line 2601 "gram.y" +#line 2604 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 475: -#line 2602 "gram.y" +#line 2605 "gram.y" { yyval.list = NIL; ; break;} case 476: -#line 2606 "gram.y" +#line 2609 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 477: -#line 2609 "gram.y" +#line 2612 "gram.y" { yyval.node = NULL; ; break;} case 478: -#line 2622 "gram.y" +#line 2625 "gram.y" { yyval.list = NIL; elog(ERROR,"JOIN not yet implemented"); ; break;} case 479: -#line 2626 "gram.y" +#line 2629 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 480: -#line 2627 "gram.y" +#line 2630 "gram.y" { yyval.list = NIL; ; break;} case 481: -#line 2631 "gram.y" +#line 2634 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].range); ; break;} case 482: -#line 2633 "gram.y" +#line 2636 "gram.y" { elog(ERROR,"CROSS JOIN not yet implemented"); ; break;} case 483: -#line 2635 "gram.y" +#line 2638 "gram.y" { yyval.list = lcons(yyvsp[0].range, NIL); ; break;} case 484: -#line 2639 "gram.y" +#line 2642 "gram.y" { yyval.range = makeNode(RangeVar); yyval.range->relExpr = yyvsp[-2].relexp; @@ -7047,7 +7050,7 @@ case 484: ; break;} case 485: -#line 2645 "gram.y" +#line 2648 "gram.y" { yyval.range = makeNode(RangeVar); yyval.range->relExpr = yyvsp[-1].relexp; @@ -7055,7 +7058,7 @@ case 485: ; break;} case 486: -#line 2651 "gram.y" +#line 2654 "gram.y" { yyval.range = makeNode(RangeVar); yyval.range->relExpr = yyvsp[0].relexp; @@ -7063,67 +7066,67 @@ case 486: ; break;} case 487: -#line 2658 "gram.y" +#line 2661 "gram.y" { yyval.str = NULL; ; break;} case 488: -#line 2660 "gram.y" +#line 2663 "gram.y" { elog(ERROR,"FULL OUTER JOIN not yet implemented"); ; break;} case 489: -#line 2662 "gram.y" +#line 2665 "gram.y" { elog(ERROR,"LEFT OUTER JOIN not yet implemented"); ; break;} case 490: -#line 2664 "gram.y" +#line 2667 "gram.y" { elog(ERROR,"RIGHT OUTER JOIN not yet implemented"); ; break;} case 491: -#line 2666 "gram.y" +#line 2669 "gram.y" { elog(ERROR,"OUTER JOIN not yet implemented"); ; break;} case 492: -#line 2668 "gram.y" +#line 2671 "gram.y" { elog(ERROR,"INNER JOIN not yet implemented"); ; break;} case 493: -#line 2670 "gram.y" +#line 2673 "gram.y" { elog(ERROR,"UNION JOIN not yet implemented"); ; break;} case 494: -#line 2672 "gram.y" +#line 2675 "gram.y" { elog(ERROR,"INNER JOIN not yet implemented"); ; break;} case 495: -#line 2675 "gram.y" +#line 2678 "gram.y" { yyval.str = NULL; ; break;} case 496: -#line 2676 "gram.y" +#line 2679 "gram.y" { yyval.str = NULL; /* no qualifiers */ ; break;} case 497: -#line 2679 "gram.y" +#line 2682 "gram.y" { yyval.str = NULL; ; break;} case 498: -#line 2680 "gram.y" +#line 2683 "gram.y" { yyval.str = NULL; ; break;} case 499: -#line 2681 "gram.y" +#line 2684 "gram.y" { yyval.str = NULL; /* no qualifiers */ ; break;} case 500: -#line 2684 "gram.y" +#line 2687 "gram.y" { yyval.list = lcons(yyvsp[0].joinusing, NIL); ; break;} case 501: -#line 2685 "gram.y" +#line 2688 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].joinusing); ; break;} case 502: -#line 2697 "gram.y" +#line 2700 "gram.y" { yyval.joinusing = makeNode(JoinUsing); yyval.joinusing->resno = 0; @@ -7132,7 +7135,7 @@ case 502: ; break;} case 503: -#line 2704 "gram.y" +#line 2707 "gram.y" { yyval.joinusing = makeNode(JoinUsing); yyval.joinusing->resno = 0; @@ -7141,7 +7144,7 @@ case 503: ; break;} case 504: -#line 2711 "gram.y" +#line 2714 "gram.y" { yyval.joinusing = makeNode(JoinUsing); yyval.joinusing->resno = yyvsp[0].ival; @@ -7150,15 +7153,15 @@ case 504: ; break;} case 505: -#line 2719 "gram.y" +#line 2722 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 506: -#line 2720 "gram.y" +#line 2723 "gram.y" { yyval.node = NULL; /* no qualifiers */ ; break;} case 507: -#line 2724 "gram.y" +#line 2727 "gram.y" { /* normal relations */ yyval.relexp = makeNode(RelExpr); @@ -7167,7 +7170,7 @@ case 507: ; break;} case 508: -#line 2731 "gram.y" +#line 2734 "gram.y" { /* inheritance query */ yyval.relexp = makeNode(RelExpr); @@ -7176,31 +7179,31 @@ case 508: ; break;} case 509: -#line 2739 "gram.y" +#line 2742 "gram.y" { yyval.list = lcons(makeInteger(-1), yyvsp[0].list); ; break;} case 510: -#line 2741 "gram.y" +#line 2744 "gram.y" { yyval.list = lcons(makeInteger(yyvsp[-2].ival), yyvsp[0].list); ; break;} case 511: -#line 2743 "gram.y" +#line 2746 "gram.y" { yyval.list = NIL; ; break;} case 512: -#line 2747 "gram.y" +#line 2750 "gram.y" { yyval.list = lcons(makeInteger(-1), yyvsp[0].list); ; break;} case 513: -#line 2749 "gram.y" +#line 2752 "gram.y" { yyval.list = lcons(makeInteger(yyvsp[-2].ival), yyvsp[0].list); ; break;} case 514: -#line 2751 "gram.y" +#line 2754 "gram.y" { yyval.list = NIL; ; break;} case 515: -#line 2766 "gram.y" +#line 2769 "gram.y" { yyval.typnam = yyvsp[-1].typnam; yyval.typnam->arrayBounds = yyvsp[0].list; @@ -7224,14 +7227,14 @@ case 515: ; break;} case 517: -#line 2789 "gram.y" +#line 2792 "gram.y" { yyval.typnam = yyvsp[0].typnam; yyval.typnam->setof = TRUE; ; break;} case 521: -#line 2801 "gram.y" +#line 2804 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType(yyvsp[0].str); @@ -7239,15 +7242,15 @@ case 521: ; break;} case 522: -#line 2808 "gram.y" +#line 2811 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 523: -#line 2809 "gram.y" +#line 2812 "gram.y" { yyval.str = xlateSqlType("type"); ; break;} case 524: -#line 2819 "gram.y" +#line 2822 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType(yyvsp[0].str); @@ -7255,14 +7258,14 @@ case 524: ; break;} case 525: -#line 2825 "gram.y" +#line 2828 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("float"); ; break;} case 526: -#line 2830 "gram.y" +#line 2833 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("integer"); @@ -7270,7 +7273,7 @@ case 526: ; break;} case 527: -#line 2836 "gram.y" +#line 2839 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("integer"); @@ -7278,23 +7281,23 @@ case 527: ; break;} case 528: -#line 2844 "gram.y" +#line 2847 "gram.y" { yyval.str = xlateSqlType("float8"); ; break;} case 529: -#line 2846 "gram.y" +#line 2849 "gram.y" { yyval.str = xlateSqlType("float8"); ; break;} case 530: -#line 2848 "gram.y" +#line 2851 "gram.y" { yyval.str = xlateSqlType("decimal"); ; break;} case 531: -#line 2850 "gram.y" +#line 2853 "gram.y" { yyval.str = xlateSqlType("numeric"); ; break;} case 532: -#line 2854 "gram.y" +#line 2857 "gram.y" { if (yyvsp[-1].ival < 1) elog(ERROR,"precision for FLOAT must be at least 1"); @@ -7307,13 +7310,13 @@ case 532: ; break;} case 533: -#line 2865 "gram.y" +#line 2868 "gram.y" { yyval.str = xlateSqlType("float8"); ; break;} case 534: -#line 2871 "gram.y" +#line 2874 "gram.y" { if (yyvsp[-3].ival != 9) elog(ERROR,"NUMERIC precision %d must be 9",yyvsp[-3].ival); @@ -7322,20 +7325,20 @@ case 534: ; break;} case 535: -#line 2878 "gram.y" +#line 2881 "gram.y" { if (yyvsp[-1].ival != 9) elog(ERROR,"NUMERIC precision %d must be 9",yyvsp[-1].ival); ; break;} case 536: -#line 2883 "gram.y" +#line 2886 "gram.y" { yyval.str = NULL; ; break;} case 537: -#line 2889 "gram.y" +#line 2892 "gram.y" { if (yyvsp[-3].ival > 9) elog(ERROR,"DECIMAL precision %d exceeds implementation limit of 9",yyvsp[-3].ival); @@ -7345,7 +7348,7 @@ case 537: ; break;} case 538: -#line 2897 "gram.y" +#line 2900 "gram.y" { if (yyvsp[-1].ival > 9) elog(ERROR,"DECIMAL precision %d exceeds implementation limit of 9",yyvsp[-1].ival); @@ -7353,13 +7356,13 @@ case 538: ; break;} case 539: -#line 2903 "gram.y" +#line 2906 "gram.y" { yyval.str = NULL; ; break;} case 540: -#line 2916 "gram.y" +#line 2919 "gram.y" { yyval.typnam = makeNode(TypeName); if (strcasecmp(yyvsp[-3].str, "char") == 0) @@ -7388,7 +7391,7 @@ case 540: ; break;} case 541: -#line 2943 "gram.y" +#line 2946 "gram.y" { yyval.typnam = makeNode(TypeName); /* Let's try to make all single-character types into bpchar(1) @@ -7407,7 +7410,7 @@ case 541: ; break;} case 542: -#line 2962 "gram.y" +#line 2965 "gram.y" { char *type, *c; if ((yyvsp[-1].str == NULL) || (strcasecmp(yyvsp[-1].str, "sql_text") == 0)) { @@ -7429,47 +7432,47 @@ case 542: ; break;} case 543: -#line 2981 "gram.y" +#line 2984 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ; break;} case 544: -#line 2982 "gram.y" +#line 2985 "gram.y" { yyval.str = xlateSqlType("varchar"); ; break;} case 545: -#line 2983 "gram.y" +#line 2986 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ; break;} case 546: -#line 2984 "gram.y" +#line 2987 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].boolean? "varchar": "char"); ; break;} case 547: -#line 2987 "gram.y" +#line 2990 "gram.y" { yyval.boolean = TRUE; ; break;} case 548: -#line 2988 "gram.y" +#line 2991 "gram.y" { yyval.boolean = FALSE; ; break;} case 549: -#line 2991 "gram.y" +#line 2994 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 550: -#line 2992 "gram.y" +#line 2995 "gram.y" { yyval.str = NULL; ; break;} case 551: -#line 2995 "gram.y" +#line 2998 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 552: -#line 2996 "gram.y" +#line 2999 "gram.y" { yyval.str = NULL; ; break;} case 553: -#line 3000 "gram.y" +#line 3003 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType(yyvsp[0].str); @@ -7477,7 +7480,7 @@ case 553: ; break;} case 554: -#line 3006 "gram.y" +#line 3009 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("timestamp"); @@ -7486,7 +7489,7 @@ case 554: ; break;} case 555: -#line 3013 "gram.y" +#line 3016 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("time"); @@ -7494,7 +7497,7 @@ case 555: ; break;} case 556: -#line 3019 "gram.y" +#line 3022 "gram.y" { yyval.typnam = makeNode(TypeName); yyval.typnam->name = xlateSqlType("interval"); @@ -7502,79 +7505,79 @@ case 556: ; break;} case 557: -#line 3026 "gram.y" +#line 3029 "gram.y" { yyval.str = "year"; ; break;} case 558: -#line 3027 "gram.y" +#line 3030 "gram.y" { yyval.str = "month"; ; break;} case 559: -#line 3028 "gram.y" +#line 3031 "gram.y" { yyval.str = "day"; ; break;} case 560: -#line 3029 "gram.y" +#line 3032 "gram.y" { yyval.str = "hour"; ; break;} case 561: -#line 3030 "gram.y" +#line 3033 "gram.y" { yyval.str = "minute"; ; break;} case 562: -#line 3031 "gram.y" +#line 3034 "gram.y" { yyval.str = "second"; ; break;} case 563: -#line 3034 "gram.y" +#line 3037 "gram.y" { yyval.boolean = TRUE; ; break;} case 564: -#line 3035 "gram.y" +#line 3038 "gram.y" { yyval.boolean = FALSE; ; break;} case 565: -#line 3038 "gram.y" +#line 3041 "gram.y" { yyval.list = lcons(yyvsp[0].str, NIL); ; break;} case 566: -#line 3039 "gram.y" +#line 3042 "gram.y" { yyval.list = NIL; ; break;} case 567: -#line 3040 "gram.y" +#line 3043 "gram.y" { yyval.list = NIL; ; break;} case 568: -#line 3041 "gram.y" +#line 3044 "gram.y" { yyval.list = NIL; ; break;} case 569: -#line 3042 "gram.y" +#line 3045 "gram.y" { yyval.list = NIL; ; break;} case 570: -#line 3043 "gram.y" +#line 3046 "gram.y" { yyval.list = NIL; ; break;} case 571: -#line 3044 "gram.y" +#line 3047 "gram.y" { yyval.list = NIL; ; break;} case 572: -#line 3045 "gram.y" +#line 3048 "gram.y" { yyval.list = NIL; ; break;} case 573: -#line 3046 "gram.y" +#line 3049 "gram.y" { yyval.list = NIL; ; break;} case 574: -#line 3057 "gram.y" +#line 3060 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 575: -#line 3059 "gram.y" +#line 3062 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Null; @@ -7582,7 +7585,7 @@ case 575: ; break;} case 576: -#line 3076 "gram.y" +#line 3079 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-5].list; @@ -7594,7 +7597,7 @@ case 576: ; break;} case 577: -#line 3086 "gram.y" +#line 3089 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-6].list; @@ -7606,7 +7609,7 @@ case 577: ; break;} case 578: -#line 3096 "gram.y" +#line 3099 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-6].list; @@ -7621,7 +7624,7 @@ case 578: ; break;} case 579: -#line 3109 "gram.y" +#line 3112 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = yyvsp[-5].list; @@ -7636,86 +7639,86 @@ case 579: ; break;} case 580: -#line 3122 "gram.y" +#line 3125 "gram.y" { yyval.node = makeRowExpr(yyvsp[-3].str, yyvsp[-5].list, yyvsp[-1].list); ; break;} case 581: -#line 3128 "gram.y" +#line 3131 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 582: -#line 3134 "gram.y" +#line 3137 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 583: -#line 3138 "gram.y" +#line 3141 "gram.y" { yyval.list = lcons(yyvsp[0].node, NIL); ; break;} case 584: -#line 3143 "gram.y" +#line 3146 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 585: -#line 3144 "gram.y" +#line 3147 "gram.y" { yyval.str = "<"; ; break;} case 586: -#line 3145 "gram.y" +#line 3148 "gram.y" { yyval.str = "="; ; break;} case 587: -#line 3146 "gram.y" +#line 3149 "gram.y" { yyval.str = ">"; ; break;} case 588: -#line 3147 "gram.y" +#line 3150 "gram.y" { yyval.str = "+"; ; break;} case 589: -#line 3148 "gram.y" +#line 3151 "gram.y" { yyval.str = "-"; ; break;} case 590: -#line 3149 "gram.y" +#line 3152 "gram.y" { yyval.str = "*"; ; break;} case 591: -#line 3150 "gram.y" +#line 3153 "gram.y" { yyval.str = "/"; ; break;} case 592: -#line 3153 "gram.y" +#line 3156 "gram.y" { yyval.ival = ANY_SUBLINK; ; break;} case 593: -#line 3154 "gram.y" +#line 3157 "gram.y" { yyval.ival = ALL_SUBLINK; ; break;} case 594: -#line 3166 "gram.y" +#line 3169 "gram.y" { yyvsp[-1].attr->indirection = yyvsp[0].list; yyval.node = (Node *)yyvsp[-1].attr; ; break;} case 595: -#line 3171 "gram.y" +#line 3174 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 596: -#line 3173 "gram.y" +#line 3176 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 597: -#line 3175 "gram.y" +#line 3178 "gram.y" { /* could be a column name or a relation_name */ Ident *n = makeNode(Ident); @@ -7725,51 +7728,51 @@ case 597: ; break;} case 598: -#line 3183 "gram.y" +#line 3186 "gram.y" { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; break;} case 599: -#line 3185 "gram.y" +#line 3188 "gram.y" { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; break;} case 600: -#line 3187 "gram.y" +#line 3190 "gram.y" { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; break;} case 601: -#line 3189 "gram.y" +#line 3192 "gram.y" { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; break;} case 602: -#line 3191 "gram.y" +#line 3194 "gram.y" { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; break;} case 603: -#line 3193 "gram.y" +#line 3196 "gram.y" { yyval.node = makeA_Expr(OP, "<", yyvsp[-2].node, yyvsp[0].node); ; break;} case 604: -#line 3195 "gram.y" +#line 3198 "gram.y" { yyval.node = makeA_Expr(OP, ">", yyvsp[-2].node, yyvsp[0].node); ; break;} case 605: -#line 3197 "gram.y" +#line 3200 "gram.y" { yyval.node = makeA_Expr(OP, "=", yyvsp[-2].node, yyvsp[0].node); ; break;} case 606: -#line 3199 "gram.y" +#line 3202 "gram.y" { yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ; break;} case 607: -#line 3201 "gram.y" +#line 3204 "gram.y" { yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ; break;} case 608: -#line 3203 "gram.y" +#line 3206 "gram.y" { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; break;} case 609: -#line 3205 "gram.y" +#line 3208 "gram.y" { yyval.node = (Node *)yyvsp[-2].node; /* AexprConst can be either A_Const or ParamNo */ @@ -7787,7 +7790,7 @@ case 609: ; break;} case 610: -#line 3221 "gram.y" +#line 3224 "gram.y" { yyval.node = (Node *)yyvsp[-3].node; /* AexprConst can be either A_Const or ParamNo */ @@ -7805,31 +7808,31 @@ case 610: ; break;} case 611: -#line 3237 "gram.y" +#line 3240 "gram.y" { yyval.node = yyvsp[-1].node; ; break;} case 612: -#line 3239 "gram.y" +#line 3242 "gram.y" { yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ; break;} case 613: -#line 3241 "gram.y" +#line 3244 "gram.y" { yyval.node = makeIndexable("~~", yyvsp[-2].node, yyvsp[0].node); ; break;} case 614: -#line 3243 "gram.y" +#line 3246 "gram.y" { yyval.node = makeA_Expr(OP, "!~~", yyvsp[-3].node, yyvsp[0].node); ; break;} case 615: -#line 3245 "gram.y" +#line 3248 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; break;} case 616: -#line 3247 "gram.y" +#line 3250 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; break;} case 617: -#line 3249 "gram.y" +#line 3252 "gram.y" { /* cheap hack for aggregate (eg. count) */ FuncCall *n = makeNode(FuncCall); @@ -7843,7 +7846,7 @@ case 617: ; break;} case 618: -#line 3261 "gram.y" +#line 3264 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-2].str; @@ -7852,7 +7855,7 @@ case 618: ; break;} case 619: -#line 3268 "gram.y" +#line 3271 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-3].str; @@ -7861,7 +7864,7 @@ case 619: ; break;} case 620: -#line 3275 "gram.y" +#line 3278 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -7878,7 +7881,7 @@ case 620: ; break;} case 621: -#line 3290 "gram.y" +#line 3293 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -7895,7 +7898,7 @@ case 621: ; break;} case 622: -#line 3305 "gram.y" +#line 3308 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -7919,7 +7922,7 @@ case 622: ; break;} case 623: -#line 3327 "gram.y" +#line 3330 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -7936,7 +7939,7 @@ case 623: ; break;} case 624: -#line 3342 "gram.y" +#line 3345 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -7960,7 +7963,7 @@ case 624: ; break;} case 625: -#line 3364 "gram.y" +#line 3367 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -7969,7 +7972,7 @@ case 625: ; break;} case 626: -#line 3371 "gram.y" +#line 3374 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -7978,7 +7981,7 @@ case 626: ; break;} case 627: -#line 3378 "gram.y" +#line 3381 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = NIL; @@ -7990,7 +7993,7 @@ case 627: ; break;} case 628: -#line 3388 "gram.y" +#line 3391 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "date_part"; @@ -7999,7 +8002,7 @@ case 628: ; break;} case 629: -#line 3395 "gram.y" +#line 3398 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "strpos"; @@ -8008,7 +8011,7 @@ case 629: ; break;} case 630: -#line 3402 "gram.y" +#line 3405 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "substr"; @@ -8017,7 +8020,7 @@ case 630: ; break;} case 631: -#line 3410 "gram.y" +#line 3413 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -8026,7 +8029,7 @@ case 631: ; break;} case 632: -#line 3417 "gram.y" +#line 3420 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "ltrim"; @@ -8035,7 +8038,7 @@ case 632: ; break;} case 633: -#line 3424 "gram.y" +#line 3427 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "rtrim"; @@ -8044,7 +8047,7 @@ case 633: ; break;} case 634: -#line 3431 "gram.y" +#line 3434 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -8053,23 +8056,23 @@ case 634: ; break;} case 635: -#line 3438 "gram.y" +#line 3441 "gram.y" { yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-1].node, NULL); ; break;} case 636: -#line 3440 "gram.y" +#line 3443 "gram.y" { yyval.node = makeA_Expr(ISNULL, NULL, yyvsp[-2].node, NULL); ; break;} case 637: -#line 3442 "gram.y" +#line 3445 "gram.y" { yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-1].node, NULL); ; break;} case 638: -#line 3444 "gram.y" +#line 3447 "gram.y" { yyval.node = makeA_Expr(NOTNULL, NULL, yyvsp[-3].node, NULL); ; break;} case 639: -#line 3451 "gram.y" +#line 3454 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -8081,7 +8084,7 @@ case 639: ; break;} case 640: -#line 3461 "gram.y" +#line 3464 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -8093,7 +8096,7 @@ case 640: ; break;} case 641: -#line 3471 "gram.y" +#line 3474 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -8105,7 +8108,7 @@ case 641: ; break;} case 642: -#line 3481 "gram.y" +#line 3484 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -8117,7 +8120,7 @@ case 642: ; break;} case 643: -#line 3491 "gram.y" +#line 3494 "gram.y" { yyval.node = makeA_Expr(AND, NULL, makeA_Expr(OP, ">=", yyvsp[-4].node, yyvsp[-2].node), @@ -8125,7 +8128,7 @@ case 643: ; break;} case 644: -#line 3497 "gram.y" +#line 3500 "gram.y" { yyval.node = makeA_Expr(OR, NULL, makeA_Expr(OP, "<", yyvsp[-5].node, yyvsp[-2].node), @@ -8133,11 +8136,11 @@ case 644: ; break;} case 645: -#line 3502 "gram.y" +#line 3505 "gram.y" { saved_In_Expr = lcons(yyvsp[-1].node,saved_In_Expr); ; break;} case 646: -#line 3503 "gram.y" +#line 3506 "gram.y" { saved_In_Expr = lnext(saved_In_Expr); if (nodeTag(yyvsp[-1].node) == T_SubLink) @@ -8153,11 +8156,11 @@ case 646: ; break;} case 647: -#line 3516 "gram.y" +#line 3519 "gram.y" { saved_In_Expr = lcons(yyvsp[-2].node,saved_In_Expr); ; break;} case 648: -#line 3517 "gram.y" +#line 3520 "gram.y" { saved_In_Expr = lnext(saved_In_Expr); if (nodeTag(yyvsp[-1].node) == T_SubLink) @@ -8173,7 +8176,7 @@ case 648: ; break;} case 649: -#line 3531 "gram.y" +#line 3534 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8185,7 +8188,7 @@ case 649: ; break;} case 650: -#line 3541 "gram.y" +#line 3544 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8197,7 +8200,7 @@ case 650: ; break;} case 651: -#line 3551 "gram.y" +#line 3554 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8209,7 +8212,7 @@ case 651: ; break;} case 652: -#line 3561 "gram.y" +#line 3564 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8221,7 +8224,7 @@ case 652: ; break;} case 653: -#line 3571 "gram.y" +#line 3574 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8233,7 +8236,7 @@ case 653: ; break;} case 654: -#line 3581 "gram.y" +#line 3584 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8245,7 +8248,7 @@ case 654: ; break;} case 655: -#line 3591 "gram.y" +#line 3594 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8257,7 +8260,7 @@ case 655: ; break;} case 656: -#line 3601 "gram.y" +#line 3604 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-4].node, NULL); @@ -8269,7 +8272,7 @@ case 656: ; break;} case 657: -#line 3611 "gram.y" +#line 3614 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8281,7 +8284,7 @@ case 657: ; break;} case 658: -#line 3621 "gram.y" +#line 3624 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8293,7 +8296,7 @@ case 658: ; break;} case 659: -#line 3631 "gram.y" +#line 3634 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8305,7 +8308,7 @@ case 659: ; break;} case 660: -#line 3641 "gram.y" +#line 3644 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8317,7 +8320,7 @@ case 660: ; break;} case 661: -#line 3651 "gram.y" +#line 3654 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8329,7 +8332,7 @@ case 661: ; break;} case 662: -#line 3661 "gram.y" +#line 3664 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8341,7 +8344,7 @@ case 662: ; break;} case 663: -#line 3671 "gram.y" +#line 3674 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8353,7 +8356,7 @@ case 663: ; break;} case 664: -#line 3681 "gram.y" +#line 3684 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node,NIL); @@ -8365,7 +8368,7 @@ case 664: ; break;} case 665: -#line 3691 "gram.y" +#line 3694 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8377,7 +8380,7 @@ case 665: ; break;} case 666: -#line 3701 "gram.y" +#line 3704 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8389,7 +8392,7 @@ case 666: ; break;} case 667: -#line 3711 "gram.y" +#line 3714 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8401,7 +8404,7 @@ case 667: ; break;} case 668: -#line 3721 "gram.y" +#line 3724 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8413,7 +8416,7 @@ case 668: ; break;} case 669: -#line 3731 "gram.y" +#line 3734 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8425,7 +8428,7 @@ case 669: ; break;} case 670: -#line 3741 "gram.y" +#line 3744 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8437,7 +8440,7 @@ case 670: ; break;} case 671: -#line 3751 "gram.y" +#line 3754 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8449,7 +8452,7 @@ case 671: ; break;} case 672: -#line 3761 "gram.y" +#line 3764 "gram.y" { SubLink *n = makeNode(SubLink); n->lefthand = lcons(yyvsp[-5].node, NULL); @@ -8461,30 +8464,30 @@ case 672: ; break;} case 673: -#line 3771 "gram.y" +#line 3774 "gram.y" { yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, yyvsp[0].node); ; break;} case 674: -#line 3773 "gram.y" +#line 3776 "gram.y" { yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, yyvsp[0].node); ; break;} case 675: -#line 3775 "gram.y" +#line 3778 "gram.y" { yyval.node = makeA_Expr(NOT, NULL, NULL, yyvsp[0].node); ; break;} case 676: -#line 3785 "gram.y" +#line 3788 "gram.y" { yyvsp[-1].attr->indirection = yyvsp[0].list; yyval.node = (Node *)yyvsp[-1].attr; ; break;} case 677: -#line 3790 "gram.y" +#line 3793 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 678: -#line 3792 "gram.y" +#line 3795 "gram.y" { /* could be a column name or a relation_name */ Ident *n = makeNode(Ident); @@ -8494,39 +8497,39 @@ case 678: ; break;} case 679: -#line 3800 "gram.y" +#line 3803 "gram.y" { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; break;} case 680: -#line 3802 "gram.y" +#line 3805 "gram.y" { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; break;} case 681: -#line 3804 "gram.y" +#line 3807 "gram.y" { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; break;} case 682: -#line 3806 "gram.y" +#line 3809 "gram.y" { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; break;} case 683: -#line 3808 "gram.y" +#line 3811 "gram.y" { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; break;} case 684: -#line 3810 "gram.y" +#line 3813 "gram.y" { yyval.node = makeA_Expr(OP, ":", NULL, yyvsp[0].node); ; break;} case 685: -#line 3812 "gram.y" +#line 3815 "gram.y" { yyval.node = makeA_Expr(OP, ";", NULL, yyvsp[0].node); ; break;} case 686: -#line 3814 "gram.y" +#line 3817 "gram.y" { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; break;} case 687: -#line 3816 "gram.y" +#line 3819 "gram.y" { yyval.node = (Node *)yyvsp[-2].node; /* AexprConst can be either A_Const or ParamNo */ @@ -8544,7 +8547,7 @@ case 687: ; break;} case 688: -#line 3832 "gram.y" +#line 3835 "gram.y" { yyval.node = (Node *)yyvsp[-3].node; /* AexprConst can be either A_Const or ParamNo */ @@ -8562,23 +8565,23 @@ case 688: ; break;} case 689: -#line 3848 "gram.y" +#line 3851 "gram.y" { yyval.node = yyvsp[-1].node; ; break;} case 690: -#line 3850 "gram.y" +#line 3853 "gram.y" { yyval.node = makeIndexable(yyvsp[-1].str,yyvsp[-2].node,yyvsp[0].node); ; break;} case 691: -#line 3852 "gram.y" +#line 3855 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; break;} case 692: -#line 3854 "gram.y" +#line 3857 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; break;} case 693: -#line 3856 "gram.y" +#line 3859 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-2].str; @@ -8587,7 +8590,7 @@ case 693: ; break;} case 694: -#line 3863 "gram.y" +#line 3866 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-3].str; @@ -8596,7 +8599,7 @@ case 694: ; break;} case 695: -#line 3870 "gram.y" +#line 3873 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -8613,7 +8616,7 @@ case 695: ; break;} case 696: -#line 3885 "gram.y" +#line 3888 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -8630,7 +8633,7 @@ case 696: ; break;} case 697: -#line 3900 "gram.y" +#line 3903 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -8654,7 +8657,7 @@ case 697: ; break;} case 698: -#line 3922 "gram.y" +#line 3925 "gram.y" { A_Const *n = makeNode(A_Const); TypeName *t = makeNode(TypeName); @@ -8671,7 +8674,7 @@ case 698: ; break;} case 699: -#line 3937 "gram.y" +#line 3940 "gram.y" { FuncCall *n = makeNode(FuncCall); A_Const *s = makeNode(A_Const); @@ -8695,7 +8698,7 @@ case 699: ; break;} case 700: -#line 3959 "gram.y" +#line 3962 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -8704,7 +8707,7 @@ case 700: ; break;} case 701: -#line 3966 "gram.y" +#line 3969 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "getpgusername"; @@ -8713,7 +8716,7 @@ case 701: ; break;} case 702: -#line 3973 "gram.y" +#line 3976 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "strpos"; @@ -8722,7 +8725,7 @@ case 702: ; break;} case 703: -#line 3980 "gram.y" +#line 3983 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "substr"; @@ -8731,7 +8734,7 @@ case 703: ; break;} case 704: -#line 3988 "gram.y" +#line 3991 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -8740,7 +8743,7 @@ case 704: ; break;} case 705: -#line 3995 "gram.y" +#line 3998 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "ltrim"; @@ -8749,7 +8752,7 @@ case 705: ; break;} case 706: -#line 4002 "gram.y" +#line 4005 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "rtrim"; @@ -8758,7 +8761,7 @@ case 706: ; break;} case 707: -#line 4009 "gram.y" +#line 4012 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -8767,7 +8770,7 @@ case 707: ; break;} case 708: -#line 4018 "gram.y" +#line 4021 "gram.y" { A_Indices *ai = makeNode(A_Indices); ai->lidx = NULL; @@ -8776,7 +8779,7 @@ case 708: ; break;} case 709: -#line 4025 "gram.y" +#line 4028 "gram.y" { A_Indices *ai = makeNode(A_Indices); ai->lidx = yyvsp[-4].node; @@ -8785,23 +8788,23 @@ case 709: ; break;} case 710: -#line 4032 "gram.y" +#line 4035 "gram.y" { yyval.list = NIL; ; break;} case 711: -#line 4036 "gram.y" +#line 4039 "gram.y" { yyval.list = lcons(yyvsp[0].node, NIL); ; break;} case 712: -#line 4038 "gram.y" +#line 4041 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 713: -#line 4040 "gram.y" +#line 4043 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); ; break;} case 714: -#line 4044 "gram.y" +#line 4047 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -8810,66 +8813,66 @@ case 714: ; break;} case 715: -#line 4051 "gram.y" +#line 4054 "gram.y" { yyval.list = NIL; ; break;} case 716: -#line 4054 "gram.y" +#line 4057 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 717: -#line 4055 "gram.y" +#line 4058 "gram.y" { yyval.str = "tz_hour"; ; break;} case 718: -#line 4056 "gram.y" +#line 4059 "gram.y" { yyval.str = "tz_minute"; ; break;} case 719: -#line 4060 "gram.y" +#line 4063 "gram.y" { yyval.list = makeList(yyvsp[0].node, yyvsp[-2].node, -1); ; break;} case 720: -#line 4062 "gram.y" +#line 4065 "gram.y" { yyval.list = NIL; ; break;} case 721: -#line 4066 "gram.y" +#line 4069 "gram.y" { yyvsp[-1].attr->indirection = yyvsp[0].list; yyval.node = (Node *)yyvsp[-1].attr; ; break;} case 722: -#line 4071 "gram.y" +#line 4074 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 723: -#line 4073 "gram.y" +#line 4076 "gram.y" { yyval.node = makeA_Expr(OP, "-", NULL, yyvsp[0].node); ; break;} case 724: -#line 4075 "gram.y" +#line 4078 "gram.y" { yyval.node = makeA_Expr(OP, "+", yyvsp[-2].node, yyvsp[0].node); ; break;} case 725: -#line 4077 "gram.y" +#line 4080 "gram.y" { yyval.node = makeA_Expr(OP, "-", yyvsp[-2].node, yyvsp[0].node); ; break;} case 726: -#line 4079 "gram.y" +#line 4082 "gram.y" { yyval.node = makeA_Expr(OP, "/", yyvsp[-2].node, yyvsp[0].node); ; break;} case 727: -#line 4081 "gram.y" +#line 4084 "gram.y" { yyval.node = makeA_Expr(OP, "*", yyvsp[-2].node, yyvsp[0].node); ; break;} case 728: -#line 4083 "gram.y" +#line 4086 "gram.y" { yyval.node = makeA_Expr(OP, "|", NULL, yyvsp[0].node); ; break;} case 729: -#line 4085 "gram.y" +#line 4088 "gram.y" { yyval.node = (Node *)yyvsp[-2].node; /* AexprConst can be either A_Const or ParamNo */ @@ -8887,7 +8890,7 @@ case 729: ; break;} case 730: -#line 4101 "gram.y" +#line 4104 "gram.y" { yyval.node = (Node *)yyvsp[-3].node; /* AexprConst can be either A_Const or ParamNo */ @@ -8905,23 +8908,23 @@ case 730: ; break;} case 731: -#line 4117 "gram.y" +#line 4120 "gram.y" { yyval.node = yyvsp[-1].node; ; break;} case 732: -#line 4119 "gram.y" +#line 4122 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, yyvsp[-2].node, yyvsp[0].node); ; break;} case 733: -#line 4121 "gram.y" +#line 4124 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[-1].str, NULL, yyvsp[0].node); ; break;} case 734: -#line 4123 "gram.y" +#line 4126 "gram.y" { yyval.node = makeA_Expr(OP, yyvsp[0].str, yyvsp[-1].node, NULL); ; break;} case 735: -#line 4125 "gram.y" +#line 4128 "gram.y" { /* could be a column name or a relation_name */ Ident *n = makeNode(Ident); @@ -8931,7 +8934,7 @@ case 735: ; break;} case 736: -#line 4133 "gram.y" +#line 4136 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-2].str; @@ -8940,7 +8943,7 @@ case 736: ; break;} case 737: -#line 4140 "gram.y" +#line 4143 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = yyvsp[-3].str; @@ -8949,7 +8952,7 @@ case 737: ; break;} case 738: -#line 4147 "gram.y" +#line 4150 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "strpos"; @@ -8958,7 +8961,7 @@ case 738: ; break;} case 739: -#line 4154 "gram.y" +#line 4157 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "substr"; @@ -8967,7 +8970,7 @@ case 739: ; break;} case 740: -#line 4162 "gram.y" +#line 4165 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -8976,7 +8979,7 @@ case 740: ; break;} case 741: -#line 4169 "gram.y" +#line 4172 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "ltrim"; @@ -8985,7 +8988,7 @@ case 741: ; break;} case 742: -#line 4176 "gram.y" +#line 4179 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "rtrim"; @@ -8994,7 +8997,7 @@ case 742: ; break;} case 743: -#line 4183 "gram.y" +#line 4186 "gram.y" { FuncCall *n = makeNode(FuncCall); n->funcname = "btrim"; @@ -9003,21 +9006,21 @@ case 743: ; break;} case 744: -#line 4192 "gram.y" +#line 4195 "gram.y" { yyval.list = nconc(nconc(yyvsp[-2].list,yyvsp[-1].list),yyvsp[0].list); ; break;} case 745: -#line 4196 "gram.y" +#line 4199 "gram.y" { yyval.list = NIL; ; break;} case 746: -#line 4200 "gram.y" +#line 4203 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 747: -#line 4202 "gram.y" +#line 4205 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Integer; @@ -9026,27 +9029,27 @@ case 747: ; break;} case 748: -#line 4211 "gram.y" +#line 4214 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 749: -#line 4213 "gram.y" +#line 4216 "gram.y" { yyval.list = NIL; ; break;} case 750: -#line 4217 "gram.y" +#line 4220 "gram.y" { yyval.list = lappend(yyvsp[0].list, yyvsp[-2].node); ; break;} case 751: -#line 4219 "gram.y" +#line 4222 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 752: -#line 4221 "gram.y" +#line 4224 "gram.y" { yyval.list = yyvsp[0].list; ; break;} case 753: -#line 4225 "gram.y" +#line 4228 "gram.y" { SubLink *n = makeNode(SubLink); n->subselect = yyvsp[0].node; @@ -9054,21 +9057,21 @@ case 753: ; break;} case 754: -#line 4231 "gram.y" +#line 4234 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 755: -#line 4235 "gram.y" +#line 4238 "gram.y" { yyval.node = makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node); ; break;} case 756: -#line 4237 "gram.y" +#line 4240 "gram.y" { yyval.node = makeA_Expr(OR, NULL, yyvsp[-2].node, makeA_Expr(OP, "=", lfirst(saved_In_Expr), yyvsp[0].node)); ; break;} case 757: -#line 4243 "gram.y" +#line 4246 "gram.y" { SubLink *n = makeNode(SubLink); n->subselect = yyvsp[0].node; @@ -9076,21 +9079,21 @@ case 757: ; break;} case 758: -#line 4249 "gram.y" +#line 4252 "gram.y" { yyval.node = yyvsp[0].node; ; break;} case 759: -#line 4253 "gram.y" +#line 4256 "gram.y" { yyval.node = makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node); ; break;} case 760: -#line 4255 "gram.y" +#line 4258 "gram.y" { yyval.node = makeA_Expr(AND, NULL, yyvsp[-2].node, makeA_Expr(OP, "<>", lfirst(saved_In_Expr), yyvsp[0].node)); ; break;} case 761: -#line 4261 "gram.y" +#line 4264 "gram.y" { yyval.attr = makeNode(Attr); yyval.attr->relname = yyvsp[-2].str; @@ -9100,7 +9103,7 @@ case 761: ; break;} case 762: -#line 4269 "gram.y" +#line 4272 "gram.y" { yyval.attr = makeNode(Attr); yyval.attr->relname = NULL; @@ -9110,27 +9113,27 @@ case 762: ; break;} case 763: -#line 4279 "gram.y" +#line 4282 "gram.y" { yyval.list = lcons(makeString(yyvsp[0].str), NIL); ; break;} case 764: -#line 4281 "gram.y" +#line 4284 "gram.y" { yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); ; break;} case 765: -#line 4283 "gram.y" +#line 4286 "gram.y" { yyval.list = lappend(yyvsp[-2].list, makeString("*")); ; break;} case 766: -#line 4294 "gram.y" +#line 4297 "gram.y" { yyval.list = lappend(yyvsp[-2].list,yyvsp[0].target); ; break;} case 767: -#line 4296 "gram.y" +#line 4299 "gram.y" { yyval.list = lcons(yyvsp[0].target, NIL); ; break;} case 768: -#line 4298 "gram.y" +#line 4301 "gram.y" { ResTarget *rt = makeNode(ResTarget); Attr *att = makeNode(Attr); @@ -9145,7 +9148,7 @@ case 768: ; break;} case 769: -#line 4313 "gram.y" +#line 4316 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = yyvsp[-3].str; @@ -9154,7 +9157,7 @@ case 769: ; break;} case 770: -#line 4320 "gram.y" +#line 4323 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = NULL; @@ -9163,7 +9166,7 @@ case 770: ; break;} case 771: -#line 4327 "gram.y" +#line 4330 "gram.y" { Attr *att = makeNode(Attr); att->relname = yyvsp[-2].str; @@ -9177,15 +9180,15 @@ case 771: ; break;} case 772: -#line 4346 "gram.y" +#line 4349 "gram.y" { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); ; break;} case 773: -#line 4348 "gram.y" +#line 4351 "gram.y" { yyval.list = lcons(yyvsp[0].target, NIL); ; break;} case 774: -#line 4353 "gram.y" +#line 4356 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = yyvsp[0].str; @@ -9194,7 +9197,7 @@ case 774: ; break;} case 775: -#line 4360 "gram.y" +#line 4363 "gram.y" { yyval.target = makeNode(ResTarget); yyval.target->name = NULL; @@ -9203,7 +9206,7 @@ case 775: ; break;} case 776: -#line 4367 "gram.y" +#line 4370 "gram.y" { Attr *att = makeNode(Attr); att->relname = yyvsp[-2].str; @@ -9217,7 +9220,7 @@ case 776: ; break;} case 777: -#line 4379 "gram.y" +#line 4382 "gram.y" { Attr *att = makeNode(Attr); att->relname = "*"; @@ -9231,22 +9234,22 @@ case 777: ; break;} case 778: -#line 4392 "gram.y" +#line 4395 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 779: -#line 4393 "gram.y" +#line 4396 "gram.y" { yyval.str = NULL; ; break;} case 780: -#line 4397 "gram.y" +#line 4400 "gram.y" { yyval.str = yyvsp[0].str; StrNCpy(saved_relname, yyvsp[0].str, NAMEDATALEN); ; break;} case 781: -#line 4402 "gram.y" +#line 4405 "gram.y" { /* disallow refs to variable system tables */ if (strcmp(LogRelationName, yyvsp[0].str) == 0 @@ -9258,43 +9261,43 @@ case 781: ; break;} case 782: -#line 4413 "gram.y" +#line 4416 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 783: -#line 4414 "gram.y" +#line 4417 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 784: -#line 4415 "gram.y" +#line 4418 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 785: -#line 4416 "gram.y" +#line 4419 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 786: -#line 4417 "gram.y" +#line 4420 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 787: -#line 4423 "gram.y" +#line 4426 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 788: -#line 4424 "gram.y" +#line 4427 "gram.y" { yyval.str = xlateSqlFunc(yyvsp[0].str); ; break;} case 789: -#line 4426 "gram.y" +#line 4429 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 790: -#line 4427 "gram.y" +#line 4430 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 791: -#line 4433 "gram.y" +#line 4436 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Integer; @@ -9303,7 +9306,7 @@ case 791: ; break;} case 792: -#line 4440 "gram.y" +#line 4443 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_Float; @@ -9312,7 +9315,7 @@ case 792: ; break;} case 793: -#line 4447 "gram.y" +#line 4450 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9321,7 +9324,7 @@ case 793: ; break;} case 794: -#line 4454 "gram.y" +#line 4457 "gram.y" { A_Const *n = makeNode(A_Const); n->typename = yyvsp[-1].typnam; @@ -9331,11 +9334,11 @@ case 794: ; break;} case 795: -#line 4462 "gram.y" +#line 4465 "gram.y" { yyval.node = (Node *)yyvsp[0].paramno; ; break;} case 796: -#line 4464 "gram.y" +#line 4467 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9347,7 +9350,7 @@ case 796: ; break;} case 797: -#line 4474 "gram.y" +#line 4477 "gram.y" { A_Const *n = makeNode(A_Const); n->val.type = T_String; @@ -9359,238 +9362,238 @@ case 797: ; break;} case 798: -#line 4486 "gram.y" +#line 4489 "gram.y" { yyval.paramno = makeNode(ParamNo); yyval.paramno->number = yyvsp[0].ival; ; break;} case 799: -#line 4492 "gram.y" +#line 4495 "gram.y" { yyval.ival = yyvsp[0].ival; ; break;} case 800: -#line 4493 "gram.y" +#line 4496 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 801: -#line 4494 "gram.y" +#line 4497 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 802: -#line 4502 "gram.y" +#line 4505 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].str); ; break;} case 803: -#line 4504 "gram.y" +#line 4507 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].str); ; break;} case 804: -#line 4506 "gram.y" +#line 4509 "gram.y" { yyval.str = xlateSqlType(yyvsp[0].str); ; break;} case 805: -#line 4516 "gram.y" +#line 4519 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 806: -#line 4517 "gram.y" +#line 4520 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 807: -#line 4518 "gram.y" +#line 4521 "gram.y" { yyval.str = "action"; ; break;} case 808: -#line 4519 "gram.y" +#line 4522 "gram.y" { yyval.str = "cache"; ; break;} case 809: -#line 4520 "gram.y" +#line 4523 "gram.y" { yyval.str = "cycle"; ; break;} case 810: -#line 4521 "gram.y" +#line 4524 "gram.y" { yyval.str = "database"; ; break;} case 811: -#line 4522 "gram.y" +#line 4525 "gram.y" { yyval.str = "delimiters"; ; break;} case 812: -#line 4523 "gram.y" +#line 4526 "gram.y" { yyval.str = "double"; ; break;} case 813: -#line 4524 "gram.y" +#line 4527 "gram.y" { yyval.str = "each"; ; break;} case 814: -#line 4525 "gram.y" +#line 4528 "gram.y" { yyval.str = "encoding"; ; break;} case 815: -#line 4526 "gram.y" +#line 4529 "gram.y" { yyval.str = "function"; ; break;} case 816: -#line 4527 "gram.y" +#line 4530 "gram.y" { yyval.str = "increment"; ; break;} case 817: -#line 4528 "gram.y" +#line 4531 "gram.y" { yyval.str = "index"; ; break;} case 818: -#line 4529 "gram.y" +#line 4532 "gram.y" { yyval.str = "key"; ; break;} case 819: -#line 4530 "gram.y" +#line 4533 "gram.y" { yyval.str = "language"; ; break;} case 820: -#line 4531 "gram.y" +#line 4534 "gram.y" { yyval.str = "location"; ; break;} case 821: -#line 4532 "gram.y" +#line 4535 "gram.y" { yyval.str = "match"; ; break;} case 822: -#line 4533 "gram.y" +#line 4536 "gram.y" { yyval.str = "maxvalue"; ; break;} case 823: -#line 4534 "gram.y" +#line 4537 "gram.y" { yyval.str = "minvalue"; ; break;} case 824: -#line 4535 "gram.y" +#line 4538 "gram.y" { yyval.str = "operator"; ; break;} case 825: -#line 4536 "gram.y" +#line 4539 "gram.y" { yyval.str = "option"; ; break;} case 826: -#line 4537 "gram.y" +#line 4540 "gram.y" { yyval.str = "password"; ; break;} case 827: -#line 4538 "gram.y" +#line 4541 "gram.y" { yyval.str = "privileges"; ; break;} case 828: -#line 4539 "gram.y" +#line 4542 "gram.y" { yyval.str = "recipe"; ; break;} case 829: -#line 4540 "gram.y" +#line 4543 "gram.y" { yyval.str = "row"; ; break;} case 830: -#line 4541 "gram.y" +#line 4544 "gram.y" { yyval.str = "start"; ; break;} case 831: -#line 4542 "gram.y" +#line 4545 "gram.y" { yyval.str = "statement"; ; break;} case 832: -#line 4543 "gram.y" +#line 4546 "gram.y" { yyval.str = "time"; ; break;} case 833: -#line 4544 "gram.y" +#line 4547 "gram.y" { yyval.str = "timezone_hour"; ; break;} case 834: -#line 4545 "gram.y" +#line 4548 "gram.y" { yyval.str = "timezone_minute"; ; break;} case 835: -#line 4546 "gram.y" +#line 4549 "gram.y" { yyval.str = "trigger"; ; break;} case 836: -#line 4547 "gram.y" +#line 4550 "gram.y" { yyval.str = "type"; ; break;} case 837: -#line 4548 "gram.y" +#line 4551 "gram.y" { yyval.str = "valid"; ; break;} case 838: -#line 4549 "gram.y" +#line 4552 "gram.y" { yyval.str = "version"; ; break;} case 839: -#line 4550 "gram.y" +#line 4553 "gram.y" { yyval.str = "zone"; ; break;} case 840: -#line 4563 "gram.y" +#line 4566 "gram.y" { yyval.str = yyvsp[0].str; ; break;} case 841: -#line 4564 "gram.y" +#line 4567 "gram.y" { yyval.str = "archive"; ; break;} case 842: -#line 4565 "gram.y" +#line 4568 "gram.y" { yyval.str = "cluster"; ; break;} case 843: -#line 4566 "gram.y" +#line 4569 "gram.y" { yyval.str = "constraint"; ; break;} case 844: -#line 4567 "gram.y" +#line 4570 "gram.y" { yyval.str = "cross"; ; break;} case 845: -#line 4568 "gram.y" +#line 4571 "gram.y" { yyval.str = "foreign"; ; break;} case 846: -#line 4569 "gram.y" +#line 4572 "gram.y" { yyval.str = "group"; ; break;} case 847: -#line 4570 "gram.y" +#line 4573 "gram.y" { yyval.str = "load"; ; break;} case 848: -#line 4571 "gram.y" +#line 4574 "gram.y" { yyval.str = "order"; ; break;} case 849: -#line 4572 "gram.y" +#line 4575 "gram.y" { yyval.str = "position"; ; break;} case 850: -#line 4573 "gram.y" +#line 4576 "gram.y" { yyval.str = "precision"; ; break;} case 851: -#line 4574 "gram.y" +#line 4577 "gram.y" { yyval.str = "table"; ; break;} case 852: -#line 4575 "gram.y" +#line 4578 "gram.y" { yyval.str = "transaction"; ; break;} case 853: -#line 4576 "gram.y" +#line 4579 "gram.y" { yyval.str = "true"; ; break;} case 854: -#line 4577 "gram.y" +#line 4580 "gram.y" { yyval.str = "false"; ; break;} case 855: -#line 4581 "gram.y" +#line 4584 "gram.y" { if (QueryIsRule) yyval.str = "*CURRENT*"; @@ -9599,7 +9602,7 @@ case 855: ; break;} case 856: -#line 4588 "gram.y" +#line 4591 "gram.y" { if (QueryIsRule) yyval.str = "*NEW*"; @@ -9805,7 +9808,7 @@ yyerrhandle: yystate = yyn; goto yynewstate; } -#line 4596 "gram.y" +#line 4599 "gram.y" static Node * diff --git a/src/configure.in b/src/configure.in index b81d129ef331fa916615f2f38fe210819b7f8cc4..a4673afacb1e20452e494c6c90e77d35d2665d9a 100644 --- a/src/configure.in +++ b/src/configure.in @@ -596,7 +596,7 @@ int does_int64_work() main() { exit(! does_int64_work()); }], - [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_LONG_LONG_INT_64)], + [AC_DEFINE(HAVE_LONG_LONG_INT_64) AC_MSG_RESULT(yes)], AC_MSG_RESULT(no), AC_MSG_RESULT(assuming not on target machine))