From 67a9422e78720ba8df7a521d569bc6a0cd09d911 Mon Sep 17 00:00:00 2001 From: Kirill Yukhin <kyukhin@tarantool.org> Date: Wed, 24 Jan 2018 07:55:59 +0300 Subject: [PATCH] sql: add regenerated pase file. Add forgotten in previous commit regenerated box/sql/parse.c --- src/box/sql/parse.c | 2696 +++++++++++++++++++++---------------------- 1 file changed, 1333 insertions(+), 1363 deletions(-) diff --git a/src/box/sql/parse.c b/src/box/sql/parse.c index f7a7f7491a..b5f1030b85 100644 --- a/src/box/sql/parse.c +++ b/src/box/sql/parse.c @@ -287,25 +287,25 @@ static void disableLookaside(Parse *pParse){ #endif /************* Begin control #defines *****************************************/ #define YYCODETYPE unsigned char -#define YYNOCODE 234 +#define YYNOCODE 231 #define YYACTIONTYPE unsigned short int #define YYWILDCARD 74 #define sqlite3ParserTOKENTYPE Token typedef union { int yyinit; sqlite3ParserTOKENTYPE yy0; - struct TrigEvent yy60; - SrcList* yy73; - ExprSpan yy200; - TriggerStep* yy251; - ExprList* yy272; - Expr* yy294; - Select* yy309; - int yy322; - struct {int value; int mask;} yy369; - struct LimitVal yy400; - IdList* yy436; - With* yy445; + struct TrigEvent yy10; + IdList* yy40; + int yy52; + struct {int value; int mask;} yy107; + With* yy151; + ExprSpan yy162; + Select* yy279; + Expr* yy362; + ExprList* yy382; + struct LimitVal yy384; + SrcList* yy387; + TriggerStep* yy427; } YYMINORTYPE; #ifndef YYSTACKDEPTH #define YYSTACKDEPTH 100 @@ -315,16 +315,16 @@ typedef union { #define sqlite3ParserARG_FETCH Parse *pParse = yypParser->pParse #define sqlite3ParserARG_STORE yypParser->pParse = pParse #define YYFALLBACK 1 -#define YYNSTATE 417 -#define YYNRULE 303 -#define YY_MAX_SHIFT 416 -#define YY_MIN_SHIFTREDUCE 614 -#define YY_MAX_SHIFTREDUCE 916 -#define YY_MIN_REDUCE 917 -#define YY_MAX_REDUCE 1219 -#define YY_ERROR_ACTION 1220 -#define YY_ACCEPT_ACTION 1221 -#define YY_NO_ACTION 1222 +#define YYNSTATE 412 +#define YYNRULE 299 +#define YY_MAX_SHIFT 411 +#define YY_MIN_SHIFTREDUCE 608 +#define YY_MAX_SHIFTREDUCE 906 +#define YY_MIN_REDUCE 907 +#define YY_MAX_REDUCE 1205 +#define YY_ERROR_ACTION 1206 +#define YY_ACCEPT_ACTION 1207 +#define YY_NO_ACTION 1208 /************* End control #defines *******************************************/ /* Define the yytestcase() macro to be a no-op if is not already defined @@ -396,303 +396,301 @@ typedef union { ** yy_default[] Default action for each state. ** *********** Begin parsing tables **********************************************/ -#define YY_ACTTAB_COUNT (1413) +#define YY_ACTTAB_COUNT (1406) static const YYACTIONTYPE yy_action[] = { - /* 0 */ 91, 92, 291, 82, 781, 781, 793, 796, 785, 785, - /* 10 */ 89, 89, 90, 90, 90, 90, 313, 88, 88, 88, - /* 20 */ 88, 87, 87, 86, 86, 86, 85, 313, 90, 90, + /* 0 */ 91, 92, 287, 82, 775, 775, 787, 790, 779, 779, + /* 10 */ 89, 89, 90, 90, 90, 90, 309, 88, 88, 88, + /* 20 */ 88, 87, 87, 86, 86, 86, 85, 309, 90, 90, /* 30 */ 90, 90, 83, 88, 88, 88, 88, 87, 87, 86, - /* 40 */ 86, 86, 85, 313, 212, 124, 899, 90, 90, 90, - /* 50 */ 90, 640, 88, 88, 88, 88, 87, 87, 86, 86, - /* 60 */ 86, 85, 313, 87, 87, 86, 86, 86, 85, 313, - /* 70 */ 899, 86, 86, 86, 85, 313, 91, 92, 291, 82, - /* 80 */ 781, 781, 793, 796, 785, 785, 89, 89, 90, 90, - /* 90 */ 90, 90, 643, 88, 88, 88, 88, 87, 87, 86, - /* 100 */ 86, 86, 85, 313, 91, 92, 291, 82, 781, 781, - /* 110 */ 793, 796, 785, 785, 89, 89, 90, 90, 90, 90, - /* 120 */ 730, 88, 88, 88, 88, 87, 87, 86, 86, 86, - /* 130 */ 85, 313, 750, 91, 92, 291, 82, 781, 781, 793, - /* 140 */ 796, 785, 785, 89, 89, 90, 90, 90, 90, 67, + /* 40 */ 86, 86, 85, 309, 210, 122, 891, 90, 90, 90, + /* 50 */ 90, 634, 88, 88, 88, 88, 87, 87, 86, 86, + /* 60 */ 86, 85, 309, 87, 87, 86, 86, 86, 85, 309, + /* 70 */ 891, 86, 86, 86, 85, 309, 91, 92, 287, 82, + /* 80 */ 775, 775, 787, 790, 779, 779, 89, 89, 90, 90, + /* 90 */ 90, 90, 637, 88, 88, 88, 88, 87, 87, 86, + /* 100 */ 86, 86, 85, 309, 91, 92, 287, 82, 775, 775, + /* 110 */ 787, 790, 779, 779, 89, 89, 90, 90, 90, 90, + /* 120 */ 724, 88, 88, 88, 88, 87, 87, 86, 86, 86, + /* 130 */ 85, 309, 636, 91, 92, 287, 82, 775, 775, 787, + /* 140 */ 790, 779, 779, 89, 89, 90, 90, 90, 90, 67, /* 150 */ 88, 88, 88, 88, 87, 87, 86, 86, 86, 85, - /* 160 */ 313, 782, 782, 794, 797, 110, 93, 84, 81, 178, - /* 170 */ 311, 310, 676, 655, 729, 373, 248, 694, 694, 731, - /* 180 */ 732, 676, 91, 92, 291, 82, 781, 781, 793, 796, - /* 190 */ 785, 785, 89, 89, 90, 90, 90, 90, 341, 88, - /* 200 */ 88, 88, 88, 87, 87, 86, 86, 86, 85, 313, + /* 160 */ 309, 776, 776, 788, 791, 320, 93, 84, 81, 176, + /* 170 */ 307, 306, 1207, 411, 3, 723, 245, 609, 312, 725, + /* 180 */ 726, 376, 91, 92, 287, 82, 775, 775, 787, 790, + /* 190 */ 779, 779, 89, 89, 90, 90, 90, 90, 883, 88, + /* 200 */ 88, 88, 88, 87, 87, 86, 86, 86, 85, 309, /* 210 */ 88, 88, 88, 88, 87, 87, 86, 86, 86, 85, - /* 220 */ 313, 84, 81, 178, 642, 648, 1221, 416, 3, 833, - /* 230 */ 786, 91, 92, 291, 82, 781, 781, 793, 796, 785, - /* 240 */ 785, 89, 89, 90, 90, 90, 90, 369, 88, 88, - /* 250 */ 88, 88, 87, 87, 86, 86, 86, 85, 313, 910, - /* 260 */ 753, 910, 187, 415, 415, 174, 891, 716, 771, 222, - /* 270 */ 764, 121, 884, 759, 641, 689, 241, 338, 240, 659, - /* 280 */ 91, 92, 291, 82, 781, 781, 793, 796, 785, 785, - /* 290 */ 89, 89, 90, 90, 90, 90, 884, 88, 88, 88, - /* 300 */ 88, 87, 87, 86, 86, 86, 85, 313, 22, 378, - /* 310 */ 763, 763, 765, 203, 699, 143, 364, 361, 360, 698, - /* 320 */ 167, 716, 709, 772, 286, 124, 9, 9, 359, 91, - /* 330 */ 92, 291, 82, 781, 781, 793, 796, 785, 785, 89, - /* 340 */ 89, 90, 90, 90, 90, 753, 88, 88, 88, 88, - /* 350 */ 87, 87, 86, 86, 86, 85, 313, 702, 1170, 1170, - /* 360 */ 887, 241, 328, 229, 84, 81, 178, 143, 650, 84, - /* 370 */ 81, 178, 758, 278, 220, 374, 287, 381, 91, 92, - /* 380 */ 291, 82, 781, 781, 793, 796, 785, 785, 89, 89, - /* 390 */ 90, 90, 90, 90, 124, 88, 88, 88, 88, 87, - /* 400 */ 87, 86, 86, 86, 85, 313, 91, 92, 291, 82, - /* 410 */ 781, 781, 793, 796, 785, 785, 89, 89, 90, 90, - /* 420 */ 90, 90, 382, 88, 88, 88, 88, 87, 87, 86, - /* 430 */ 86, 86, 85, 313, 91, 92, 291, 82, 781, 781, - /* 440 */ 793, 796, 785, 785, 89, 89, 90, 90, 90, 90, - /* 450 */ 658, 88, 88, 88, 88, 87, 87, 86, 86, 86, - /* 460 */ 85, 313, 91, 92, 291, 82, 781, 781, 793, 796, - /* 470 */ 785, 785, 89, 89, 90, 90, 90, 90, 147, 88, - /* 480 */ 88, 88, 88, 87, 87, 86, 86, 86, 85, 313, - /* 490 */ 410, 410, 410, 615, 316, 70, 92, 291, 82, 781, - /* 500 */ 781, 793, 796, 785, 785, 89, 89, 90, 90, 90, - /* 510 */ 90, 657, 88, 88, 88, 88, 87, 87, 86, 86, - /* 520 */ 86, 85, 313, 73, 312, 312, 312, 634, 634, 91, - /* 530 */ 80, 291, 82, 781, 781, 793, 796, 785, 785, 89, - /* 540 */ 89, 90, 90, 90, 90, 211, 88, 88, 88, 88, - /* 550 */ 87, 87, 86, 86, 86, 85, 313, 291, 82, 781, - /* 560 */ 781, 793, 796, 785, 785, 89, 89, 90, 90, 90, + /* 220 */ 309, 122, 84, 81, 176, 642, 377, 1158, 1158, 827, + /* 230 */ 780, 91, 92, 287, 82, 775, 775, 787, 790, 779, + /* 240 */ 779, 89, 89, 90, 90, 90, 90, 364, 88, 88, + /* 250 */ 88, 88, 87, 87, 86, 86, 86, 85, 309, 902, + /* 260 */ 747, 902, 122, 410, 410, 172, 653, 710, 765, 220, + /* 270 */ 758, 119, 876, 753, 635, 683, 238, 333, 237, 652, + /* 280 */ 91, 92, 287, 82, 775, 775, 787, 790, 779, 779, + /* 290 */ 89, 89, 90, 90, 90, 90, 876, 88, 88, 88, + /* 300 */ 88, 87, 87, 86, 86, 86, 85, 309, 22, 747, + /* 310 */ 757, 757, 759, 201, 693, 651, 359, 356, 355, 692, + /* 320 */ 165, 710, 703, 766, 122, 238, 333, 237, 354, 91, + /* 330 */ 92, 287, 82, 775, 775, 787, 790, 779, 779, 89, + /* 340 */ 89, 90, 90, 90, 90, 747, 88, 88, 88, 88, + /* 350 */ 87, 87, 86, 86, 86, 85, 309, 696, 84, 81, + /* 360 */ 176, 238, 323, 226, 405, 405, 405, 670, 649, 84, + /* 370 */ 81, 176, 752, 122, 218, 369, 670, 340, 91, 92, + /* 380 */ 287, 82, 775, 775, 787, 790, 779, 779, 89, 89, + /* 390 */ 90, 90, 90, 90, 209, 88, 88, 88, 88, 87, + /* 400 */ 87, 86, 86, 86, 85, 309, 91, 92, 287, 82, + /* 410 */ 775, 775, 787, 790, 779, 779, 89, 89, 90, 90, + /* 420 */ 90, 90, 341, 88, 88, 88, 88, 87, 87, 86, + /* 430 */ 86, 86, 85, 309, 91, 92, 287, 82, 775, 775, + /* 440 */ 787, 790, 779, 779, 89, 89, 90, 90, 90, 90, + /* 450 */ 379, 88, 88, 88, 88, 87, 87, 86, 86, 86, + /* 460 */ 85, 309, 91, 92, 287, 82, 775, 775, 787, 790, + /* 470 */ 779, 779, 89, 89, 90, 90, 90, 90, 145, 88, + /* 480 */ 88, 88, 88, 87, 87, 86, 86, 86, 85, 309, + /* 490 */ 308, 308, 308, 85, 309, 70, 92, 287, 82, 775, + /* 500 */ 775, 787, 790, 779, 779, 89, 89, 90, 90, 90, + /* 510 */ 90, 164, 88, 88, 88, 88, 87, 87, 86, 86, + /* 520 */ 86, 85, 309, 73, 628, 628, 833, 833, 328, 91, + /* 530 */ 80, 287, 82, 775, 775, 787, 790, 779, 779, 89, + /* 540 */ 89, 90, 90, 90, 90, 390, 88, 88, 88, 88, + /* 550 */ 87, 87, 86, 86, 86, 85, 309, 287, 82, 775, + /* 560 */ 775, 787, 790, 779, 779, 89, 89, 90, 90, 90, /* 570 */ 90, 78, 88, 88, 88, 88, 87, 87, 86, 86, - /* 580 */ 86, 85, 313, 179, 179, 839, 839, 333, 305, 139, - /* 590 */ 75, 76, 715, 634, 634, 377, 285, 77, 269, 283, - /* 600 */ 282, 281, 224, 279, 753, 78, 628, 85, 313, 412, - /* 610 */ 408, 2, 1113, 302, 323, 314, 314, 412, 634, 634, - /* 620 */ 241, 338, 240, 850, 75, 76, 10, 10, 323, 322, - /* 630 */ 319, 77, 397, 184, 10, 10, 384, 771, 352, 764, - /* 640 */ 299, 349, 759, 270, 408, 2, 269, 412, 301, 314, - /* 650 */ 314, 212, 166, 899, 292, 391, 110, 221, 157, 258, - /* 660 */ 367, 253, 366, 207, 48, 48, 397, 761, 395, 124, - /* 670 */ 251, 771, 347, 764, 412, 300, 759, 899, 317, 763, - /* 680 */ 763, 765, 766, 411, 18, 716, 406, 186, 110, 169, - /* 690 */ 323, 48, 48, 182, 320, 325, 124, 347, 124, 390, - /* 700 */ 392, 761, 145, 412, 836, 412, 835, 412, 356, 78, - /* 710 */ 205, 371, 331, 763, 763, 765, 766, 411, 18, 412, - /* 720 */ 30, 30, 48, 48, 48, 48, 390, 375, 75, 76, - /* 730 */ 703, 347, 124, 412, 402, 77, 48, 48, 167, 716, - /* 740 */ 311, 310, 140, 78, 110, 757, 634, 634, 408, 2, - /* 750 */ 10, 10, 124, 314, 314, 372, 192, 390, 380, 390, - /* 760 */ 389, 412, 75, 76, 202, 634, 634, 634, 634, 77, - /* 770 */ 397, 390, 370, 852, 341, 771, 412, 764, 48, 48, - /* 780 */ 759, 239, 408, 2, 74, 293, 72, 314, 314, 905, - /* 790 */ 251, 909, 203, 48, 48, 364, 361, 360, 907, 1193, - /* 800 */ 908, 671, 855, 336, 397, 761, 110, 359, 332, 771, - /* 810 */ 270, 764, 715, 306, 759, 195, 856, 763, 763, 765, - /* 820 */ 766, 411, 18, 898, 857, 682, 324, 412, 385, 910, - /* 830 */ 339, 910, 683, 343, 179, 179, 159, 158, 193, 761, - /* 840 */ 826, 828, 309, 23, 10, 10, 377, 68, 337, 852, - /* 850 */ 228, 763, 763, 765, 766, 411, 18, 95, 387, 412, - /* 860 */ 326, 644, 644, 260, 246, 143, 75, 76, 163, 162, - /* 870 */ 161, 379, 762, 77, 290, 155, 47, 47, 662, 900, - /* 880 */ 900, 165, 110, 771, 365, 764, 408, 2, 759, 663, - /* 890 */ 262, 314, 314, 204, 5, 204, 212, 264, 899, 900, - /* 900 */ 900, 816, 826, 234, 110, 24, 339, 303, 397, 634, - /* 910 */ 634, 412, 715, 771, 245, 764, 412, 704, 759, 164, - /* 920 */ 176, 412, 899, 855, 348, 763, 763, 765, 34, 34, - /* 930 */ 268, 901, 718, 35, 35, 220, 374, 856, 36, 36, - /* 940 */ 634, 634, 267, 761, 107, 857, 396, 237, 638, 412, - /* 950 */ 188, 901, 717, 233, 691, 763, 763, 765, 766, 411, - /* 960 */ 18, 412, 715, 7, 412, 377, 37, 37, 681, 681, - /* 970 */ 412, 699, 638, 412, 715, 412, 698, 412, 38, 38, - /* 980 */ 412, 26, 26, 757, 232, 412, 231, 27, 27, 412, - /* 990 */ 29, 29, 39, 39, 40, 40, 412, 41, 41, 412, - /* 1000 */ 189, 412, 11, 11, 66, 412, 42, 42, 864, 412, - /* 1010 */ 219, 412, 858, 97, 97, 863, 43, 43, 44, 44, - /* 1020 */ 54, 412, 31, 31, 412, 861, 45, 45, 46, 46, - /* 1030 */ 412, 715, 412, 111, 412, 151, 412, 653, 32, 32, - /* 1040 */ 412, 113, 113, 412, 257, 412, 296, 114, 114, 115, - /* 1050 */ 115, 52, 52, 33, 33, 256, 412, 98, 98, 412, - /* 1060 */ 49, 49, 99, 99, 412, 757, 412, 715, 412, 329, - /* 1070 */ 412, 757, 412, 100, 100, 412, 96, 96, 412, 679, - /* 1080 */ 679, 112, 112, 109, 109, 104, 104, 103, 103, 101, - /* 1090 */ 101, 412, 102, 102, 412, 51, 51, 412, 1, 171, - /* 1100 */ 412, 715, 634, 634, 715, 688, 633, 294, 53, 53, - /* 1110 */ 687, 50, 50, 757, 25, 25, 345, 28, 28, 632, - /* 1120 */ 409, 294, 399, 403, 205, 407, 731, 732, 297, 177, - /* 1130 */ 176, 755, 20, 210, 298, 340, 342, 210, 210, 684, - /* 1140 */ 651, 651, 236, 110, 242, 357, 66, 216, 249, 668, - /* 1150 */ 66, 180, 110, 661, 660, 110, 110, 321, 110, 823, - /* 1160 */ 823, 346, 64, 19, 148, 696, 725, 69, 210, 819, - /* 1170 */ 832, 216, 832, 831, 830, 831, 307, 636, 295, 106, - /* 1180 */ 745, 767, 767, 327, 230, 824, 170, 849, 238, 847, - /* 1190 */ 344, 846, 350, 362, 351, 160, 244, 627, 247, 293, - /* 1200 */ 672, 656, 655, 669, 252, 937, 723, 255, 756, 266, - /* 1210 */ 705, 398, 271, 272, 277, 639, 156, 880, 625, 624, - /* 1220 */ 125, 626, 877, 821, 916, 820, 137, 126, 119, 742, - /* 1230 */ 330, 55, 64, 834, 335, 235, 355, 149, 368, 191, - /* 1240 */ 146, 128, 198, 199, 200, 304, 130, 653, 131, 675, - /* 1250 */ 353, 288, 383, 132, 133, 674, 63, 6, 141, 752, - /* 1260 */ 801, 673, 71, 308, 94, 647, 388, 289, 646, 851, - /* 1270 */ 666, 65, 815, 386, 254, 645, 665, 889, 21, 878, - /* 1280 */ 226, 617, 620, 223, 315, 225, 414, 622, 413, 227, - /* 1290 */ 621, 618, 401, 284, 181, 183, 318, 108, 829, 827, - /* 1300 */ 405, 185, 751, 116, 117, 122, 127, 129, 685, 190, - /* 1310 */ 118, 837, 713, 210, 134, 845, 912, 334, 136, 135, - /* 1320 */ 105, 138, 206, 56, 259, 57, 276, 714, 261, 695, - /* 1330 */ 712, 263, 273, 711, 274, 265, 275, 58, 59, 213, - /* 1340 */ 848, 123, 194, 196, 844, 8, 12, 150, 197, 630, - /* 1350 */ 243, 214, 215, 354, 256, 201, 358, 142, 363, 60, - /* 1360 */ 13, 208, 664, 250, 14, 61, 120, 770, 769, 693, - /* 1370 */ 172, 799, 15, 4, 62, 697, 209, 173, 376, 175, - /* 1380 */ 144, 16, 724, 719, 69, 66, 814, 17, 800, 798, - /* 1390 */ 854, 393, 803, 853, 394, 168, 400, 870, 152, 153, - /* 1400 */ 217, 871, 218, 154, 404, 802, 768, 637, 79, 280, - /* 1410 */ 631, 614, 1175, + /* 580 */ 86, 85, 309, 218, 369, 698, 141, 374, 301, 141, + /* 590 */ 75, 76, 275, 628, 628, 283, 282, 77, 286, 280, + /* 600 */ 279, 278, 222, 276, 849, 78, 622, 143, 628, 628, + /* 610 */ 403, 2, 1103, 298, 318, 310, 310, 202, 850, 202, + /* 620 */ 109, 342, 879, 407, 75, 76, 851, 676, 318, 317, + /* 630 */ 644, 77, 392, 182, 677, 162, 174, 765, 336, 758, + /* 640 */ 48, 48, 753, 347, 403, 2, 344, 407, 137, 310, + /* 650 */ 310, 407, 628, 628, 288, 386, 266, 219, 155, 255, + /* 660 */ 362, 250, 361, 205, 48, 48, 392, 755, 48, 48, + /* 670 */ 248, 765, 709, 758, 407, 302, 753, 675, 675, 757, + /* 680 */ 757, 759, 760, 406, 18, 673, 673, 184, 109, 846, + /* 690 */ 318, 48, 48, 180, 315, 122, 336, 122, 751, 385, + /* 700 */ 387, 755, 185, 385, 370, 190, 373, 307, 306, 78, + /* 710 */ 314, 628, 628, 757, 757, 759, 760, 406, 18, 210, + /* 720 */ 407, 891, 109, 9, 9, 331, 385, 375, 75, 76, + /* 730 */ 697, 122, 628, 628, 167, 77, 201, 48, 48, 359, + /* 740 */ 356, 355, 401, 78, 685, 891, 334, 267, 403, 2, + /* 750 */ 20, 354, 266, 310, 310, 372, 897, 744, 901, 23, + /* 760 */ 191, 327, 75, 76, 332, 899, 342, 900, 407, 77, + /* 770 */ 392, 267, 385, 384, 217, 765, 407, 758, 849, 296, + /* 780 */ 753, 19, 403, 2, 54, 10, 10, 310, 310, 407, + /* 790 */ 109, 338, 850, 48, 48, 407, 902, 366, 902, 295, + /* 800 */ 851, 391, 709, 305, 392, 755, 30, 30, 830, 765, + /* 810 */ 829, 758, 10, 10, 753, 407, 326, 757, 757, 759, + /* 820 */ 760, 406, 18, 177, 177, 407, 297, 407, 385, 365, + /* 830 */ 109, 407, 10, 10, 709, 372, 157, 156, 397, 755, + /* 840 */ 225, 367, 48, 48, 10, 10, 200, 68, 47, 47, + /* 850 */ 236, 757, 757, 759, 760, 406, 18, 95, 382, 231, + /* 860 */ 319, 638, 638, 846, 243, 656, 75, 76, 351, 756, + /* 870 */ 203, 360, 186, 77, 820, 822, 657, 380, 177, 177, + /* 880 */ 892, 892, 146, 765, 709, 758, 403, 2, 753, 203, + /* 890 */ 372, 310, 310, 5, 299, 210, 109, 891, 257, 892, + /* 900 */ 892, 810, 265, 709, 321, 74, 407, 72, 392, 230, + /* 910 */ 826, 407, 826, 765, 242, 758, 709, 407, 753, 254, + /* 920 */ 334, 891, 187, 34, 34, 757, 757, 759, 35, 35, + /* 930 */ 253, 407, 893, 712, 36, 36, 820, 110, 343, 149, + /* 940 */ 229, 852, 228, 755, 407, 289, 709, 234, 37, 37, + /* 950 */ 248, 893, 711, 259, 324, 757, 757, 759, 760, 406, + /* 960 */ 18, 38, 38, 407, 289, 407, 161, 160, 159, 407, + /* 970 */ 709, 407, 7, 407, 138, 407, 261, 407, 628, 628, + /* 980 */ 26, 26, 27, 27, 682, 407, 29, 29, 39, 39, + /* 990 */ 40, 40, 41, 41, 11, 11, 407, 709, 407, 693, + /* 1000 */ 407, 163, 42, 42, 692, 407, 342, 407, 678, 407, + /* 1010 */ 264, 407, 710, 97, 97, 43, 43, 44, 44, 407, + /* 1020 */ 751, 407, 31, 31, 45, 45, 46, 46, 32, 32, + /* 1030 */ 407, 1181, 407, 665, 407, 233, 112, 112, 113, 113, + /* 1040 */ 407, 751, 858, 407, 751, 407, 844, 114, 114, 52, + /* 1050 */ 52, 33, 33, 407, 857, 407, 681, 98, 98, 407, + /* 1060 */ 49, 49, 99, 99, 407, 165, 710, 407, 751, 407, + /* 1070 */ 100, 100, 96, 96, 169, 407, 111, 111, 407, 109, + /* 1080 */ 407, 108, 108, 292, 104, 104, 103, 103, 407, 109, + /* 1090 */ 193, 407, 101, 101, 407, 102, 102, 51, 51, 407, + /* 1100 */ 368, 626, 688, 688, 293, 53, 53, 294, 50, 50, + /* 1110 */ 24, 25, 25, 662, 628, 628, 28, 28, 1, 394, + /* 1120 */ 107, 398, 628, 628, 632, 627, 290, 402, 404, 290, + /* 1130 */ 66, 303, 175, 174, 109, 725, 726, 64, 890, 749, + /* 1140 */ 335, 208, 208, 337, 239, 208, 66, 352, 632, 214, + /* 1150 */ 855, 246, 109, 66, 109, 645, 645, 178, 655, 654, + /* 1160 */ 109, 316, 690, 647, 69, 824, 719, 663, 208, 291, + /* 1170 */ 817, 817, 813, 825, 214, 825, 630, 739, 106, 322, + /* 1180 */ 761, 761, 227, 818, 168, 235, 843, 841, 339, 840, + /* 1190 */ 153, 345, 346, 241, 621, 244, 357, 666, 650, 649, + /* 1200 */ 158, 252, 249, 717, 750, 263, 393, 699, 815, 268, + /* 1210 */ 814, 927, 269, 274, 872, 154, 135, 633, 619, 618, + /* 1220 */ 124, 620, 869, 117, 64, 736, 325, 55, 330, 828, + /* 1230 */ 126, 350, 232, 189, 196, 144, 128, 129, 197, 147, + /* 1240 */ 363, 198, 130, 300, 647, 131, 669, 139, 348, 746, + /* 1250 */ 378, 668, 284, 6, 63, 795, 845, 71, 211, 667, + /* 1260 */ 304, 94, 383, 285, 660, 640, 21, 641, 65, 251, + /* 1270 */ 639, 809, 659, 381, 881, 870, 224, 611, 614, 221, + /* 1280 */ 311, 396, 223, 408, 409, 616, 179, 615, 612, 281, + /* 1290 */ 115, 313, 400, 123, 181, 823, 821, 183, 745, 125, + /* 1300 */ 116, 120, 127, 679, 188, 831, 105, 204, 208, 132, + /* 1310 */ 133, 839, 329, 707, 904, 136, 256, 134, 56, 708, + /* 1320 */ 258, 273, 271, 689, 706, 260, 270, 705, 262, 272, + /* 1330 */ 57, 58, 59, 121, 842, 192, 838, 194, 8, 212, + /* 1340 */ 12, 240, 253, 195, 213, 148, 624, 349, 199, 353, + /* 1350 */ 140, 358, 60, 13, 206, 247, 14, 118, 61, 687, + /* 1360 */ 764, 763, 658, 170, 713, 793, 15, 4, 62, 691, + /* 1370 */ 207, 171, 371, 173, 142, 16, 718, 17, 69, 66, + /* 1380 */ 808, 794, 792, 797, 848, 216, 847, 389, 166, 215, + /* 1390 */ 862, 150, 395, 608, 863, 151, 399, 796, 152, 1163, + /* 1400 */ 762, 388, 631, 79, 277, 625, }; static const YYCODETYPE yy_lookahead[] = { /* 0 */ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, /* 10 */ 15, 16, 17, 18, 19, 20, 32, 22, 23, 24, /* 20 */ 25, 26, 27, 28, 29, 30, 31, 32, 17, 18, /* 30 */ 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - /* 40 */ 29, 30, 31, 32, 49, 134, 51, 17, 18, 19, - /* 50 */ 20, 161, 22, 23, 24, 25, 26, 27, 28, 29, + /* 40 */ 29, 30, 31, 32, 49, 133, 51, 17, 18, 19, + /* 50 */ 20, 160, 22, 23, 24, 25, 26, 27, 28, 29, /* 60 */ 30, 31, 32, 26, 27, 28, 29, 30, 31, 32, /* 70 */ 75, 28, 29, 30, 31, 32, 5, 6, 7, 8, /* 80 */ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - /* 90 */ 19, 20, 161, 22, 23, 24, 25, 26, 27, 28, + /* 90 */ 19, 20, 160, 22, 23, 24, 25, 26, 27, 28, /* 100 */ 29, 30, 31, 32, 5, 6, 7, 8, 9, 10, /* 110 */ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - /* 120 */ 164, 22, 23, 24, 25, 26, 27, 28, 29, 30, - /* 130 */ 31, 32, 152, 5, 6, 7, 8, 9, 10, 11, + /* 120 */ 163, 22, 23, 24, 25, 26, 27, 28, 29, 30, + /* 130 */ 31, 32, 160, 5, 6, 7, 8, 9, 10, 11, /* 140 */ 12, 13, 14, 15, 16, 17, 18, 19, 20, 50, /* 150 */ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - /* 160 */ 32, 9, 10, 11, 12, 185, 67, 211, 212, 213, - /* 170 */ 26, 27, 168, 169, 164, 94, 48, 96, 97, 108, - /* 180 */ 109, 177, 5, 6, 7, 8, 9, 10, 11, 12, - /* 190 */ 13, 14, 15, 16, 17, 18, 19, 20, 144, 22, + /* 160 */ 32, 9, 10, 11, 12, 77, 67, 210, 211, 212, + /* 170 */ 26, 27, 136, 137, 138, 163, 48, 1, 2, 108, + /* 180 */ 109, 7, 5, 6, 7, 8, 9, 10, 11, 12, + /* 190 */ 13, 14, 15, 16, 17, 18, 19, 20, 173, 22, /* 200 */ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, /* 210 */ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - /* 220 */ 32, 211, 212, 213, 161, 48, 137, 138, 139, 38, + /* 220 */ 32, 133, 210, 211, 212, 48, 52, 98, 99, 38, /* 230 */ 78, 5, 6, 7, 8, 9, 10, 11, 12, 13, /* 240 */ 14, 15, 16, 17, 18, 19, 20, 28, 22, 23, /* 250 */ 24, 25, 26, 27, 28, 29, 30, 31, 32, 115, - /* 260 */ 69, 117, 208, 140, 141, 48, 174, 50, 73, 146, - /* 270 */ 75, 148, 51, 78, 48, 152, 85, 86, 87, 170, + /* 260 */ 69, 117, 133, 139, 140, 48, 169, 50, 73, 145, + /* 270 */ 75, 147, 51, 78, 48, 151, 85, 86, 87, 169, /* 280 */ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, /* 290 */ 15, 16, 17, 18, 19, 20, 75, 22, 23, 24, - /* 300 */ 25, 26, 27, 28, 29, 30, 31, 32, 185, 144, - /* 310 */ 115, 116, 117, 76, 95, 144, 79, 80, 81, 100, - /* 320 */ 103, 104, 202, 48, 153, 134, 161, 162, 91, 5, + /* 300 */ 25, 26, 27, 28, 29, 30, 31, 32, 184, 69, + /* 310 */ 115, 116, 117, 76, 95, 169, 79, 80, 81, 100, + /* 320 */ 103, 104, 201, 48, 133, 85, 86, 87, 91, 5, /* 330 */ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, /* 340 */ 16, 17, 18, 19, 20, 69, 22, 23, 24, 25, - /* 350 */ 26, 27, 28, 29, 30, 31, 32, 199, 98, 99, - /* 360 */ 160, 85, 86, 87, 211, 212, 213, 144, 168, 211, - /* 370 */ 212, 213, 48, 150, 98, 99, 153, 7, 5, 6, + /* 350 */ 26, 27, 28, 29, 30, 31, 32, 198, 210, 211, + /* 360 */ 212, 85, 86, 87, 156, 157, 158, 167, 168, 210, + /* 370 */ 211, 212, 48, 133, 98, 99, 176, 7, 5, 6, /* 380 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - /* 390 */ 17, 18, 19, 20, 134, 22, 23, 24, 25, 26, + /* 390 */ 17, 18, 19, 20, 198, 22, 23, 24, 25, 26, /* 400 */ 27, 28, 29, 30, 31, 32, 5, 6, 7, 8, /* 410 */ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, /* 420 */ 19, 20, 52, 22, 23, 24, 25, 26, 27, 28, /* 430 */ 29, 30, 31, 32, 5, 6, 7, 8, 9, 10, /* 440 */ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - /* 450 */ 170, 22, 23, 24, 25, 26, 27, 28, 29, 30, + /* 450 */ 205, 22, 23, 24, 25, 26, 27, 28, 29, 30, /* 460 */ 31, 32, 5, 6, 7, 8, 9, 10, 11, 12, /* 470 */ 13, 14, 15, 16, 17, 18, 19, 20, 49, 22, /* 480 */ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - /* 490 */ 157, 158, 159, 1, 2, 122, 6, 7, 8, 9, + /* 490 */ 156, 157, 158, 31, 32, 122, 6, 7, 8, 9, /* 500 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* 510 */ 20, 170, 22, 23, 24, 25, 26, 27, 28, 29, - /* 520 */ 30, 31, 32, 122, 157, 158, 159, 51, 52, 5, + /* 510 */ 20, 205, 22, 23, 24, 25, 26, 27, 28, 29, + /* 520 */ 30, 31, 32, 122, 51, 52, 85, 86, 87, 5, /* 530 */ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - /* 540 */ 16, 17, 18, 19, 20, 199, 22, 23, 24, 25, + /* 540 */ 16, 17, 18, 19, 20, 179, 22, 23, 24, 25, /* 550 */ 26, 27, 28, 29, 30, 31, 32, 7, 8, 9, /* 560 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, /* 570 */ 20, 7, 22, 23, 24, 25, 26, 27, 28, 29, - /* 580 */ 30, 31, 32, 183, 184, 85, 86, 87, 7, 47, - /* 590 */ 26, 27, 144, 51, 52, 195, 34, 33, 144, 37, - /* 600 */ 38, 39, 40, 41, 69, 7, 44, 31, 32, 144, - /* 610 */ 46, 47, 48, 32, 144, 51, 52, 144, 51, 52, - /* 620 */ 85, 86, 87, 152, 26, 27, 161, 162, 158, 159, - /* 630 */ 182, 33, 68, 71, 161, 162, 206, 73, 218, 75, - /* 640 */ 175, 221, 78, 144, 46, 47, 144, 144, 175, 51, - /* 650 */ 52, 49, 206, 51, 92, 152, 185, 76, 77, 78, - /* 660 */ 79, 80, 81, 82, 161, 162, 68, 103, 180, 134, - /* 670 */ 89, 73, 144, 75, 144, 176, 78, 75, 230, 115, - /* 680 */ 116, 117, 118, 119, 120, 50, 232, 125, 185, 223, - /* 690 */ 220, 161, 162, 131, 132, 77, 134, 144, 134, 196, - /* 700 */ 197, 103, 135, 144, 56, 144, 58, 144, 7, 7, - /* 710 */ 9, 152, 64, 115, 116, 117, 118, 119, 120, 144, - /* 720 */ 161, 162, 161, 162, 161, 162, 196, 197, 26, 27, - /* 730 */ 28, 144, 134, 144, 232, 33, 161, 162, 103, 104, - /* 740 */ 26, 27, 47, 7, 185, 144, 51, 52, 46, 47, - /* 750 */ 161, 162, 134, 51, 52, 196, 228, 196, 197, 196, - /* 760 */ 197, 144, 26, 27, 175, 51, 52, 51, 52, 33, - /* 770 */ 68, 196, 197, 152, 144, 73, 144, 75, 161, 162, - /* 780 */ 78, 228, 46, 47, 121, 84, 123, 51, 52, 75, - /* 790 */ 89, 77, 76, 161, 162, 79, 80, 81, 84, 48, - /* 800 */ 86, 50, 39, 224, 68, 103, 185, 91, 207, 73, - /* 810 */ 144, 75, 144, 196, 78, 228, 53, 115, 116, 117, - /* 820 */ 118, 119, 120, 50, 61, 62, 144, 144, 196, 115, - /* 830 */ 209, 117, 69, 144, 183, 184, 26, 27, 208, 103, - /* 840 */ 158, 159, 176, 222, 161, 162, 195, 7, 227, 152, - /* 850 */ 182, 115, 116, 117, 118, 119, 120, 47, 175, 144, - /* 860 */ 209, 51, 52, 199, 43, 144, 26, 27, 85, 86, - /* 870 */ 87, 152, 144, 33, 153, 102, 161, 162, 59, 51, - /* 880 */ 52, 144, 185, 73, 65, 75, 46, 47, 78, 70, - /* 890 */ 199, 51, 52, 172, 47, 174, 49, 199, 51, 51, - /* 900 */ 52, 80, 220, 43, 185, 47, 209, 88, 68, 51, - /* 910 */ 52, 144, 144, 73, 93, 75, 144, 28, 78, 200, - /* 920 */ 201, 144, 75, 39, 227, 115, 116, 117, 161, 162, - /* 930 */ 215, 103, 104, 161, 162, 98, 99, 53, 161, 162, - /* 940 */ 51, 52, 144, 103, 47, 61, 62, 126, 51, 144, - /* 950 */ 182, 103, 104, 93, 184, 115, 116, 117, 118, 119, - /* 960 */ 120, 144, 144, 187, 144, 195, 161, 162, 179, 180, - /* 970 */ 144, 95, 75, 144, 144, 144, 100, 144, 161, 162, - /* 980 */ 144, 161, 162, 144, 124, 144, 126, 161, 162, 144, - /* 990 */ 161, 162, 161, 162, 161, 162, 144, 161, 162, 144, - /* 1000 */ 182, 144, 161, 162, 50, 144, 161, 162, 144, 144, - /* 1010 */ 188, 144, 182, 161, 162, 144, 161, 162, 161, 162, - /* 1020 */ 198, 144, 161, 162, 144, 144, 161, 162, 161, 162, - /* 1030 */ 144, 144, 144, 47, 144, 49, 144, 83, 161, 162, - /* 1040 */ 144, 161, 162, 144, 78, 144, 207, 161, 162, 161, - /* 1050 */ 162, 161, 162, 161, 162, 89, 144, 161, 162, 144, - /* 1060 */ 161, 162, 161, 162, 144, 144, 144, 144, 144, 182, - /* 1070 */ 144, 144, 144, 161, 162, 144, 161, 162, 144, 179, - /* 1080 */ 180, 161, 162, 161, 162, 161, 162, 161, 162, 161, - /* 1090 */ 162, 144, 161, 162, 144, 161, 162, 144, 47, 50, - /* 1100 */ 144, 144, 51, 52, 144, 182, 155, 156, 161, 162, - /* 1110 */ 152, 161, 162, 144, 161, 162, 7, 161, 162, 152, - /* 1120 */ 155, 156, 152, 152, 9, 152, 108, 109, 207, 200, - /* 1130 */ 201, 48, 16, 50, 207, 48, 48, 50, 50, 182, - /* 1140 */ 51, 52, 182, 185, 48, 48, 50, 50, 48, 36, - /* 1150 */ 50, 47, 185, 77, 78, 185, 185, 144, 185, 51, - /* 1160 */ 52, 52, 113, 47, 186, 48, 48, 50, 50, 48, - /* 1170 */ 115, 50, 117, 115, 144, 117, 207, 48, 144, 50, - /* 1180 */ 190, 51, 52, 203, 203, 144, 144, 190, 229, 144, - /* 1190 */ 229, 144, 144, 165, 144, 173, 144, 144, 144, 84, - /* 1200 */ 144, 144, 169, 90, 144, 101, 144, 164, 144, 203, - /* 1210 */ 144, 217, 144, 144, 189, 144, 187, 147, 144, 144, - /* 1220 */ 231, 144, 144, 164, 133, 164, 47, 210, 5, 190, - /* 1230 */ 45, 121, 113, 226, 128, 225, 45, 210, 84, 149, - /* 1240 */ 47, 178, 149, 149, 149, 63, 181, 83, 181, 163, - /* 1250 */ 166, 166, 106, 181, 181, 163, 84, 47, 178, 178, - /* 1260 */ 214, 163, 121, 32, 112, 163, 107, 166, 165, 190, - /* 1270 */ 171, 111, 190, 110, 163, 163, 171, 163, 50, 40, - /* 1280 */ 35, 4, 36, 145, 3, 145, 143, 143, 151, 55, - /* 1290 */ 143, 143, 166, 142, 42, 84, 72, 43, 48, 48, - /* 1300 */ 166, 101, 99, 154, 154, 88, 114, 102, 46, 84, - /* 1310 */ 154, 127, 205, 50, 127, 1, 130, 129, 102, 84, - /* 1320 */ 167, 114, 167, 16, 204, 16, 190, 205, 204, 194, - /* 1330 */ 205, 204, 193, 205, 192, 204, 191, 16, 16, 216, - /* 1340 */ 52, 88, 105, 101, 1, 34, 47, 49, 84, 46, - /* 1350 */ 124, 219, 219, 7, 89, 82, 66, 47, 66, 47, - /* 1360 */ 47, 66, 54, 48, 47, 47, 60, 48, 48, 95, - /* 1370 */ 101, 48, 47, 47, 50, 48, 105, 48, 50, 48, - /* 1380 */ 47, 105, 52, 104, 50, 50, 48, 105, 48, 48, - /* 1390 */ 48, 75, 38, 48, 50, 47, 49, 48, 47, 47, - /* 1400 */ 50, 48, 101, 47, 49, 48, 48, 48, 47, 42, - /* 1410 */ 48, 1, 0, + /* 580 */ 30, 31, 32, 98, 99, 28, 143, 151, 7, 143, + /* 590 */ 26, 27, 149, 51, 52, 152, 34, 33, 152, 37, + /* 600 */ 38, 39, 40, 41, 39, 7, 44, 134, 51, 52, + /* 610 */ 46, 47, 48, 32, 143, 51, 52, 171, 53, 173, + /* 620 */ 184, 143, 159, 143, 26, 27, 61, 62, 157, 158, + /* 630 */ 167, 33, 68, 71, 69, 199, 200, 73, 143, 75, + /* 640 */ 160, 161, 78, 217, 46, 47, 220, 143, 47, 51, + /* 650 */ 52, 143, 51, 52, 92, 151, 143, 76, 77, 78, + /* 660 */ 79, 80, 81, 82, 160, 161, 68, 103, 160, 161, + /* 670 */ 89, 73, 143, 75, 143, 195, 78, 178, 179, 115, + /* 680 */ 116, 117, 118, 119, 120, 178, 179, 125, 184, 151, + /* 690 */ 219, 160, 161, 131, 132, 133, 143, 133, 143, 195, + /* 700 */ 196, 103, 207, 195, 196, 227, 143, 26, 27, 7, + /* 710 */ 181, 51, 52, 115, 116, 117, 118, 119, 120, 49, + /* 720 */ 143, 51, 184, 160, 161, 223, 195, 196, 26, 27, + /* 730 */ 28, 133, 51, 52, 222, 33, 76, 160, 161, 79, + /* 740 */ 80, 81, 229, 7, 183, 75, 208, 143, 46, 47, + /* 750 */ 16, 91, 143, 51, 52, 194, 75, 151, 77, 221, + /* 760 */ 207, 206, 26, 27, 226, 84, 143, 86, 143, 33, + /* 770 */ 68, 143, 195, 196, 187, 73, 143, 75, 39, 175, + /* 780 */ 78, 47, 46, 47, 197, 160, 161, 51, 52, 143, + /* 790 */ 184, 143, 53, 160, 161, 143, 115, 151, 117, 174, + /* 800 */ 61, 62, 143, 175, 68, 103, 160, 161, 56, 73, + /* 810 */ 58, 75, 160, 161, 78, 143, 64, 115, 116, 117, + /* 820 */ 118, 119, 120, 182, 183, 143, 174, 143, 195, 196, + /* 830 */ 184, 143, 160, 161, 143, 194, 26, 27, 229, 103, + /* 840 */ 181, 195, 160, 161, 160, 161, 174, 7, 160, 161, + /* 850 */ 227, 115, 116, 117, 118, 119, 120, 47, 174, 43, + /* 860 */ 143, 51, 52, 151, 43, 59, 26, 27, 7, 143, + /* 870 */ 9, 65, 181, 33, 157, 158, 70, 195, 182, 183, + /* 880 */ 51, 52, 185, 73, 143, 75, 46, 47, 78, 9, + /* 890 */ 194, 51, 52, 47, 88, 49, 184, 51, 198, 51, + /* 900 */ 52, 80, 214, 143, 208, 121, 143, 123, 68, 93, + /* 910 */ 115, 143, 117, 73, 93, 75, 143, 143, 78, 78, + /* 920 */ 208, 75, 181, 160, 161, 115, 116, 117, 160, 161, + /* 930 */ 89, 143, 103, 104, 160, 161, 219, 47, 226, 49, + /* 940 */ 124, 181, 126, 103, 143, 84, 143, 126, 160, 161, + /* 950 */ 89, 103, 104, 198, 181, 115, 116, 117, 118, 119, + /* 960 */ 120, 160, 161, 143, 84, 143, 85, 86, 87, 143, + /* 970 */ 143, 143, 186, 143, 47, 143, 198, 143, 51, 52, + /* 980 */ 160, 161, 160, 161, 181, 143, 160, 161, 160, 161, + /* 990 */ 160, 161, 160, 161, 160, 161, 143, 143, 143, 95, + /* 1000 */ 143, 143, 160, 161, 100, 143, 143, 143, 181, 143, + /* 1010 */ 143, 143, 50, 160, 161, 160, 161, 160, 161, 143, + /* 1020 */ 143, 143, 160, 161, 160, 161, 160, 161, 160, 161, + /* 1030 */ 143, 48, 143, 50, 143, 181, 160, 161, 160, 161, + /* 1040 */ 143, 143, 143, 143, 143, 143, 151, 160, 161, 160, + /* 1050 */ 161, 160, 161, 143, 143, 143, 151, 160, 161, 143, + /* 1060 */ 160, 161, 160, 161, 143, 103, 104, 143, 143, 143, + /* 1070 */ 160, 161, 160, 161, 50, 143, 160, 161, 143, 184, + /* 1080 */ 143, 160, 161, 206, 160, 161, 160, 161, 143, 184, + /* 1090 */ 227, 143, 160, 161, 143, 160, 161, 160, 161, 143, + /* 1100 */ 94, 151, 96, 97, 206, 160, 161, 206, 160, 161, + /* 1110 */ 47, 160, 161, 36, 51, 52, 160, 161, 47, 151, + /* 1120 */ 47, 151, 51, 52, 51, 154, 155, 151, 154, 155, + /* 1130 */ 50, 206, 199, 200, 184, 108, 109, 113, 50, 48, + /* 1140 */ 48, 50, 50, 48, 48, 50, 50, 48, 75, 50, + /* 1150 */ 143, 48, 184, 50, 184, 51, 52, 47, 77, 78, + /* 1160 */ 184, 143, 48, 83, 50, 143, 48, 90, 50, 143, + /* 1170 */ 51, 52, 48, 115, 50, 117, 48, 189, 50, 202, + /* 1180 */ 51, 52, 202, 143, 143, 228, 189, 143, 228, 143, + /* 1190 */ 102, 143, 143, 143, 143, 143, 164, 143, 143, 168, + /* 1200 */ 172, 163, 143, 143, 143, 202, 216, 143, 163, 143, + /* 1210 */ 163, 101, 143, 188, 146, 186, 47, 143, 143, 143, + /* 1220 */ 209, 143, 143, 5, 113, 189, 45, 121, 128, 225, + /* 1230 */ 177, 45, 224, 148, 148, 47, 180, 180, 148, 209, + /* 1240 */ 84, 148, 180, 63, 83, 180, 162, 177, 165, 177, + /* 1250 */ 106, 162, 165, 47, 84, 213, 189, 121, 215, 162, + /* 1260 */ 32, 112, 107, 165, 170, 164, 50, 162, 111, 162, + /* 1270 */ 162, 189, 170, 110, 162, 40, 35, 4, 36, 144, + /* 1280 */ 3, 165, 144, 150, 142, 142, 42, 142, 142, 141, + /* 1290 */ 153, 72, 165, 43, 84, 48, 48, 101, 99, 114, + /* 1300 */ 153, 88, 102, 46, 84, 127, 166, 166, 50, 127, + /* 1310 */ 84, 1, 129, 204, 130, 114, 203, 102, 16, 204, + /* 1320 */ 203, 189, 191, 193, 204, 203, 192, 204, 203, 190, + /* 1330 */ 16, 16, 16, 88, 52, 105, 1, 101, 34, 218, + /* 1340 */ 47, 124, 89, 84, 218, 49, 46, 7, 82, 66, + /* 1350 */ 47, 66, 47, 47, 66, 48, 47, 60, 47, 95, + /* 1360 */ 48, 48, 54, 101, 104, 48, 47, 47, 50, 48, + /* 1370 */ 105, 48, 50, 48, 47, 105, 52, 105, 50, 50, + /* 1380 */ 48, 48, 48, 38, 48, 101, 48, 50, 47, 50, + /* 1390 */ 48, 47, 49, 1, 48, 47, 49, 48, 47, 0, + /* 1400 */ 48, 75, 48, 47, 42, 48, }; -#define YY_SHIFT_USE_DFLT (1413) -#define YY_SHIFT_COUNT (416) -#define YY_SHIFT_MIN (-89) -#define YY_SHIFT_MAX (1412) +#define YY_SHIFT_USE_DFLT (1406) +#define YY_SHIFT_COUNT (411) +#define YY_SHIFT_MIN (-88) +#define YY_SHIFT_MAX (1399) static const short yy_shift_ofst[] = { - /* 0 */ 492, 564, 598, 562, 736, 736, 736, 736, 535, -5, - /* 10 */ 71, 71, 736, 736, 736, 736, 736, 736, 736, 714, - /* 20 */ 714, 716, 276, 191, 260, 99, 128, 177, 226, 275, + /* 0 */ 176, 564, 598, 562, 736, 736, 736, 736, 240, -5, + /* 10 */ 71, 71, 736, 736, 736, 736, 736, 736, 736, 681, + /* 20 */ 681, 660, 276, 191, 129, 99, 128, 177, 226, 275, /* 30 */ 324, 373, 401, 429, 457, 457, 457, 457, 457, 457, /* 40 */ 457, 457, 457, 457, 457, 457, 457, 457, 457, 524, /* 50 */ 457, 490, 550, 550, 702, 736, 736, 736, 736, 736, @@ -700,118 +698,117 @@ static const short yy_shift_ofst[] = { /* 70 */ 736, 736, 736, 736, 736, 736, 736, 736, 736, 736, /* 80 */ 736, 736, 840, 736, 736, 736, 736, 736, 736, 736, /* 90 */ 736, 736, 736, 736, 736, 736, 11, 30, 30, 30, - /* 100 */ 30, 30, 188, 37, 43, 701, 144, 144, 476, 576, - /* 110 */ 837, 476, -16, 1413, 1413, 1413, 581, 581, 581, 763, - /* 120 */ 763, 821, 542, 542, 567, 476, 618, 476, 476, 476, - /* 130 */ 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, - /* 140 */ 476, 476, 476, 221, 476, 476, 476, 221, 837, -89, - /* 150 */ -89, -89, -89, -89, -89, 1413, 1413, 810, 195, 195, - /* 160 */ 237, 819, 819, 819, 217, 847, 828, 848, 884, 500, - /* 170 */ 648, 695, 889, 602, 602, 602, 858, 635, 1051, 81, - /* 180 */ 219, 476, 476, 476, 476, 476, 476, 1049, 370, 370, - /* 190 */ 476, 476, 1109, 1049, 476, 1109, 476, 476, 476, 476, - /* 200 */ 476, 476, 954, 476, 751, 476, 1115, 476, 1018, 476, - /* 210 */ 476, 370, 476, 663, 1018, 1018, 476, 476, 476, 773, - /* 220 */ 876, 476, 986, 476, 476, 476, 476, 1091, 1179, 1223, - /* 230 */ 1119, 1185, 1185, 1185, 1185, 1110, 1106, 1191, 1119, 1179, - /* 240 */ 1223, 1223, 1119, 1191, 1193, 1191, 1191, 1193, 1154, 1154, - /* 250 */ 1154, 1182, 1193, 1154, 1164, 1154, 1182, 1154, 1154, 1146, - /* 260 */ 1172, 1146, 1172, 1146, 1172, 1146, 1172, 1210, 1141, 1193, - /* 270 */ 1231, 1231, 1193, 1152, 1159, 1160, 1163, 1119, 1228, 1239, - /* 280 */ 1239, 1245, 1245, 1245, 1245, 1246, 1413, 1413, 1413, 1413, - /* 290 */ 1413, 152, 860, 783, 897, 1116, 1083, 1087, 1088, 1096, - /* 300 */ 1097, 1100, 1089, 1076, 1113, 966, 1117, 1118, 1108, 1121, - /* 310 */ 1055, 1058, 1129, 1130, 1104, 1277, 1281, 1234, 1252, 1224, - /* 320 */ 1254, 1211, 1250, 1251, 1200, 1203, 1192, 1217, 1205, 1225, - /* 330 */ 1262, 1184, 1263, 1187, 1186, 1188, 1235, 1314, 1216, 1207, - /* 340 */ 1307, 1309, 1321, 1322, 1253, 1288, 1237, 1242, 1343, 1311, - /* 350 */ 1299, 1264, 1226, 1298, 1303, 1346, 1265, 1273, 1310, 1290, - /* 360 */ 1312, 1313, 1315, 1317, 1292, 1308, 1318, 1295, 1306, 1319, - /* 370 */ 1320, 1323, 1324, 1274, 1325, 1327, 1326, 1328, 1269, 1329, - /* 380 */ 1331, 1330, 1271, 1333, 1279, 1334, 1276, 1335, 1282, 1338, - /* 390 */ 1334, 1340, 1341, 1342, 1316, 1344, 1345, 1348, 1354, 1349, - /* 400 */ 1351, 1347, 1350, 1353, 1352, 1355, 1350, 1357, 1356, 1358, - /* 410 */ 1359, 1361, 1301, 1362, 1367, 1410, 1412, + /* 100 */ 30, 30, 188, 37, 43, 861, 144, 144, 462, 485, + /* 110 */ 542, -16, 1406, 1406, 1406, 581, 581, 565, 565, 821, + /* 120 */ 601, 601, 473, 542, 88, 542, 542, 542, 542, 542, + /* 130 */ 542, 542, 542, 542, 542, 542, 542, 542, 542, 542, + /* 140 */ 542, 221, 542, 542, 542, 221, 485, -88, -88, -88, + /* 150 */ -88, -88, -88, 1406, 1406, 810, 195, 195, 237, 806, + /* 160 */ 806, 806, 217, 846, 829, 848, 739, 441, 752, 927, + /* 170 */ 557, 670, 670, 670, 1063, 962, 1071, 1006, 219, 542, + /* 180 */ 542, 542, 542, 542, 542, 1024, 174, 174, 542, 542, + /* 190 */ 370, 1024, 542, 370, 542, 542, 542, 542, 542, 542, + /* 200 */ 1080, 542, 983, 542, 880, 542, 1027, 542, 542, 174, + /* 210 */ 542, 784, 1027, 1027, 542, 542, 542, 1088, 904, 542, + /* 220 */ 890, 542, 542, 542, 542, 1169, 1218, 1111, 1181, 1181, + /* 230 */ 1181, 1181, 1106, 1100, 1186, 1111, 1169, 1218, 1218, 1111, + /* 240 */ 1186, 1188, 1186, 1186, 1188, 1156, 1156, 1156, 1180, 1188, + /* 250 */ 1156, 1161, 1156, 1180, 1156, 1156, 1144, 1170, 1144, 1170, + /* 260 */ 1144, 1170, 1144, 1170, 1206, 1136, 1188, 1228, 1228, 1188, + /* 270 */ 1149, 1155, 1157, 1163, 1111, 1216, 1235, 1235, 1241, 1241, + /* 280 */ 1241, 1241, 1242, 1406, 1406, 1406, 1406, 152, 816, 881, + /* 290 */ 1073, 734, 1091, 1092, 1095, 1096, 1099, 1103, 1104, 1081, + /* 300 */ 1077, 841, 1114, 1118, 1119, 1124, 795, 1058, 1128, 1129, + /* 310 */ 1110, 1273, 1277, 1244, 1219, 1250, 1210, 1247, 1248, 1196, + /* 320 */ 1199, 1185, 1213, 1200, 1220, 1257, 1178, 1258, 1182, 1184, + /* 330 */ 1183, 1226, 1310, 1215, 1201, 1302, 1314, 1315, 1316, 1245, + /* 340 */ 1282, 1230, 1236, 1335, 1304, 1293, 1259, 1217, 1296, 1300, + /* 350 */ 1340, 1253, 1266, 1303, 1283, 1305, 1306, 1307, 1309, 1285, + /* 360 */ 1308, 1311, 1288, 1297, 1312, 1313, 1317, 1318, 1264, 1319, + /* 370 */ 1321, 1320, 1322, 1262, 1323, 1325, 1324, 1265, 1327, 1260, + /* 380 */ 1328, 1270, 1329, 1272, 1332, 1328, 1333, 1334, 1336, 1326, + /* 390 */ 1337, 1338, 1341, 1345, 1342, 1344, 1343, 1339, 1346, 1348, + /* 400 */ 1347, 1339, 1349, 1351, 1352, 1354, 1356, 1284, 1357, 1362, + /* 410 */ 1392, 1399, }; -#define YY_REDUCE_USE_DFLT (-111) -#define YY_REDUCE_COUNT (290) -#define YY_REDUCE_MIN (-110) -#define YY_REDUCE_MAX (1156) +#define YY_REDUCE_USE_DFLT (-110) +#define YY_REDUCE_COUNT (286) +#define YY_REDUCE_MIN (-109) +#define YY_REDUCE_MAX (1148) static const short yy_reduce_ofst[] = { - /* 0 */ 89, 503, 559, 123, 530, 561, 563, 575, 621, 158, - /* 10 */ -44, 10, 465, 473, 589, 617, 632, 683, 715, 470, - /* 20 */ 682, 721, 651, 697, 719, 153, 153, 153, 153, 153, - /* 30 */ 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, - /* 40 */ 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, - /* 50 */ 153, 153, 153, 153, 165, 767, 772, 777, 805, 817, - /* 60 */ 820, 826, 829, 831, 833, 836, 841, 845, 852, 855, - /* 70 */ 857, 861, 865, 867, 877, 880, 886, 888, 890, 892, - /* 80 */ 896, 899, 901, 912, 915, 920, 922, 924, 926, 928, - /* 90 */ 931, 934, 947, 950, 953, 956, 153, 153, 153, 153, - /* 100 */ 153, 153, 153, 153, 153, 4, 333, 367, 448, 153, - /* 110 */ 400, 223, 153, 153, 153, 153, 200, 200, 200, 789, - /* 120 */ 900, 420, 54, 630, 454, 171, -20, 668, 768, 818, - /* 130 */ 830, 887, 923, 957, 601, 960, 528, 839, 553, 921, - /* 140 */ 927, 587, 499, 951, 969, 502, 666, 965, 770, 471, - /* 150 */ 958, 967, 970, 971, 973, 929, 822, -110, -69, 63, - /* 160 */ 92, 109, 280, 341, 120, 346, 430, 446, 488, 579, - /* 170 */ 466, 689, 728, 664, 691, 698, 737, 120, 798, 978, - /* 180 */ 776, 864, 871, 881, 1013, 1030, 1034, 990, 980, 981, - /* 190 */ 1041, 1042, 959, 997, 1045, 961, 1047, 1048, 1050, 1052, - /* 200 */ 1053, 1054, 1028, 1056, 1022, 1057, 1033, 1060, 1043, 1062, - /* 210 */ 1064, 1006, 1066, 994, 1059, 1061, 1068, 1069, 728, 1025, - /* 220 */ 1029, 1071, 1070, 1074, 1075, 1077, 1078, 989, 1017, 1063, - /* 230 */ 1039, 1065, 1067, 1072, 1073, 1007, 1010, 1090, 1079, 1027, - /* 240 */ 1080, 1081, 1082, 1093, 1084, 1094, 1095, 1085, 1086, 1092, - /* 250 */ 1098, 1099, 1101, 1102, 1103, 1111, 1105, 1112, 1114, 1107, - /* 260 */ 1120, 1122, 1124, 1125, 1127, 1128, 1131, 1046, 1123, 1126, - /* 270 */ 1132, 1133, 1134, 1135, 1139, 1142, 1145, 1136, 1137, 1138, - /* 280 */ 1140, 1143, 1144, 1147, 1148, 1151, 1149, 1150, 1153, 1155, - /* 290 */ 1156, + /* 0 */ 36, 504, 646, 124, 508, 531, 577, 633, 538, 159, + /* 10 */ -43, 12, 625, 652, 672, 480, 682, 684, 688, 471, + /* 20 */ 717, 446, 696, 712, 436, 148, 148, 148, 148, 148, + /* 30 */ 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + /* 40 */ 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + /* 50 */ 148, 148, 148, 148, 563, 763, 768, 774, 788, 801, + /* 60 */ 820, 822, 826, 828, 830, 832, 834, 842, 853, 855, + /* 70 */ 857, 862, 864, 866, 868, 876, 878, 887, 889, 891, + /* 80 */ 897, 900, 902, 910, 912, 916, 921, 924, 926, 932, + /* 90 */ 935, 937, 945, 948, 951, 956, 148, 148, 148, 148, + /* 100 */ 148, 148, 148, 148, 148, 200, 208, 334, 148, 641, + /* 110 */ 443, 148, 148, 148, 148, 463, 463, 499, 507, 426, + /* 120 */ 495, 553, 513, 529, 606, 659, 691, 741, 760, 773, + /* 130 */ 803, 827, 555, 854, 478, 877, 623, 898, 901, 863, + /* 140 */ 604, 971, 925, 609, 628, 974, 561, 895, 905, 950, + /* 150 */ 968, 970, 976, 933, 587, -109, -68, -28, 25, 97, + /* 160 */ 110, 146, 121, 196, 245, 306, 366, 502, 512, 648, + /* 170 */ 726, 700, 755, 778, 858, 121, 867, 697, 786, 899, + /* 180 */ 911, 1007, 1018, 1022, 1026, 988, 977, 980, 1040, 1041, + /* 190 */ 957, 997, 1044, 960, 1046, 1048, 1049, 1050, 1051, 1052, + /* 200 */ 1032, 1054, 1028, 1055, 1031, 1059, 1038, 1060, 1061, 1003, + /* 210 */ 1064, 990, 1045, 1047, 1066, 1069, 726, 1025, 1029, 1074, + /* 220 */ 1068, 1075, 1076, 1078, 1079, 1011, 1053, 1036, 1056, 1057, + /* 230 */ 1062, 1065, 1004, 1008, 1085, 1067, 1030, 1070, 1072, 1082, + /* 240 */ 1086, 1083, 1090, 1093, 1087, 1084, 1089, 1097, 1094, 1098, + /* 250 */ 1105, 1101, 1107, 1102, 1108, 1112, 1109, 1113, 1115, 1117, + /* 260 */ 1120, 1122, 1123, 1125, 1042, 1043, 1116, 1121, 1126, 1127, + /* 270 */ 1130, 1134, 1131, 1139, 1132, 1133, 1135, 1138, 1142, 1143, + /* 280 */ 1145, 1146, 1148, 1137, 1140, 1141, 1147, }; static const YYACTIONTYPE yy_default[] = { - /* 0 */ 1176, 1170, 1170, 1170, 1113, 1113, 1113, 1113, 1170, 1009, - /* 10 */ 1036, 1036, 1220, 1220, 1220, 1220, 1220, 1220, 1112, 1220, - /* 20 */ 1220, 1220, 1220, 1170, 1013, 1042, 1220, 1220, 1220, 1114, - /* 30 */ 1115, 1220, 1220, 1220, 1146, 1052, 1051, 1050, 1049, 1023, - /* 40 */ 1047, 1040, 1044, 1114, 1108, 1109, 1107, 1111, 1115, 1220, - /* 50 */ 1043, 1077, 1092, 1076, 1220, 1220, 1220, 1220, 1220, 1220, - /* 60 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 70 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 80 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 90 */ 1220, 1220, 1220, 1220, 1220, 1220, 1086, 1091, 1098, 1090, - /* 100 */ 1087, 1079, 1078, 1080, 1081, 980, 1220, 1220, 1220, 1082, - /* 110 */ 1220, 1220, 1083, 1095, 1094, 1093, 1168, 1185, 1184, 1220, - /* 120 */ 1220, 1120, 1220, 1220, 1220, 1220, 1170, 1220, 1220, 1220, - /* 130 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 140 */ 1220, 1220, 1220, 938, 1220, 1220, 1220, 938, 1220, 1170, - /* 150 */ 1170, 1170, 1170, 1170, 1170, 1013, 1004, 1220, 1220, 1220, - /* 160 */ 1220, 1220, 1220, 1220, 1220, 1009, 1220, 1220, 1220, 1220, - /* 170 */ 1141, 1220, 1220, 1009, 1009, 1009, 1220, 1011, 1220, 993, - /* 180 */ 1003, 1220, 1165, 1220, 1162, 1220, 1220, 1046, 1025, 1025, - /* 190 */ 1220, 1220, 1217, 1046, 1220, 1217, 1220, 1220, 1220, 1220, - /* 200 */ 1220, 1220, 955, 1220, 1196, 1220, 952, 1220, 1036, 1220, - /* 210 */ 1220, 1025, 1220, 1110, 1036, 1036, 1220, 1220, 1220, 1010, - /* 220 */ 1003, 1220, 1220, 1220, 1220, 1220, 1179, 1218, 1057, 983, - /* 230 */ 1046, 989, 989, 989, 989, 1145, 1214, 932, 1046, 1057, - /* 240 */ 983, 983, 1046, 932, 1121, 932, 932, 1121, 981, 981, - /* 250 */ 981, 970, 1121, 981, 955, 981, 970, 981, 981, 1029, - /* 260 */ 1024, 1029, 1024, 1029, 1024, 1029, 1024, 1116, 1220, 1121, - /* 270 */ 1125, 1125, 1121, 1041, 1030, 1039, 1037, 1046, 973, 1182, - /* 280 */ 1182, 1178, 1178, 1178, 1178, 922, 1191, 1191, 957, 957, - /* 290 */ 1191, 1220, 1220, 1220, 1186, 1128, 1220, 1220, 1220, 1220, - /* 300 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 310 */ 1220, 1220, 1220, 1220, 1063, 1220, 919, 1220, 1220, 1169, - /* 320 */ 1220, 1163, 1220, 1220, 1209, 1220, 1220, 1220, 1220, 1220, - /* 330 */ 1220, 1220, 1144, 1143, 1220, 1220, 1220, 1220, 1220, 1220, - /* 340 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1216, 1220, 1220, - /* 350 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 360 */ 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 370 */ 1220, 1220, 1220, 995, 1220, 1220, 1220, 1200, 1220, 1220, - /* 380 */ 1220, 1220, 1220, 1220, 1220, 1038, 1220, 1031, 1220, 1220, - /* 390 */ 1206, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - /* 400 */ 1220, 1220, 1172, 1220, 1220, 1220, 1171, 1220, 1220, 1220, - /* 410 */ 1220, 1220, 1220, 1220, 926, 1220, 1220, + /* 0 */ 1164, 1158, 1158, 1158, 1103, 1103, 1103, 1103, 1158, 999, + /* 10 */ 1026, 1026, 1206, 1206, 1206, 1206, 1206, 1206, 1102, 1206, + /* 20 */ 1206, 1206, 1206, 1158, 1003, 1032, 1206, 1206, 1206, 1104, + /* 30 */ 1105, 1206, 1206, 1206, 1136, 1042, 1041, 1040, 1039, 1013, + /* 40 */ 1037, 1030, 1034, 1104, 1098, 1099, 1097, 1101, 1105, 1206, + /* 50 */ 1033, 1067, 1082, 1066, 1206, 1206, 1206, 1206, 1206, 1206, + /* 60 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 70 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 80 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 90 */ 1206, 1206, 1206, 1206, 1206, 1206, 1076, 1081, 1088, 1080, + /* 100 */ 1077, 1069, 1068, 1070, 1071, 970, 1206, 1206, 1072, 1206, + /* 110 */ 1206, 1073, 1085, 1084, 1083, 1173, 1172, 1206, 1206, 1110, + /* 120 */ 1206, 1206, 1206, 1206, 1158, 1206, 1206, 1206, 1206, 1206, + /* 130 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 140 */ 1206, 928, 1206, 1206, 1206, 928, 1206, 1158, 1158, 1158, + /* 150 */ 1158, 1158, 1158, 1003, 994, 1206, 1206, 1206, 1206, 1206, + /* 160 */ 1206, 1206, 1206, 999, 1206, 1206, 1206, 1206, 1131, 1206, + /* 170 */ 1206, 999, 999, 999, 1206, 1001, 1206, 983, 993, 1206, + /* 180 */ 1155, 1206, 1152, 1206, 1206, 1036, 1015, 1015, 1206, 1206, + /* 190 */ 1205, 1036, 1206, 1205, 1206, 1206, 1206, 1206, 1206, 1206, + /* 200 */ 945, 1206, 1184, 1206, 942, 1206, 1026, 1206, 1206, 1015, + /* 210 */ 1206, 1100, 1026, 1026, 1206, 1206, 1206, 1000, 993, 1206, + /* 220 */ 1206, 1206, 1206, 1206, 1167, 1047, 973, 1036, 979, 979, + /* 230 */ 979, 979, 1135, 1202, 922, 1036, 1047, 973, 973, 1036, + /* 240 */ 922, 1111, 922, 922, 1111, 971, 971, 971, 960, 1111, + /* 250 */ 971, 945, 971, 960, 971, 971, 1019, 1014, 1019, 1014, + /* 260 */ 1019, 1014, 1019, 1014, 1106, 1206, 1111, 1115, 1115, 1111, + /* 270 */ 1031, 1020, 1029, 1027, 1036, 963, 1170, 1170, 1166, 1166, + /* 280 */ 1166, 1166, 912, 1179, 947, 947, 1179, 1206, 1206, 1206, + /* 290 */ 1174, 1118, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 300 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 310 */ 1053, 1206, 909, 1206, 1206, 1206, 1153, 1206, 1206, 1197, + /* 320 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1134, 1133, 1206, + /* 330 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 340 */ 1206, 1206, 1204, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 350 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 360 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 985, 1206, + /* 370 */ 1206, 1206, 1188, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + /* 380 */ 1028, 1206, 1021, 1206, 1206, 1194, 1206, 1206, 1206, 1206, + /* 390 */ 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1160, 1206, 1206, + /* 400 */ 1206, 1159, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 916, + /* 410 */ 1206, 1206, }; /********** End of lemon-generated parsing tables *****************************/ @@ -1024,32 +1021,31 @@ static const char *const yyTokenName[] = { "CASE", "WHEN", "THEN", "ELSE", "INDEX", "PRAGMA", "TRIGGER", "OF", "FOR", "EACH", "ROW", "ANALYZE", - "ALTER", "COLUMNKW", "WITH", "RECURSIVE", - "error", "input", "ecmd", "explain", - "cmdx", "cmd", "transtype", "trans_opt", - "nm", "savepoint_opt", "create_table", "create_table_args", - "createkw", "ifnotexists", "columnlist", "conslist_opt", - "select", "columnname", "carglist", "typetoken", - "typename", "signed", "plus_num", "minus_num", - "ccons", "term", "expr", "onconf", - "sortorder", "autoinc", "eidlist_opt", "refargs", - "defer_subclause", "refarg", "refact", "init_deferred_pred_opt", - "conslist", "tconscomma", "tcons", "sortlist", - "eidlist", "defer_subclause_opt", "orconf", "resolvetype", - "raisetype", "ifexists", "fullname", "selectnowith", - "oneselect", "with", "multiselect_op", "distinct", - "selcollist", "from", "where_opt", "groupby_opt", - "having_opt", "orderby_opt", "limit_opt", "values", - "nexprlist", "exprlist", "sclp", "as", - "seltablist", "stl_prefix", "joinop", "indexed_opt", - "on_opt", "using_opt", "join_nm", "idlist", - "setlist", "insert_cmd", "idlist_opt", "likeop", - "between_op", "in_op", "paren_exprlist", "case_operand", - "case_exprlist", "case_else", "uniqueflag", "collate", - "nmnum", "trigger_decl", "trigger_cmd_list", "trigger_time", - "trigger_event", "foreach_clause", "when_clause", "trigger_cmd", - "trnm", "tridxby", "add_column_fullname", "kwcolumn_opt", - "wqlist", + "ALTER", "WITH", "RECURSIVE", "error", + "input", "ecmd", "explain", "cmdx", + "cmd", "transtype", "trans_opt", "nm", + "savepoint_opt", "create_table", "create_table_args", "createkw", + "ifnotexists", "columnlist", "conslist_opt", "select", + "columnname", "carglist", "typetoken", "typename", + "signed", "plus_num", "minus_num", "ccons", + "term", "expr", "onconf", "sortorder", + "autoinc", "eidlist_opt", "refargs", "defer_subclause", + "refarg", "refact", "init_deferred_pred_opt", "conslist", + "tconscomma", "tcons", "sortlist", "eidlist", + "defer_subclause_opt", "orconf", "resolvetype", "raisetype", + "ifexists", "fullname", "selectnowith", "oneselect", + "with", "multiselect_op", "distinct", "selcollist", + "from", "where_opt", "groupby_opt", "having_opt", + "orderby_opt", "limit_opt", "values", "nexprlist", + "exprlist", "sclp", "as", "seltablist", + "stl_prefix", "joinop", "indexed_opt", "on_opt", + "using_opt", "join_nm", "idlist", "setlist", + "insert_cmd", "idlist_opt", "likeop", "between_op", + "in_op", "paren_exprlist", "case_operand", "case_exprlist", + "case_else", "uniqueflag", "collate", "nmnum", + "trigger_decl", "trigger_cmd_list", "trigger_time", "trigger_event", + "foreach_clause", "when_clause", "trigger_cmd", "trnm", + "tridxby", "wqlist", }; #endif /* NDEBUG */ @@ -1308,58 +1304,54 @@ static const char *const yyRuleName[] = { /* 248 */ "cmd ::= ANALYZE", /* 249 */ "cmd ::= ANALYZE nm", /* 250 */ "cmd ::= ALTER TABLE fullname RENAME TO nm", - /* 251 */ "cmd ::= ALTER TABLE add_column_fullname ADD kwcolumn_opt columnname carglist", - /* 252 */ "add_column_fullname ::= fullname", - /* 253 */ "with ::=", - /* 254 */ "with ::= WITH wqlist", - /* 255 */ "with ::= WITH RECURSIVE wqlist", - /* 256 */ "wqlist ::= nm eidlist_opt AS LP select RP", - /* 257 */ "wqlist ::= wqlist COMMA nm eidlist_opt AS LP select RP", - /* 258 */ "input ::= ecmd", - /* 259 */ "explain ::=", - /* 260 */ "cmdx ::= cmd", - /* 261 */ "trans_opt ::=", - /* 262 */ "trans_opt ::= TRANSACTION", - /* 263 */ "trans_opt ::= TRANSACTION nm", - /* 264 */ "savepoint_opt ::= SAVEPOINT", - /* 265 */ "savepoint_opt ::=", - /* 266 */ "cmd ::= create_table create_table_args", - /* 267 */ "columnlist ::= columnlist COMMA columnname carglist", - /* 268 */ "columnlist ::= columnname carglist", - /* 269 */ "typetoken ::= typename", - /* 270 */ "typename ::= ID|STRING", - /* 271 */ "signed ::= plus_num", - /* 272 */ "signed ::= minus_num", - /* 273 */ "carglist ::= carglist ccons", - /* 274 */ "carglist ::=", - /* 275 */ "ccons ::= NULL onconf", - /* 276 */ "conslist_opt ::= COMMA conslist", - /* 277 */ "conslist ::= conslist tconscomma tcons", - /* 278 */ "conslist ::= tcons", - /* 279 */ "tconscomma ::=", - /* 280 */ "defer_subclause_opt ::= defer_subclause", - /* 281 */ "resolvetype ::= raisetype", - /* 282 */ "selectnowith ::= oneselect", - /* 283 */ "oneselect ::= values", - /* 284 */ "sclp ::= selcollist COMMA", - /* 285 */ "as ::= ID|STRING", - /* 286 */ "join_nm ::= ID|INDEXED", - /* 287 */ "join_nm ::= JOIN_KW", - /* 288 */ "expr ::= term", - /* 289 */ "exprlist ::= nexprlist", - /* 290 */ "nmnum ::= plus_num", - /* 291 */ "nmnum ::= STRING", - /* 292 */ "nmnum ::= nm", - /* 293 */ "nmnum ::= ON", - /* 294 */ "nmnum ::= DELETE", - /* 295 */ "nmnum ::= DEFAULT", - /* 296 */ "plus_num ::= INTEGER|FLOAT", - /* 297 */ "foreach_clause ::=", - /* 298 */ "foreach_clause ::= FOR EACH ROW", - /* 299 */ "trnm ::= nm", - /* 300 */ "tridxby ::=", - /* 301 */ "kwcolumn_opt ::=", - /* 302 */ "kwcolumn_opt ::= COLUMNKW", + /* 251 */ "with ::=", + /* 252 */ "with ::= WITH wqlist", + /* 253 */ "with ::= WITH RECURSIVE wqlist", + /* 254 */ "wqlist ::= nm eidlist_opt AS LP select RP", + /* 255 */ "wqlist ::= wqlist COMMA nm eidlist_opt AS LP select RP", + /* 256 */ "input ::= ecmd", + /* 257 */ "explain ::=", + /* 258 */ "cmdx ::= cmd", + /* 259 */ "trans_opt ::=", + /* 260 */ "trans_opt ::= TRANSACTION", + /* 261 */ "trans_opt ::= TRANSACTION nm", + /* 262 */ "savepoint_opt ::= SAVEPOINT", + /* 263 */ "savepoint_opt ::=", + /* 264 */ "cmd ::= create_table create_table_args", + /* 265 */ "columnlist ::= columnlist COMMA columnname carglist", + /* 266 */ "columnlist ::= columnname carglist", + /* 267 */ "typetoken ::= typename", + /* 268 */ "typename ::= ID|STRING", + /* 269 */ "signed ::= plus_num", + /* 270 */ "signed ::= minus_num", + /* 271 */ "carglist ::= carglist ccons", + /* 272 */ "carglist ::=", + /* 273 */ "ccons ::= NULL onconf", + /* 274 */ "conslist_opt ::= COMMA conslist", + /* 275 */ "conslist ::= conslist tconscomma tcons", + /* 276 */ "conslist ::= tcons", + /* 277 */ "tconscomma ::=", + /* 278 */ "defer_subclause_opt ::= defer_subclause", + /* 279 */ "resolvetype ::= raisetype", + /* 280 */ "selectnowith ::= oneselect", + /* 281 */ "oneselect ::= values", + /* 282 */ "sclp ::= selcollist COMMA", + /* 283 */ "as ::= ID|STRING", + /* 284 */ "join_nm ::= ID|INDEXED", + /* 285 */ "join_nm ::= JOIN_KW", + /* 286 */ "expr ::= term", + /* 287 */ "exprlist ::= nexprlist", + /* 288 */ "nmnum ::= plus_num", + /* 289 */ "nmnum ::= STRING", + /* 290 */ "nmnum ::= nm", + /* 291 */ "nmnum ::= ON", + /* 292 */ "nmnum ::= DELETE", + /* 293 */ "nmnum ::= DEFAULT", + /* 294 */ "plus_num ::= INTEGER|FLOAT", + /* 295 */ "foreach_clause ::=", + /* 296 */ "foreach_clause ::= FOR EACH ROW", + /* 297 */ "trnm ::= nm", + /* 298 */ "tridxby ::=", }; #endif /* NDEBUG */ @@ -1470,94 +1462,94 @@ static void yy_destructor( ** inside the C code. */ /********* Begin destructor definitions ***************************************/ - case 152: /* select */ - case 183: /* selectnowith */ - case 184: /* oneselect */ - case 195: /* values */ + case 151: /* select */ + case 182: /* selectnowith */ + case 183: /* oneselect */ + case 194: /* values */ { #line 386 "parse.y" -sqlite3SelectDelete(pParse->db, (yypminor->yy309)); -#line 1481 "parse.c" +sqlite3SelectDelete(pParse->db, (yypminor->yy279)); +#line 1473 "parse.c" } break; - case 161: /* term */ - case 162: /* expr */ + case 160: /* term */ + case 161: /* expr */ { #line 829 "parse.y" -sqlite3ExprDelete(pParse->db, (yypminor->yy200).pExpr); -#line 1489 "parse.c" +sqlite3ExprDelete(pParse->db, (yypminor->yy162).pExpr); +#line 1481 "parse.c" } break; - case 166: /* eidlist_opt */ - case 175: /* sortlist */ - case 176: /* eidlist */ - case 188: /* selcollist */ - case 191: /* groupby_opt */ - case 193: /* orderby_opt */ - case 196: /* nexprlist */ - case 197: /* exprlist */ - case 198: /* sclp */ - case 208: /* setlist */ - case 214: /* paren_exprlist */ - case 216: /* case_exprlist */ + case 165: /* eidlist_opt */ + case 174: /* sortlist */ + case 175: /* eidlist */ + case 187: /* selcollist */ + case 190: /* groupby_opt */ + case 192: /* orderby_opt */ + case 195: /* nexprlist */ + case 196: /* exprlist */ + case 197: /* sclp */ + case 207: /* setlist */ + case 213: /* paren_exprlist */ + case 215: /* case_exprlist */ { #line 1261 "parse.y" -sqlite3ExprListDelete(pParse->db, (yypminor->yy272)); -#line 1507 "parse.c" +sqlite3ExprListDelete(pParse->db, (yypminor->yy382)); +#line 1499 "parse.c" } break; - case 182: /* fullname */ - case 189: /* from */ - case 200: /* seltablist */ - case 201: /* stl_prefix */ + case 181: /* fullname */ + case 188: /* from */ + case 199: /* seltablist */ + case 200: /* stl_prefix */ { #line 613 "parse.y" -sqlite3SrcListDelete(pParse->db, (yypminor->yy73)); -#line 1517 "parse.c" +sqlite3SrcListDelete(pParse->db, (yypminor->yy387)); +#line 1509 "parse.c" } break; - case 185: /* with */ - case 232: /* wqlist */ + case 184: /* with */ + case 229: /* wqlist */ { -#line 1506 "parse.y" -sqlite3WithDelete(pParse->db, (yypminor->yy445)); -#line 1525 "parse.c" +#line 1507 "parse.y" +sqlite3WithDelete(pParse->db, (yypminor->yy151)); +#line 1517 "parse.c" } break; - case 190: /* where_opt */ - case 192: /* having_opt */ - case 204: /* on_opt */ - case 215: /* case_operand */ - case 217: /* case_else */ - case 226: /* when_clause */ + case 189: /* where_opt */ + case 191: /* having_opt */ + case 203: /* on_opt */ + case 214: /* case_operand */ + case 216: /* case_else */ + case 225: /* when_clause */ { #line 738 "parse.y" -sqlite3ExprDelete(pParse->db, (yypminor->yy294)); -#line 1537 "parse.c" +sqlite3ExprDelete(pParse->db, (yypminor->yy362)); +#line 1529 "parse.c" } break; - case 205: /* using_opt */ - case 207: /* idlist */ - case 210: /* idlist_opt */ + case 204: /* using_opt */ + case 206: /* idlist */ + case 209: /* idlist_opt */ { #line 650 "parse.y" -sqlite3IdListDelete(pParse->db, (yypminor->yy436)); -#line 1546 "parse.c" +sqlite3IdListDelete(pParse->db, (yypminor->yy40)); +#line 1538 "parse.c" } break; - case 222: /* trigger_cmd_list */ - case 227: /* trigger_cmd */ + case 221: /* trigger_cmd_list */ + case 226: /* trigger_cmd */ { #line 1381 "parse.y" -sqlite3DeleteTriggerStep(pParse->db, (yypminor->yy251)); -#line 1554 "parse.c" +sqlite3DeleteTriggerStep(pParse->db, (yypminor->yy427)); +#line 1546 "parse.c" } break; - case 224: /* trigger_event */ + case 223: /* trigger_event */ { #line 1367 "parse.y" -sqlite3IdListDelete(pParse->db, (yypminor->yy60).b); -#line 1561 "parse.c" +sqlite3IdListDelete(pParse->db, (yypminor->yy10).b); +#line 1553 "parse.c" } break; /********* End destructor definitions *****************************************/ @@ -1732,7 +1724,7 @@ static void yyStackOverflow(yyParser *yypParser){ #line 41 "parse.y" sqlite3ErrorMsg(pParse, "parser stack overflow"); -#line 1736 "parse.c" +#line 1728 "parse.c" /******** End %stack_overflow code ********************************************/ sqlite3ParserARG_STORE; /* Suppress warning about unused %extra_argument var */ } @@ -1806,309 +1798,305 @@ static const struct { YYCODETYPE lhs; /* Symbol on the left-hand side of the rule */ unsigned char nrhs; /* Number of right-hand side symbols in the rule */ } yyRuleInfo[] = { - { 138, 3 }, + { 137, 3 }, + { 137, 1 }, { 138, 1 }, - { 139, 1 }, - { 139, 3 }, - { 141, 3 }, - { 142, 0 }, - { 142, 1 }, - { 141, 2 }, - { 141, 2 }, - { 141, 2 }, - { 141, 2 }, - { 141, 3 }, - { 141, 5 }, + { 138, 3 }, + { 140, 3 }, + { 141, 0 }, + { 141, 1 }, + { 140, 2 }, + { 140, 2 }, + { 140, 2 }, + { 140, 2 }, + { 140, 3 }, + { 140, 5 }, + { 145, 4 }, + { 147, 1 }, + { 148, 0 }, + { 148, 3 }, { 146, 4 }, - { 148, 1 }, - { 149, 0 }, - { 149, 3 }, - { 147, 4 }, - { 147, 2 }, - { 153, 2 }, - { 144, 1 }, - { 155, 0 }, - { 155, 4 }, - { 155, 6 }, - { 156, 2 }, - { 160, 2 }, - { 160, 2 }, - { 160, 4 }, - { 160, 3 }, - { 160, 3 }, - { 160, 2 }, - { 160, 3 }, - { 160, 5 }, - { 160, 2 }, - { 160, 4 }, - { 160, 4 }, - { 160, 1 }, - { 160, 2 }, - { 165, 0 }, - { 165, 1 }, - { 167, 0 }, - { 167, 2 }, + { 146, 2 }, + { 152, 2 }, + { 143, 1 }, + { 154, 0 }, + { 154, 4 }, + { 154, 6 }, + { 155, 2 }, + { 159, 2 }, + { 159, 2 }, + { 159, 4 }, + { 159, 3 }, + { 159, 3 }, + { 159, 2 }, + { 159, 3 }, + { 159, 5 }, + { 159, 2 }, + { 159, 4 }, + { 159, 4 }, + { 159, 1 }, + { 159, 2 }, + { 164, 0 }, + { 164, 1 }, + { 166, 0 }, + { 166, 2 }, + { 168, 2 }, + { 168, 3 }, + { 168, 3 }, + { 168, 3 }, { 169, 2 }, - { 169, 3 }, - { 169, 3 }, - { 169, 3 }, - { 170, 2 }, + { 169, 2 }, + { 169, 1 }, + { 169, 1 }, + { 169, 2 }, + { 167, 3 }, + { 167, 2 }, + { 170, 0 }, { 170, 2 }, - { 170, 1 }, - { 170, 1 }, { 170, 2 }, - { 168, 3 }, - { 168, 2 }, - { 171, 0 }, - { 171, 2 }, - { 171, 2 }, - { 151, 0 }, - { 173, 1 }, - { 174, 2 }, - { 174, 7 }, - { 174, 5 }, - { 174, 5 }, - { 174, 10 }, + { 150, 0 }, + { 172, 1 }, + { 173, 2 }, + { 173, 7 }, + { 173, 5 }, + { 173, 5 }, + { 173, 10 }, + { 176, 0 }, + { 162, 0 }, + { 162, 3 }, { 177, 0 }, - { 163, 0 }, - { 163, 3 }, - { 178, 0 }, - { 178, 2 }, - { 179, 1 }, - { 179, 1 }, - { 141, 4 }, - { 181, 2 }, - { 181, 0 }, - { 141, 7 }, - { 141, 4 }, - { 141, 1 }, - { 152, 2 }, - { 183, 3 }, + { 177, 2 }, + { 178, 1 }, + { 178, 1 }, + { 140, 4 }, + { 180, 2 }, + { 180, 0 }, + { 140, 7 }, + { 140, 4 }, + { 140, 1 }, + { 151, 2 }, + { 182, 3 }, + { 185, 1 }, + { 185, 2 }, + { 185, 1 }, + { 183, 9 }, + { 194, 4 }, + { 194, 5 }, { 186, 1 }, - { 186, 2 }, { 186, 1 }, - { 184, 9 }, - { 195, 4 }, - { 195, 5 }, - { 187, 1 }, - { 187, 1 }, - { 187, 0 }, + { 186, 0 }, + { 197, 0 }, + { 187, 3 }, + { 187, 2 }, + { 187, 4 }, + { 198, 2 }, { 198, 0 }, - { 188, 3 }, + { 188, 0 }, { 188, 2 }, - { 188, 4 }, - { 199, 2 }, - { 199, 0 }, - { 189, 0 }, - { 189, 2 }, + { 200, 2 }, + { 200, 0 }, + { 199, 6 }, + { 199, 8 }, + { 199, 7 }, + { 199, 7 }, + { 181, 1 }, + { 201, 1 }, { 201, 2 }, - { 201, 0 }, - { 200, 6 }, - { 200, 8 }, - { 200, 7 }, - { 200, 7 }, - { 182, 1 }, - { 202, 1 }, - { 202, 2 }, + { 201, 3 }, + { 201, 4 }, + { 203, 2 }, + { 203, 0 }, + { 202, 0 }, { 202, 3 }, - { 202, 4 }, - { 204, 2 }, + { 202, 2 }, + { 204, 4 }, { 204, 0 }, - { 203, 0 }, - { 203, 3 }, - { 203, 2 }, - { 205, 4 }, - { 205, 0 }, - { 193, 0 }, - { 193, 3 }, - { 175, 4 }, - { 175, 2 }, - { 164, 1 }, - { 164, 1 }, - { 164, 0 }, - { 191, 0 }, - { 191, 3 }, { 192, 0 }, - { 192, 2 }, - { 194, 0 }, - { 194, 2 }, - { 194, 4 }, - { 194, 4 }, - { 141, 6 }, + { 192, 3 }, + { 174, 4 }, + { 174, 2 }, + { 163, 1 }, + { 163, 1 }, + { 163, 0 }, { 190, 0 }, - { 190, 2 }, - { 141, 8 }, - { 208, 5 }, - { 208, 7 }, - { 208, 3 }, - { 208, 5 }, - { 141, 6 }, - { 141, 7 }, - { 209, 2 }, - { 209, 1 }, - { 210, 0 }, - { 210, 3 }, + { 190, 3 }, + { 191, 0 }, + { 191, 2 }, + { 193, 0 }, + { 193, 2 }, + { 193, 4 }, + { 193, 4 }, + { 140, 6 }, + { 189, 0 }, + { 189, 2 }, + { 140, 8 }, + { 207, 5 }, + { 207, 7 }, { 207, 3 }, - { 207, 1 }, - { 162, 3 }, - { 161, 1 }, - { 162, 1 }, - { 162, 1 }, - { 162, 3 }, - { 161, 1 }, + { 207, 5 }, + { 140, 6 }, + { 140, 7 }, + { 208, 2 }, + { 208, 1 }, + { 209, 0 }, + { 209, 3 }, + { 206, 3 }, + { 206, 1 }, + { 161, 3 }, + { 160, 1 }, { 161, 1 }, { 161, 1 }, - { 162, 1 }, - { 162, 3 }, - { 162, 6 }, - { 162, 5 }, - { 162, 4 }, + { 161, 3 }, + { 160, 1 }, + { 160, 1 }, + { 160, 1 }, { 161, 1 }, - { 162, 5 }, - { 162, 3 }, - { 162, 3 }, - { 162, 3 }, - { 162, 3 }, - { 162, 3 }, - { 162, 3 }, - { 162, 3 }, - { 162, 3 }, + { 161, 3 }, + { 161, 6 }, + { 161, 5 }, + { 161, 4 }, + { 160, 1 }, + { 161, 5 }, + { 161, 3 }, + { 161, 3 }, + { 161, 3 }, + { 161, 3 }, + { 161, 3 }, + { 161, 3 }, + { 161, 3 }, + { 161, 3 }, + { 210, 1 }, + { 210, 2 }, + { 161, 3 }, + { 161, 5 }, + { 161, 2 }, + { 161, 3 }, + { 161, 3 }, + { 161, 4 }, + { 161, 2 }, + { 161, 2 }, + { 161, 2 }, + { 161, 2 }, { 211, 1 }, { 211, 2 }, - { 162, 3 }, - { 162, 5 }, - { 162, 2 }, - { 162, 3 }, - { 162, 3 }, - { 162, 4 }, - { 162, 2 }, - { 162, 2 }, - { 162, 2 }, - { 162, 2 }, + { 161, 5 }, { 212, 1 }, { 212, 2 }, - { 162, 5 }, - { 213, 1 }, - { 213, 2 }, - { 162, 5 }, - { 162, 3 }, - { 162, 5 }, - { 162, 4 }, - { 162, 4 }, - { 162, 5 }, - { 216, 5 }, - { 216, 4 }, - { 217, 2 }, - { 217, 0 }, - { 215, 1 }, - { 215, 0 }, - { 197, 0 }, - { 196, 3 }, - { 196, 1 }, + { 161, 5 }, + { 161, 3 }, + { 161, 5 }, + { 161, 4 }, + { 161, 4 }, + { 161, 5 }, + { 215, 5 }, + { 215, 4 }, + { 216, 2 }, + { 216, 0 }, + { 214, 1 }, { 214, 0 }, - { 214, 3 }, - { 141, 11 }, - { 218, 1 }, + { 196, 0 }, + { 195, 3 }, + { 195, 1 }, + { 213, 0 }, + { 213, 3 }, + { 140, 11 }, + { 217, 1 }, + { 217, 0 }, + { 165, 0 }, + { 165, 3 }, + { 175, 5 }, + { 175, 3 }, { 218, 0 }, - { 166, 0 }, - { 166, 3 }, - { 176, 5 }, - { 176, 3 }, - { 219, 0 }, - { 219, 2 }, - { 141, 6 }, - { 141, 2 }, - { 141, 4 }, - { 141, 5 }, - { 141, 4 }, - { 141, 5 }, - { 141, 6 }, + { 218, 2 }, + { 140, 6 }, + { 140, 2 }, + { 140, 4 }, + { 140, 5 }, + { 140, 4 }, + { 140, 5 }, + { 140, 6 }, + { 157, 2 }, { 158, 2 }, - { 159, 2 }, - { 141, 5 }, - { 221, 9 }, + { 140, 5 }, + { 220, 9 }, + { 222, 1 }, + { 222, 1 }, + { 222, 2 }, + { 222, 0 }, { 223, 1 }, { 223, 1 }, - { 223, 2 }, - { 223, 0 }, - { 224, 1 }, - { 224, 1 }, - { 224, 3 }, - { 226, 0 }, - { 226, 2 }, - { 222, 3 }, - { 222, 2 }, + { 223, 3 }, + { 225, 0 }, + { 225, 2 }, + { 221, 3 }, + { 221, 2 }, + { 227, 3 }, { 228, 3 }, - { 229, 3 }, - { 229, 2 }, - { 227, 7 }, - { 227, 5 }, - { 227, 5 }, - { 227, 1 }, - { 162, 4 }, - { 162, 6 }, - { 180, 1 }, - { 180, 1 }, - { 180, 1 }, - { 141, 4 }, - { 141, 1 }, - { 141, 2 }, - { 141, 4 }, - { 141, 1 }, - { 141, 2 }, - { 141, 6 }, - { 141, 7 }, - { 230, 1 }, - { 185, 0 }, - { 185, 2 }, - { 185, 3 }, - { 232, 6 }, - { 232, 8 }, - { 137, 1 }, - { 139, 0 }, + { 228, 2 }, + { 226, 7 }, + { 226, 5 }, + { 226, 5 }, + { 226, 1 }, + { 161, 4 }, + { 161, 6 }, + { 179, 1 }, + { 179, 1 }, + { 179, 1 }, + { 140, 4 }, { 140, 1 }, - { 143, 0 }, - { 143, 1 }, - { 143, 2 }, - { 145, 1 }, - { 145, 0 }, - { 141, 2 }, - { 150, 4 }, - { 150, 2 }, + { 140, 2 }, + { 140, 4 }, + { 140, 1 }, + { 140, 2 }, + { 140, 6 }, + { 184, 0 }, + { 184, 2 }, + { 184, 3 }, + { 229, 6 }, + { 229, 8 }, + { 136, 1 }, + { 138, 0 }, + { 139, 1 }, + { 142, 0 }, + { 142, 1 }, + { 142, 2 }, + { 144, 1 }, + { 144, 0 }, + { 140, 2 }, + { 149, 4 }, + { 149, 2 }, + { 154, 1 }, { 155, 1 }, { 156, 1 }, - { 157, 1 }, - { 157, 1 }, - { 154, 2 }, - { 154, 0 }, - { 160, 2 }, - { 151, 2 }, - { 172, 3 }, - { 172, 1 }, - { 173, 0 }, - { 177, 1 }, - { 179, 1 }, + { 156, 1 }, + { 153, 2 }, + { 153, 0 }, + { 159, 2 }, + { 150, 2 }, + { 171, 3 }, + { 171, 1 }, + { 172, 0 }, + { 176, 1 }, + { 178, 1 }, + { 182, 1 }, { 183, 1 }, - { 184, 1 }, - { 198, 2 }, - { 199, 1 }, - { 206, 1 }, - { 206, 1 }, - { 162, 1 }, - { 197, 1 }, - { 220, 1 }, - { 220, 1 }, - { 220, 1 }, - { 220, 1 }, - { 220, 1 }, - { 220, 1 }, - { 158, 1 }, - { 225, 0 }, - { 225, 3 }, - { 228, 1 }, - { 229, 0 }, - { 231, 0 }, - { 231, 1 }, + { 197, 2 }, + { 198, 1 }, + { 205, 1 }, + { 205, 1 }, + { 161, 1 }, + { 196, 1 }, + { 219, 1 }, + { 219, 1 }, + { 219, 1 }, + { 219, 1 }, + { 219, 1 }, + { 219, 1 }, + { 157, 1 }, + { 224, 0 }, + { 224, 3 }, + { 227, 1 }, + { 228, 0 }, }; static void yy_accept(yyParser*); /* Forward Declaration */ @@ -2175,83 +2163,83 @@ static void yy_reduce( case 0: /* ecmd ::= explain cmdx SEMI */ #line 111 "parse.y" { sqlite3FinishCoding(pParse); } -#line 2179 "parse.c" +#line 2167 "parse.c" break; case 1: /* ecmd ::= SEMI */ #line 112 "parse.y" { sqlite3ErrorMsg(pParse, "syntax error: empty request"); } -#line 2186 "parse.c" +#line 2174 "parse.c" break; case 2: /* explain ::= EXPLAIN */ #line 117 "parse.y" { pParse->explain = 1; } -#line 2191 "parse.c" +#line 2179 "parse.c" break; case 3: /* explain ::= EXPLAIN QUERY PLAN */ #line 118 "parse.y" { pParse->explain = 2; } -#line 2196 "parse.c" +#line 2184 "parse.c" break; case 4: /* cmd ::= BEGIN transtype trans_opt */ #line 150 "parse.y" -{sqlite3BeginTransaction(pParse, yymsp[-1].minor.yy322);} -#line 2201 "parse.c" +{sqlite3BeginTransaction(pParse, yymsp[-1].minor.yy52);} +#line 2189 "parse.c" break; case 5: /* transtype ::= */ #line 155 "parse.y" -{yymsp[1].minor.yy322 = TK_DEFERRED;} -#line 2206 "parse.c" +{yymsp[1].minor.yy52 = TK_DEFERRED;} +#line 2194 "parse.c" break; case 6: /* transtype ::= DEFERRED */ #line 156 "parse.y" -{yymsp[0].minor.yy322 = yymsp[0].major; /*A-overwrites-X*/} -#line 2211 "parse.c" +{yymsp[0].minor.yy52 = yymsp[0].major; /*A-overwrites-X*/} +#line 2199 "parse.c" break; case 7: /* cmd ::= COMMIT trans_opt */ case 8: /* cmd ::= END trans_opt */ yytestcase(yyruleno==8); #line 157 "parse.y" {sqlite3CommitTransaction(pParse);} -#line 2217 "parse.c" +#line 2205 "parse.c" break; case 9: /* cmd ::= ROLLBACK trans_opt */ #line 159 "parse.y" {sqlite3RollbackTransaction(pParse);} -#line 2222 "parse.c" +#line 2210 "parse.c" break; case 10: /* cmd ::= SAVEPOINT nm */ #line 163 "parse.y" { sqlite3Savepoint(pParse, SAVEPOINT_BEGIN, &yymsp[0].minor.yy0); } -#line 2229 "parse.c" +#line 2217 "parse.c" break; case 11: /* cmd ::= RELEASE savepoint_opt nm */ #line 166 "parse.y" { sqlite3Savepoint(pParse, SAVEPOINT_RELEASE, &yymsp[0].minor.yy0); } -#line 2236 "parse.c" +#line 2224 "parse.c" break; case 12: /* cmd ::= ROLLBACK trans_opt TO savepoint_opt nm */ #line 169 "parse.y" { sqlite3Savepoint(pParse, SAVEPOINT_ROLLBACK, &yymsp[0].minor.yy0); } -#line 2243 "parse.c" +#line 2231 "parse.c" break; case 13: /* create_table ::= createkw TABLE ifnotexists nm */ #line 176 "parse.y" { - sqlite3StartTable(pParse,&yymsp[0].minor.yy0,yymsp[-1].minor.yy322); + sqlite3StartTable(pParse,&yymsp[0].minor.yy0,yymsp[-1].minor.yy52); } -#line 2250 "parse.c" +#line 2238 "parse.c" break; case 14: /* createkw ::= CREATE */ #line 179 "parse.y" {disableLookaside(pParse);} -#line 2255 "parse.c" +#line 2243 "parse.c" break; case 15: /* ifnotexists ::= */ case 38: /* autoinc ::= */ yytestcase(yyruleno==38); @@ -2261,33 +2249,33 @@ static void yy_reduce( case 86: /* distinct ::= */ yytestcase(yyruleno==86); case 208: /* collate ::= */ yytestcase(yyruleno==208); #line 182 "parse.y" -{yymsp[1].minor.yy322 = 0;} -#line 2266 "parse.c" +{yymsp[1].minor.yy52 = 0;} +#line 2254 "parse.c" break; case 16: /* ifnotexists ::= IF NOT EXISTS */ #line 183 "parse.y" -{yymsp[-2].minor.yy322 = 1;} -#line 2271 "parse.c" +{yymsp[-2].minor.yy52 = 1;} +#line 2259 "parse.c" break; case 17: /* create_table_args ::= LP columnlist conslist_opt RP */ #line 185 "parse.y" { sqlite3EndTable(pParse,&yymsp[-1].minor.yy0,&yymsp[0].minor.yy0,0,0); } -#line 2278 "parse.c" +#line 2266 "parse.c" break; case 18: /* create_table_args ::= AS select */ #line 188 "parse.y" { - sqlite3EndTable(pParse,0,0,0,yymsp[0].minor.yy309); - sqlite3SelectDelete(pParse->db, yymsp[0].minor.yy309); + sqlite3EndTable(pParse,0,0,0,yymsp[0].minor.yy279); + sqlite3SelectDelete(pParse->db, yymsp[0].minor.yy279); } -#line 2286 "parse.c" +#line 2274 "parse.c" break; case 19: /* columnname ::= nm typetoken */ #line 194 "parse.y" {sqlite3AddColumn(pParse,&yymsp[-1].minor.yy0,&yymsp[0].minor.yy0);} -#line 2291 "parse.c" +#line 2279 "parse.c" break; case 20: /* nm ::= ID|INDEXED */ #line 225 "parse.y" @@ -2296,61 +2284,61 @@ static void yy_reduce( sqlite3ErrorMsg(pParse, "keyword \"%T\" is reserved", &yymsp[0].minor.yy0); } } -#line 2300 "parse.c" +#line 2288 "parse.c" break; case 21: /* typetoken ::= */ case 56: /* conslist_opt ::= */ yytestcase(yyruleno==56); case 92: /* as ::= */ yytestcase(yyruleno==92); #line 236 "parse.y" {yymsp[1].minor.yy0.n = 0; yymsp[1].minor.yy0.z = 0;} -#line 2307 "parse.c" +#line 2295 "parse.c" break; case 22: /* typetoken ::= typename LP signed RP */ #line 238 "parse.y" { yymsp[-3].minor.yy0.n = (int)(&yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n] - yymsp[-3].minor.yy0.z); } -#line 2314 "parse.c" +#line 2302 "parse.c" break; case 23: /* typetoken ::= typename LP signed COMMA signed RP */ #line 241 "parse.y" { yymsp[-5].minor.yy0.n = (int)(&yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n] - yymsp[-5].minor.yy0.z); } -#line 2321 "parse.c" +#line 2309 "parse.c" break; case 24: /* typename ::= typename ID|STRING */ #line 246 "parse.y" {yymsp[-1].minor.yy0.n=yymsp[0].minor.yy0.n+(int)(yymsp[0].minor.yy0.z-yymsp[-1].minor.yy0.z);} -#line 2326 "parse.c" +#line 2314 "parse.c" break; case 25: /* ccons ::= CONSTRAINT nm */ case 58: /* tcons ::= CONSTRAINT nm */ yytestcase(yyruleno==58); #line 255 "parse.y" {pParse->constraintName = yymsp[0].minor.yy0;} -#line 2332 "parse.c" +#line 2320 "parse.c" break; case 26: /* ccons ::= DEFAULT term */ case 28: /* ccons ::= DEFAULT PLUS term */ yytestcase(yyruleno==28); #line 256 "parse.y" -{sqlite3AddDefaultValue(pParse,&yymsp[0].minor.yy200);} -#line 2338 "parse.c" +{sqlite3AddDefaultValue(pParse,&yymsp[0].minor.yy162);} +#line 2326 "parse.c" break; case 27: /* ccons ::= DEFAULT LP expr RP */ #line 257 "parse.y" -{sqlite3AddDefaultValue(pParse,&yymsp[-1].minor.yy200);} -#line 2343 "parse.c" +{sqlite3AddDefaultValue(pParse,&yymsp[-1].minor.yy162);} +#line 2331 "parse.c" break; case 29: /* ccons ::= DEFAULT MINUS term */ #line 259 "parse.y" { ExprSpan v; - v.pExpr = sqlite3PExpr(pParse, TK_UMINUS, yymsp[0].minor.yy200.pExpr, 0); + v.pExpr = sqlite3PExpr(pParse, TK_UMINUS, yymsp[0].minor.yy162.pExpr, 0); v.zStart = yymsp[-1].minor.yy0.z; - v.zEnd = yymsp[0].minor.yy200.zEnd; + v.zEnd = yymsp[0].minor.yy162.zEnd; sqlite3AddDefaultValue(pParse,&v); } -#line 2354 "parse.c" +#line 2342 "parse.c" break; case 30: /* ccons ::= DEFAULT ID|INDEXED */ #line 266 "parse.y" @@ -2359,115 +2347,115 @@ static void yy_reduce( spanExpr(&v, pParse, TK_STRING, yymsp[0].minor.yy0); sqlite3AddDefaultValue(pParse,&v); } -#line 2363 "parse.c" +#line 2351 "parse.c" break; case 31: /* ccons ::= NOT NULL onconf */ #line 276 "parse.y" -{sqlite3AddNotNull(pParse, yymsp[0].minor.yy322);} -#line 2368 "parse.c" +{sqlite3AddNotNull(pParse, yymsp[0].minor.yy52);} +#line 2356 "parse.c" break; case 32: /* ccons ::= PRIMARY KEY sortorder onconf autoinc */ #line 278 "parse.y" -{sqlite3AddPrimaryKey(pParse,0,yymsp[-1].minor.yy322,yymsp[0].minor.yy322,yymsp[-2].minor.yy322);} -#line 2373 "parse.c" +{sqlite3AddPrimaryKey(pParse,0,yymsp[-1].minor.yy52,yymsp[0].minor.yy52,yymsp[-2].minor.yy52);} +#line 2361 "parse.c" break; case 33: /* ccons ::= UNIQUE onconf */ #line 279 "parse.y" -{sqlite3CreateIndex(pParse,0,0,0,yymsp[0].minor.yy322,0,0,0,0, +{sqlite3CreateIndex(pParse,0,0,0,yymsp[0].minor.yy52,0,0,0,0, SQLITE_IDXTYPE_UNIQUE);} -#line 2379 "parse.c" +#line 2367 "parse.c" break; case 34: /* ccons ::= CHECK LP expr RP */ #line 281 "parse.y" -{sqlite3AddCheckConstraint(pParse,yymsp[-1].minor.yy200.pExpr);} -#line 2384 "parse.c" +{sqlite3AddCheckConstraint(pParse,yymsp[-1].minor.yy162.pExpr);} +#line 2372 "parse.c" break; case 35: /* ccons ::= REFERENCES nm eidlist_opt refargs */ #line 283 "parse.y" -{sqlite3CreateForeignKey(pParse,0,&yymsp[-2].minor.yy0,yymsp[-1].minor.yy272,yymsp[0].minor.yy322);} -#line 2389 "parse.c" +{sqlite3CreateForeignKey(pParse,0,&yymsp[-2].minor.yy0,yymsp[-1].minor.yy382,yymsp[0].minor.yy52);} +#line 2377 "parse.c" break; case 36: /* ccons ::= defer_subclause */ #line 284 "parse.y" -{sqlite3DeferForeignKey(pParse,yymsp[0].minor.yy322);} -#line 2394 "parse.c" +{sqlite3DeferForeignKey(pParse,yymsp[0].minor.yy52);} +#line 2382 "parse.c" break; case 37: /* ccons ::= COLLATE ID|INDEXED */ #line 285 "parse.y" {sqlite3AddCollateType(pParse, &yymsp[0].minor.yy0);} -#line 2399 "parse.c" +#line 2387 "parse.c" break; case 39: /* autoinc ::= AUTOINCR */ #line 290 "parse.y" -{yymsp[0].minor.yy322 = 1;} -#line 2404 "parse.c" +{yymsp[0].minor.yy52 = 1;} +#line 2392 "parse.c" break; case 40: /* refargs ::= */ #line 298 "parse.y" -{ yymsp[1].minor.yy322 = OE_None*0x0101; /* EV: R-19803-45884 */} -#line 2409 "parse.c" +{ yymsp[1].minor.yy52 = OE_None*0x0101; /* EV: R-19803-45884 */} +#line 2397 "parse.c" break; case 41: /* refargs ::= refargs refarg */ #line 299 "parse.y" -{ yymsp[-1].minor.yy322 = (yymsp[-1].minor.yy322 & ~yymsp[0].minor.yy369.mask) | yymsp[0].minor.yy369.value; } -#line 2414 "parse.c" +{ yymsp[-1].minor.yy52 = (yymsp[-1].minor.yy52 & ~yymsp[0].minor.yy107.mask) | yymsp[0].minor.yy107.value; } +#line 2402 "parse.c" break; case 42: /* refarg ::= MATCH nm */ #line 301 "parse.y" -{ yymsp[-1].minor.yy369.value = 0; yymsp[-1].minor.yy369.mask = 0x000000; } -#line 2419 "parse.c" +{ yymsp[-1].minor.yy107.value = 0; yymsp[-1].minor.yy107.mask = 0x000000; } +#line 2407 "parse.c" break; case 43: /* refarg ::= ON INSERT refact */ #line 302 "parse.y" -{ yymsp[-2].minor.yy369.value = 0; yymsp[-2].minor.yy369.mask = 0x000000; } -#line 2424 "parse.c" +{ yymsp[-2].minor.yy107.value = 0; yymsp[-2].minor.yy107.mask = 0x000000; } +#line 2412 "parse.c" break; case 44: /* refarg ::= ON DELETE refact */ #line 303 "parse.y" -{ yymsp[-2].minor.yy369.value = yymsp[0].minor.yy322; yymsp[-2].minor.yy369.mask = 0x0000ff; } -#line 2429 "parse.c" +{ yymsp[-2].minor.yy107.value = yymsp[0].minor.yy52; yymsp[-2].minor.yy107.mask = 0x0000ff; } +#line 2417 "parse.c" break; case 45: /* refarg ::= ON UPDATE refact */ #line 304 "parse.y" -{ yymsp[-2].minor.yy369.value = yymsp[0].minor.yy322<<8; yymsp[-2].minor.yy369.mask = 0x00ff00; } -#line 2434 "parse.c" +{ yymsp[-2].minor.yy107.value = yymsp[0].minor.yy52<<8; yymsp[-2].minor.yy107.mask = 0x00ff00; } +#line 2422 "parse.c" break; case 46: /* refact ::= SET NULL */ #line 306 "parse.y" -{ yymsp[-1].minor.yy322 = OE_SetNull; /* EV: R-33326-45252 */} -#line 2439 "parse.c" +{ yymsp[-1].minor.yy52 = OE_SetNull; /* EV: R-33326-45252 */} +#line 2427 "parse.c" break; case 47: /* refact ::= SET DEFAULT */ #line 307 "parse.y" -{ yymsp[-1].minor.yy322 = OE_SetDflt; /* EV: R-33326-45252 */} -#line 2444 "parse.c" +{ yymsp[-1].minor.yy52 = OE_SetDflt; /* EV: R-33326-45252 */} +#line 2432 "parse.c" break; case 48: /* refact ::= CASCADE */ #line 308 "parse.y" -{ yymsp[0].minor.yy322 = OE_Cascade; /* EV: R-33326-45252 */} -#line 2449 "parse.c" +{ yymsp[0].minor.yy52 = OE_Cascade; /* EV: R-33326-45252 */} +#line 2437 "parse.c" break; case 49: /* refact ::= RESTRICT */ #line 309 "parse.y" -{ yymsp[0].minor.yy322 = OE_Restrict; /* EV: R-33326-45252 */} -#line 2454 "parse.c" +{ yymsp[0].minor.yy52 = OE_Restrict; /* EV: R-33326-45252 */} +#line 2442 "parse.c" break; case 50: /* refact ::= NO ACTION */ #line 310 "parse.y" -{ yymsp[-1].minor.yy322 = OE_None; /* EV: R-33326-45252 */} -#line 2459 "parse.c" +{ yymsp[-1].minor.yy52 = OE_None; /* EV: R-33326-45252 */} +#line 2447 "parse.c" break; case 51: /* defer_subclause ::= NOT DEFERRABLE init_deferred_pred_opt */ #line 312 "parse.y" -{yymsp[-2].minor.yy322 = 0;} -#line 2464 "parse.c" +{yymsp[-2].minor.yy52 = 0;} +#line 2452 "parse.c" break; case 52: /* defer_subclause ::= DEFERRABLE init_deferred_pred_opt */ case 67: /* orconf ::= OR resolvetype */ yytestcase(yyruleno==67); case 138: /* insert_cmd ::= INSERT orconf */ yytestcase(yyruleno==138); #line 313 "parse.y" -{yymsp[-1].minor.yy322 = yymsp[0].minor.yy322;} -#line 2471 "parse.c" +{yymsp[-1].minor.yy52 = yymsp[0].minor.yy52;} +#line 2459 "parse.c" break; case 54: /* init_deferred_pred_opt ::= INITIALLY DEFERRED */ case 71: /* ifexists ::= IF EXISTS */ yytestcase(yyruleno==71); @@ -2475,114 +2463,114 @@ static void yy_reduce( case 183: /* in_op ::= NOT IN */ yytestcase(yyruleno==183); case 209: /* collate ::= COLLATE ID|INDEXED */ yytestcase(yyruleno==209); #line 316 "parse.y" -{yymsp[-1].minor.yy322 = 1;} -#line 2480 "parse.c" +{yymsp[-1].minor.yy52 = 1;} +#line 2468 "parse.c" break; case 55: /* init_deferred_pred_opt ::= INITIALLY IMMEDIATE */ #line 317 "parse.y" -{yymsp[-1].minor.yy322 = 0;} -#line 2485 "parse.c" +{yymsp[-1].minor.yy52 = 0;} +#line 2473 "parse.c" break; case 57: /* tconscomma ::= COMMA */ #line 323 "parse.y" {pParse->constraintName.n = 0;} -#line 2490 "parse.c" +#line 2478 "parse.c" break; case 59: /* tcons ::= PRIMARY KEY LP sortlist autoinc RP onconf */ #line 327 "parse.y" -{sqlite3AddPrimaryKey(pParse,yymsp[-3].minor.yy272,yymsp[0].minor.yy322,yymsp[-2].minor.yy322,0);} -#line 2495 "parse.c" +{sqlite3AddPrimaryKey(pParse,yymsp[-3].minor.yy382,yymsp[0].minor.yy52,yymsp[-2].minor.yy52,0);} +#line 2483 "parse.c" break; case 60: /* tcons ::= UNIQUE LP sortlist RP onconf */ #line 329 "parse.y" -{sqlite3CreateIndex(pParse,0,0,yymsp[-2].minor.yy272,yymsp[0].minor.yy322,0,0,0,0, +{sqlite3CreateIndex(pParse,0,0,yymsp[-2].minor.yy382,yymsp[0].minor.yy52,0,0,0,0, SQLITE_IDXTYPE_UNIQUE);} -#line 2501 "parse.c" +#line 2489 "parse.c" break; case 61: /* tcons ::= CHECK LP expr RP onconf */ #line 332 "parse.y" -{sqlite3AddCheckConstraint(pParse,yymsp[-2].minor.yy200.pExpr);} -#line 2506 "parse.c" +{sqlite3AddCheckConstraint(pParse,yymsp[-2].minor.yy162.pExpr);} +#line 2494 "parse.c" break; case 62: /* tcons ::= FOREIGN KEY LP eidlist RP REFERENCES nm eidlist_opt refargs defer_subclause_opt */ #line 334 "parse.y" { - sqlite3CreateForeignKey(pParse, yymsp[-6].minor.yy272, &yymsp[-3].minor.yy0, yymsp[-2].minor.yy272, yymsp[-1].minor.yy322); - sqlite3DeferForeignKey(pParse, yymsp[0].minor.yy322); + sqlite3CreateForeignKey(pParse, yymsp[-6].minor.yy382, &yymsp[-3].minor.yy0, yymsp[-2].minor.yy382, yymsp[-1].minor.yy52); + sqlite3DeferForeignKey(pParse, yymsp[0].minor.yy52); } -#line 2514 "parse.c" +#line 2502 "parse.c" break; case 64: /* onconf ::= */ case 66: /* orconf ::= */ yytestcase(yyruleno==66); #line 348 "parse.y" -{yymsp[1].minor.yy322 = OE_Default;} -#line 2520 "parse.c" +{yymsp[1].minor.yy52 = OE_Default;} +#line 2508 "parse.c" break; case 65: /* onconf ::= ON CONFLICT resolvetype */ #line 349 "parse.y" -{yymsp[-2].minor.yy322 = yymsp[0].minor.yy322;} -#line 2525 "parse.c" +{yymsp[-2].minor.yy52 = yymsp[0].minor.yy52;} +#line 2513 "parse.c" break; case 68: /* resolvetype ::= IGNORE */ #line 353 "parse.y" -{yymsp[0].minor.yy322 = OE_Ignore;} -#line 2530 "parse.c" +{yymsp[0].minor.yy52 = OE_Ignore;} +#line 2518 "parse.c" break; case 69: /* resolvetype ::= REPLACE */ case 139: /* insert_cmd ::= REPLACE */ yytestcase(yyruleno==139); #line 354 "parse.y" -{yymsp[0].minor.yy322 = OE_Replace;} -#line 2536 "parse.c" +{yymsp[0].minor.yy52 = OE_Replace;} +#line 2524 "parse.c" break; case 70: /* cmd ::= DROP TABLE ifexists fullname */ #line 358 "parse.y" { - sqlite3DropTable(pParse, yymsp[0].minor.yy73, 0, yymsp[-1].minor.yy322); + sqlite3DropTable(pParse, yymsp[0].minor.yy387, 0, yymsp[-1].minor.yy52); } -#line 2543 "parse.c" +#line 2531 "parse.c" break; case 73: /* cmd ::= createkw VIEW ifnotexists nm eidlist_opt AS select */ #line 369 "parse.y" { - sqlite3CreateView(pParse, &yymsp[-6].minor.yy0, &yymsp[-3].minor.yy0, yymsp[-2].minor.yy272, yymsp[0].minor.yy309, yymsp[-4].minor.yy322); + sqlite3CreateView(pParse, &yymsp[-6].minor.yy0, &yymsp[-3].minor.yy0, yymsp[-2].minor.yy382, yymsp[0].minor.yy279, yymsp[-4].minor.yy52); } -#line 2550 "parse.c" +#line 2538 "parse.c" break; case 74: /* cmd ::= DROP VIEW ifexists fullname */ #line 372 "parse.y" { - sqlite3DropTable(pParse, yymsp[0].minor.yy73, 1, yymsp[-1].minor.yy322); + sqlite3DropTable(pParse, yymsp[0].minor.yy387, 1, yymsp[-1].minor.yy52); } -#line 2557 "parse.c" +#line 2545 "parse.c" break; case 75: /* cmd ::= select */ #line 379 "parse.y" { SelectDest dest = {SRT_Output, 0, 0, 0, 0, 0}; - sqlite3Select(pParse, yymsp[0].minor.yy309, &dest); - sqlite3SelectDelete(pParse->db, yymsp[0].minor.yy309); + sqlite3Select(pParse, yymsp[0].minor.yy279, &dest); + sqlite3SelectDelete(pParse->db, yymsp[0].minor.yy279); } -#line 2566 "parse.c" +#line 2554 "parse.c" break; case 76: /* select ::= with selectnowith */ #line 416 "parse.y" { - Select *p = yymsp[0].minor.yy309; + Select *p = yymsp[0].minor.yy279; if( p ){ - p->pWith = yymsp[-1].minor.yy445; + p->pWith = yymsp[-1].minor.yy151; parserDoubleLinkSelect(pParse, p); }else{ - sqlite3WithDelete(pParse->db, yymsp[-1].minor.yy445); + sqlite3WithDelete(pParse->db, yymsp[-1].minor.yy151); } - yymsp[-1].minor.yy309 = p; /*A-overwrites-W*/ + yymsp[-1].minor.yy279 = p; /*A-overwrites-W*/ } -#line 2580 "parse.c" +#line 2568 "parse.c" break; case 77: /* selectnowith ::= selectnowith multiselect_op oneselect */ #line 429 "parse.y" { - Select *pRhs = yymsp[0].minor.yy309; - Select *pLhs = yymsp[-2].minor.yy309; + Select *pRhs = yymsp[0].minor.yy279; + Select *pLhs = yymsp[-2].minor.yy279; if( pRhs && pRhs->pPrior ){ SrcList *pFrom; Token x; @@ -2592,28 +2580,28 @@ static void yy_reduce( pRhs = sqlite3SelectNew(pParse,0,pFrom,0,0,0,0,0,0,0); } if( pRhs ){ - pRhs->op = (u8)yymsp[-1].minor.yy322; + pRhs->op = (u8)yymsp[-1].minor.yy52; pRhs->pPrior = pLhs; if( ALWAYS(pLhs) ) pLhs->selFlags &= ~SF_MultiValue; pRhs->selFlags &= ~SF_MultiValue; - if( yymsp[-1].minor.yy322!=TK_ALL ) pParse->hasCompound = 1; + if( yymsp[-1].minor.yy52!=TK_ALL ) pParse->hasCompound = 1; }else{ sqlite3SelectDelete(pParse->db, pLhs); } - yymsp[-2].minor.yy309 = pRhs; + yymsp[-2].minor.yy279 = pRhs; } -#line 2606 "parse.c" +#line 2594 "parse.c" break; case 78: /* multiselect_op ::= UNION */ case 80: /* multiselect_op ::= EXCEPT|INTERSECT */ yytestcase(yyruleno==80); #line 452 "parse.y" -{yymsp[0].minor.yy322 = yymsp[0].major; /*A-overwrites-OP*/} -#line 2612 "parse.c" +{yymsp[0].minor.yy52 = yymsp[0].major; /*A-overwrites-OP*/} +#line 2600 "parse.c" break; case 79: /* multiselect_op ::= UNION ALL */ #line 453 "parse.y" -{yymsp[-1].minor.yy322 = TK_ALL;} -#line 2617 "parse.c" +{yymsp[-1].minor.yy52 = TK_ALL;} +#line 2605 "parse.c" break; case 81: /* oneselect ::= SELECT distinct selcollist from where_opt groupby_opt having_opt orderby_opt limit_opt */ #line 457 "parse.y" @@ -2621,7 +2609,7 @@ static void yy_reduce( #if SELECTTRACE_ENABLED Token s = yymsp[-8].minor.yy0; /*A-overwrites-S*/ #endif - yymsp[-8].minor.yy309 = sqlite3SelectNew(pParse,yymsp[-6].minor.yy272,yymsp[-5].minor.yy73,yymsp[-4].minor.yy294,yymsp[-3].minor.yy272,yymsp[-2].minor.yy294,yymsp[-1].minor.yy272,yymsp[-7].minor.yy322,yymsp[0].minor.yy400.pLimit,yymsp[0].minor.yy400.pOffset); + yymsp[-8].minor.yy279 = sqlite3SelectNew(pParse,yymsp[-6].minor.yy382,yymsp[-5].minor.yy387,yymsp[-4].minor.yy362,yymsp[-3].minor.yy382,yymsp[-2].minor.yy362,yymsp[-1].minor.yy382,yymsp[-7].minor.yy52,yymsp[0].minor.yy384.pLimit,yymsp[0].minor.yy384.pOffset); #if SELECTTRACE_ENABLED /* Populate the Select.zSelName[] string that is used to help with ** query planner debugging, to differentiate between multiple Select @@ -2632,55 +2620,55 @@ static void yy_reduce( ** comment to be the zSelName value. Otherwise, the label is #N where ** is an integer that is incremented with each SELECT statement seen. */ - if( yymsp[-8].minor.yy309!=0 ){ + if( yymsp[-8].minor.yy279!=0 ){ const char *z = s.z+6; int i; - sqlite3_snprintf(sizeof(yymsp[-8].minor.yy309->zSelName), yymsp[-8].minor.yy309->zSelName, "#%d", + sqlite3_snprintf(sizeof(yymsp[-8].minor.yy279->zSelName), yymsp[-8].minor.yy279->zSelName, "#%d", ++pParse->nSelect); while( z[0]==' ' ) z++; if( z[0]=='/' && z[1]=='*' ){ z += 2; while( z[0]==' ' ) z++; for(i=0; sqlite3Isalnum(z[i]); i++){} - sqlite3_snprintf(sizeof(yymsp[-8].minor.yy309->zSelName), yymsp[-8].minor.yy309->zSelName, "%.*s", i, z); + sqlite3_snprintf(sizeof(yymsp[-8].minor.yy279->zSelName), yymsp[-8].minor.yy279->zSelName, "%.*s", i, z); } } #endif /* SELECTRACE_ENABLED */ } -#line 2651 "parse.c" +#line 2639 "parse.c" break; case 82: /* values ::= VALUES LP nexprlist RP */ #line 491 "parse.y" { - yymsp[-3].minor.yy309 = sqlite3SelectNew(pParse,yymsp[-1].minor.yy272,0,0,0,0,0,SF_Values,0,0); + yymsp[-3].minor.yy279 = sqlite3SelectNew(pParse,yymsp[-1].minor.yy382,0,0,0,0,0,SF_Values,0,0); } -#line 2658 "parse.c" +#line 2646 "parse.c" break; case 83: /* values ::= values COMMA LP exprlist RP */ #line 494 "parse.y" { - Select *pRight, *pLeft = yymsp[-4].minor.yy309; - pRight = sqlite3SelectNew(pParse,yymsp[-1].minor.yy272,0,0,0,0,0,SF_Values|SF_MultiValue,0,0); + Select *pRight, *pLeft = yymsp[-4].minor.yy279; + pRight = sqlite3SelectNew(pParse,yymsp[-1].minor.yy382,0,0,0,0,0,SF_Values|SF_MultiValue,0,0); if( ALWAYS(pLeft) ) pLeft->selFlags &= ~SF_MultiValue; if( pRight ){ pRight->op = TK_ALL; pRight->pPrior = pLeft; - yymsp[-4].minor.yy309 = pRight; + yymsp[-4].minor.yy279 = pRight; }else{ - yymsp[-4].minor.yy309 = pLeft; + yymsp[-4].minor.yy279 = pLeft; } } -#line 2674 "parse.c" +#line 2662 "parse.c" break; case 84: /* distinct ::= DISTINCT */ #line 511 "parse.y" -{yymsp[0].minor.yy322 = SF_Distinct;} -#line 2679 "parse.c" +{yymsp[0].minor.yy52 = SF_Distinct;} +#line 2667 "parse.c" break; case 85: /* distinct ::= ALL */ #line 512 "parse.y" -{yymsp[0].minor.yy322 = SF_All;} -#line 2684 "parse.c" +{yymsp[0].minor.yy52 = SF_All;} +#line 2672 "parse.c" break; case 87: /* sclp ::= */ case 113: /* orderby_opt ::= */ yytestcase(yyruleno==113); @@ -2689,25 +2677,25 @@ static void yy_reduce( case 199: /* paren_exprlist ::= */ yytestcase(yyruleno==199); case 204: /* eidlist_opt ::= */ yytestcase(yyruleno==204); #line 525 "parse.y" -{yymsp[1].minor.yy272 = 0;} -#line 2694 "parse.c" +{yymsp[1].minor.yy382 = 0;} +#line 2682 "parse.c" break; case 88: /* selcollist ::= sclp expr as */ #line 526 "parse.y" { - yymsp[-2].minor.yy272 = sqlite3ExprListAppend(pParse, yymsp[-2].minor.yy272, yymsp[-1].minor.yy200.pExpr); - if( yymsp[0].minor.yy0.n>0 ) sqlite3ExprListSetName(pParse, yymsp[-2].minor.yy272, &yymsp[0].minor.yy0, 1); - sqlite3ExprListSetSpan(pParse,yymsp[-2].minor.yy272,&yymsp[-1].minor.yy200); + yymsp[-2].minor.yy382 = sqlite3ExprListAppend(pParse, yymsp[-2].minor.yy382, yymsp[-1].minor.yy162.pExpr); + if( yymsp[0].minor.yy0.n>0 ) sqlite3ExprListSetName(pParse, yymsp[-2].minor.yy382, &yymsp[0].minor.yy0, 1); + sqlite3ExprListSetSpan(pParse,yymsp[-2].minor.yy382,&yymsp[-1].minor.yy162); } -#line 2703 "parse.c" +#line 2691 "parse.c" break; case 89: /* selcollist ::= sclp STAR */ #line 531 "parse.y" { Expr *p = sqlite3Expr(pParse->db, TK_ASTERISK, 0); - yymsp[-1].minor.yy272 = sqlite3ExprListAppend(pParse, yymsp[-1].minor.yy272, p); + yymsp[-1].minor.yy382 = sqlite3ExprListAppend(pParse, yymsp[-1].minor.yy382, p); } -#line 2711 "parse.c" +#line 2699 "parse.c" break; case 90: /* selcollist ::= sclp nm DOT STAR */ #line 535 "parse.y" @@ -2715,122 +2703,122 @@ static void yy_reduce( Expr *pRight = sqlite3PExpr(pParse, TK_ASTERISK, 0, 0); Expr *pLeft = sqlite3ExprAlloc(pParse->db, TK_ID, &yymsp[-2].minor.yy0, 1); Expr *pDot = sqlite3PExpr(pParse, TK_DOT, pLeft, pRight); - yymsp[-3].minor.yy272 = sqlite3ExprListAppend(pParse,yymsp[-3].minor.yy272, pDot); + yymsp[-3].minor.yy382 = sqlite3ExprListAppend(pParse,yymsp[-3].minor.yy382, pDot); } -#line 2721 "parse.c" +#line 2709 "parse.c" break; case 91: /* as ::= AS nm */ case 217: /* plus_num ::= PLUS INTEGER|FLOAT */ yytestcase(yyruleno==217); case 218: /* minus_num ::= MINUS INTEGER|FLOAT */ yytestcase(yyruleno==218); #line 546 "parse.y" {yymsp[-1].minor.yy0 = yymsp[0].minor.yy0;} -#line 2728 "parse.c" +#line 2716 "parse.c" break; case 93: /* from ::= */ #line 560 "parse.y" -{yymsp[1].minor.yy73 = sqlite3DbMallocZero(pParse->db, sizeof(*yymsp[1].minor.yy73));} -#line 2733 "parse.c" +{yymsp[1].minor.yy387 = sqlite3DbMallocZero(pParse->db, sizeof(*yymsp[1].minor.yy387));} +#line 2721 "parse.c" break; case 94: /* from ::= FROM seltablist */ #line 561 "parse.y" { - yymsp[-1].minor.yy73 = yymsp[0].minor.yy73; - sqlite3SrcListShiftJoinType(yymsp[-1].minor.yy73); + yymsp[-1].minor.yy387 = yymsp[0].minor.yy387; + sqlite3SrcListShiftJoinType(yymsp[-1].minor.yy387); } -#line 2741 "parse.c" +#line 2729 "parse.c" break; case 95: /* stl_prefix ::= seltablist joinop */ #line 569 "parse.y" { - if( ALWAYS(yymsp[-1].minor.yy73 && yymsp[-1].minor.yy73->nSrc>0) ) yymsp[-1].minor.yy73->a[yymsp[-1].minor.yy73->nSrc-1].fg.jointype = (u8)yymsp[0].minor.yy322; + if( ALWAYS(yymsp[-1].minor.yy387 && yymsp[-1].minor.yy387->nSrc>0) ) yymsp[-1].minor.yy387->a[yymsp[-1].minor.yy387->nSrc-1].fg.jointype = (u8)yymsp[0].minor.yy52; } -#line 2748 "parse.c" +#line 2736 "parse.c" break; case 96: /* stl_prefix ::= */ #line 572 "parse.y" -{yymsp[1].minor.yy73 = 0;} -#line 2753 "parse.c" +{yymsp[1].minor.yy387 = 0;} +#line 2741 "parse.c" break; case 97: /* seltablist ::= stl_prefix nm as indexed_opt on_opt using_opt */ #line 574 "parse.y" { - yymsp[-5].minor.yy73 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-5].minor.yy73,&yymsp[-4].minor.yy0,&yymsp[-3].minor.yy0,0,yymsp[-1].minor.yy294,yymsp[0].minor.yy436); - sqlite3SrcListIndexedBy(pParse, yymsp[-5].minor.yy73, &yymsp[-2].minor.yy0); + yymsp[-5].minor.yy387 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-5].minor.yy387,&yymsp[-4].minor.yy0,&yymsp[-3].minor.yy0,0,yymsp[-1].minor.yy362,yymsp[0].minor.yy40); + sqlite3SrcListIndexedBy(pParse, yymsp[-5].minor.yy387, &yymsp[-2].minor.yy0); } -#line 2761 "parse.c" +#line 2749 "parse.c" break; case 98: /* seltablist ::= stl_prefix nm LP exprlist RP as on_opt using_opt */ #line 579 "parse.y" { - yymsp[-7].minor.yy73 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-7].minor.yy73,&yymsp[-6].minor.yy0,&yymsp[-2].minor.yy0,0,yymsp[-1].minor.yy294,yymsp[0].minor.yy436); - sqlite3SrcListFuncArgs(pParse, yymsp[-7].minor.yy73, yymsp[-4].minor.yy272); + yymsp[-7].minor.yy387 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-7].minor.yy387,&yymsp[-6].minor.yy0,&yymsp[-2].minor.yy0,0,yymsp[-1].minor.yy362,yymsp[0].minor.yy40); + sqlite3SrcListFuncArgs(pParse, yymsp[-7].minor.yy387, yymsp[-4].minor.yy382); } -#line 2769 "parse.c" +#line 2757 "parse.c" break; case 99: /* seltablist ::= stl_prefix LP select RP as on_opt using_opt */ #line 585 "parse.y" { - yymsp[-6].minor.yy73 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-6].minor.yy73,0,&yymsp[-2].minor.yy0,yymsp[-4].minor.yy309,yymsp[-1].minor.yy294,yymsp[0].minor.yy436); + yymsp[-6].minor.yy387 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-6].minor.yy387,0,&yymsp[-2].minor.yy0,yymsp[-4].minor.yy279,yymsp[-1].minor.yy362,yymsp[0].minor.yy40); } -#line 2776 "parse.c" +#line 2764 "parse.c" break; case 100: /* seltablist ::= stl_prefix LP seltablist RP as on_opt using_opt */ #line 589 "parse.y" { - if( yymsp[-6].minor.yy73==0 && yymsp[-2].minor.yy0.n==0 && yymsp[-1].minor.yy294==0 && yymsp[0].minor.yy436==0 ){ - yymsp[-6].minor.yy73 = yymsp[-4].minor.yy73; - }else if( yymsp[-4].minor.yy73->nSrc==1 ){ - yymsp[-6].minor.yy73 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-6].minor.yy73,0,&yymsp[-2].minor.yy0,0,yymsp[-1].minor.yy294,yymsp[0].minor.yy436); - if( yymsp[-6].minor.yy73 ){ - struct SrcList_item *pNew = &yymsp[-6].minor.yy73->a[yymsp[-6].minor.yy73->nSrc-1]; - struct SrcList_item *pOld = yymsp[-4].minor.yy73->a; + if( yymsp[-6].minor.yy387==0 && yymsp[-2].minor.yy0.n==0 && yymsp[-1].minor.yy362==0 && yymsp[0].minor.yy40==0 ){ + yymsp[-6].minor.yy387 = yymsp[-4].minor.yy387; + }else if( yymsp[-4].minor.yy387->nSrc==1 ){ + yymsp[-6].minor.yy387 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-6].minor.yy387,0,&yymsp[-2].minor.yy0,0,yymsp[-1].minor.yy362,yymsp[0].minor.yy40); + if( yymsp[-6].minor.yy387 ){ + struct SrcList_item *pNew = &yymsp[-6].minor.yy387->a[yymsp[-6].minor.yy387->nSrc-1]; + struct SrcList_item *pOld = yymsp[-4].minor.yy387->a; pNew->zName = pOld->zName; pNew->pSelect = pOld->pSelect; pOld->zName = 0; pOld->pSelect = 0; } - sqlite3SrcListDelete(pParse->db, yymsp[-4].minor.yy73); + sqlite3SrcListDelete(pParse->db, yymsp[-4].minor.yy387); }else{ Select *pSubquery; - sqlite3SrcListShiftJoinType(yymsp[-4].minor.yy73); - pSubquery = sqlite3SelectNew(pParse,0,yymsp[-4].minor.yy73,0,0,0,0,SF_NestedFrom,0,0); - yymsp[-6].minor.yy73 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-6].minor.yy73,0,&yymsp[-2].minor.yy0,pSubquery,yymsp[-1].minor.yy294,yymsp[0].minor.yy436); + sqlite3SrcListShiftJoinType(yymsp[-4].minor.yy387); + pSubquery = sqlite3SelectNew(pParse,0,yymsp[-4].minor.yy387,0,0,0,0,SF_NestedFrom,0,0); + yymsp[-6].minor.yy387 = sqlite3SrcListAppendFromTerm(pParse,yymsp[-6].minor.yy387,0,&yymsp[-2].minor.yy0,pSubquery,yymsp[-1].minor.yy362,yymsp[0].minor.yy40); } } -#line 2801 "parse.c" +#line 2789 "parse.c" break; case 101: /* fullname ::= nm */ #line 615 "parse.y" -{yymsp[0].minor.yy73 = sqlite3SrcListAppend(pParse->db,0,&yymsp[0].minor.yy0); /*A-overwrites-X*/} -#line 2806 "parse.c" +{yymsp[0].minor.yy387 = sqlite3SrcListAppend(pParse->db,0,&yymsp[0].minor.yy0); /*A-overwrites-X*/} +#line 2794 "parse.c" break; case 102: /* joinop ::= COMMA|JOIN */ #line 621 "parse.y" -{ yymsp[0].minor.yy322 = JT_INNER; } -#line 2811 "parse.c" +{ yymsp[0].minor.yy52 = JT_INNER; } +#line 2799 "parse.c" break; case 103: /* joinop ::= JOIN_KW JOIN */ #line 623 "parse.y" -{yymsp[-1].minor.yy322 = sqlite3JoinType(pParse,&yymsp[-1].minor.yy0,0,0); /*X-overwrites-A*/} -#line 2816 "parse.c" +{yymsp[-1].minor.yy52 = sqlite3JoinType(pParse,&yymsp[-1].minor.yy0,0,0); /*X-overwrites-A*/} +#line 2804 "parse.c" break; case 104: /* joinop ::= JOIN_KW join_nm JOIN */ #line 625 "parse.y" -{yymsp[-2].minor.yy322 = sqlite3JoinType(pParse,&yymsp[-2].minor.yy0,&yymsp[-1].minor.yy0,0); /*X-overwrites-A*/} -#line 2821 "parse.c" +{yymsp[-2].minor.yy52 = sqlite3JoinType(pParse,&yymsp[-2].minor.yy0,&yymsp[-1].minor.yy0,0); /*X-overwrites-A*/} +#line 2809 "parse.c" break; case 105: /* joinop ::= JOIN_KW join_nm join_nm JOIN */ #line 627 "parse.y" -{yymsp[-3].minor.yy322 = sqlite3JoinType(pParse,&yymsp[-3].minor.yy0,&yymsp[-2].minor.yy0,&yymsp[-1].minor.yy0);/*X-overwrites-A*/} -#line 2826 "parse.c" +{yymsp[-3].minor.yy52 = sqlite3JoinType(pParse,&yymsp[-3].minor.yy0,&yymsp[-2].minor.yy0,&yymsp[-1].minor.yy0);/*X-overwrites-A*/} +#line 2814 "parse.c" break; case 106: /* on_opt ::= ON expr */ case 123: /* having_opt ::= HAVING expr */ yytestcase(yyruleno==123); case 130: /* where_opt ::= WHERE expr */ yytestcase(yyruleno==130); case 192: /* case_else ::= ELSE expr */ yytestcase(yyruleno==192); #line 631 "parse.y" -{yymsp[-1].minor.yy294 = yymsp[0].minor.yy200.pExpr;} -#line 2834 "parse.c" +{yymsp[-1].minor.yy362 = yymsp[0].minor.yy162.pExpr;} +#line 2822 "parse.c" break; case 107: /* on_opt ::= */ case 122: /* having_opt ::= */ yytestcase(yyruleno==122); @@ -2838,313 +2826,313 @@ static void yy_reduce( case 193: /* case_else ::= */ yytestcase(yyruleno==193); case 195: /* case_operand ::= */ yytestcase(yyruleno==195); #line 632 "parse.y" -{yymsp[1].minor.yy294 = 0;} -#line 2843 "parse.c" +{yymsp[1].minor.yy362 = 0;} +#line 2831 "parse.c" break; case 108: /* indexed_opt ::= */ #line 645 "parse.y" {yymsp[1].minor.yy0.z=0; yymsp[1].minor.yy0.n=0;} -#line 2848 "parse.c" +#line 2836 "parse.c" break; case 109: /* indexed_opt ::= INDEXED BY nm */ #line 646 "parse.y" {yymsp[-2].minor.yy0 = yymsp[0].minor.yy0;} -#line 2853 "parse.c" +#line 2841 "parse.c" break; case 110: /* indexed_opt ::= NOT INDEXED */ #line 647 "parse.y" {yymsp[-1].minor.yy0.z=0; yymsp[-1].minor.yy0.n=1;} -#line 2858 "parse.c" +#line 2846 "parse.c" break; case 111: /* using_opt ::= USING LP idlist RP */ #line 651 "parse.y" -{yymsp[-3].minor.yy436 = yymsp[-1].minor.yy436;} -#line 2863 "parse.c" +{yymsp[-3].minor.yy40 = yymsp[-1].minor.yy40;} +#line 2851 "parse.c" break; case 112: /* using_opt ::= */ case 140: /* idlist_opt ::= */ yytestcase(yyruleno==140); #line 652 "parse.y" -{yymsp[1].minor.yy436 = 0;} -#line 2869 "parse.c" +{yymsp[1].minor.yy40 = 0;} +#line 2857 "parse.c" break; case 114: /* orderby_opt ::= ORDER BY sortlist */ case 121: /* groupby_opt ::= GROUP BY nexprlist */ yytestcase(yyruleno==121); #line 666 "parse.y" -{yymsp[-2].minor.yy272 = yymsp[0].minor.yy272;} -#line 2875 "parse.c" +{yymsp[-2].minor.yy382 = yymsp[0].minor.yy382;} +#line 2863 "parse.c" break; case 115: /* sortlist ::= sortlist COMMA expr sortorder */ #line 667 "parse.y" { - yymsp[-3].minor.yy272 = sqlite3ExprListAppend(pParse,yymsp[-3].minor.yy272,yymsp[-1].minor.yy200.pExpr); - sqlite3ExprListSetSortOrder(yymsp[-3].minor.yy272,yymsp[0].minor.yy322); + yymsp[-3].minor.yy382 = sqlite3ExprListAppend(pParse,yymsp[-3].minor.yy382,yymsp[-1].minor.yy162.pExpr); + sqlite3ExprListSetSortOrder(yymsp[-3].minor.yy382,yymsp[0].minor.yy52); } -#line 2883 "parse.c" +#line 2871 "parse.c" break; case 116: /* sortlist ::= expr sortorder */ #line 671 "parse.y" { - yymsp[-1].minor.yy272 = sqlite3ExprListAppend(pParse,0,yymsp[-1].minor.yy200.pExpr); /*A-overwrites-Y*/ - sqlite3ExprListSetSortOrder(yymsp[-1].minor.yy272,yymsp[0].minor.yy322); + yymsp[-1].minor.yy382 = sqlite3ExprListAppend(pParse,0,yymsp[-1].minor.yy162.pExpr); /*A-overwrites-Y*/ + sqlite3ExprListSetSortOrder(yymsp[-1].minor.yy382,yymsp[0].minor.yy52); } -#line 2891 "parse.c" +#line 2879 "parse.c" break; case 117: /* sortorder ::= ASC */ #line 678 "parse.y" -{yymsp[0].minor.yy322 = SQLITE_SO_ASC;} -#line 2896 "parse.c" +{yymsp[0].minor.yy52 = SQLITE_SO_ASC;} +#line 2884 "parse.c" break; case 118: /* sortorder ::= DESC */ #line 679 "parse.y" -{yymsp[0].minor.yy322 = SQLITE_SO_DESC;} -#line 2901 "parse.c" +{yymsp[0].minor.yy52 = SQLITE_SO_DESC;} +#line 2889 "parse.c" break; case 119: /* sortorder ::= */ #line 680 "parse.y" -{yymsp[1].minor.yy322 = SQLITE_SO_UNDEFINED;} -#line 2906 "parse.c" +{yymsp[1].minor.yy52 = SQLITE_SO_UNDEFINED;} +#line 2894 "parse.c" break; case 124: /* limit_opt ::= */ #line 705 "parse.y" -{yymsp[1].minor.yy400.pLimit = 0; yymsp[1].minor.yy400.pOffset = 0;} -#line 2911 "parse.c" +{yymsp[1].minor.yy384.pLimit = 0; yymsp[1].minor.yy384.pOffset = 0;} +#line 2899 "parse.c" break; case 125: /* limit_opt ::= LIMIT expr */ #line 706 "parse.y" -{yymsp[-1].minor.yy400.pLimit = yymsp[0].minor.yy200.pExpr; yymsp[-1].minor.yy400.pOffset = 0;} -#line 2916 "parse.c" +{yymsp[-1].minor.yy384.pLimit = yymsp[0].minor.yy162.pExpr; yymsp[-1].minor.yy384.pOffset = 0;} +#line 2904 "parse.c" break; case 126: /* limit_opt ::= LIMIT expr OFFSET expr */ #line 708 "parse.y" -{yymsp[-3].minor.yy400.pLimit = yymsp[-2].minor.yy200.pExpr; yymsp[-3].minor.yy400.pOffset = yymsp[0].minor.yy200.pExpr;} -#line 2921 "parse.c" +{yymsp[-3].minor.yy384.pLimit = yymsp[-2].minor.yy162.pExpr; yymsp[-3].minor.yy384.pOffset = yymsp[0].minor.yy162.pExpr;} +#line 2909 "parse.c" break; case 127: /* limit_opt ::= LIMIT expr COMMA expr */ #line 710 "parse.y" -{yymsp[-3].minor.yy400.pOffset = yymsp[-2].minor.yy200.pExpr; yymsp[-3].minor.yy400.pLimit = yymsp[0].minor.yy200.pExpr;} -#line 2926 "parse.c" +{yymsp[-3].minor.yy384.pOffset = yymsp[-2].minor.yy162.pExpr; yymsp[-3].minor.yy384.pLimit = yymsp[0].minor.yy162.pExpr;} +#line 2914 "parse.c" break; case 128: /* cmd ::= with DELETE FROM fullname indexed_opt where_opt */ #line 727 "parse.y" { - sqlite3WithPush(pParse, yymsp[-5].minor.yy445, 1); - sqlite3SrcListIndexedBy(pParse, yymsp[-2].minor.yy73, &yymsp[-1].minor.yy0); + sqlite3WithPush(pParse, yymsp[-5].minor.yy151, 1); + sqlite3SrcListIndexedBy(pParse, yymsp[-2].minor.yy387, &yymsp[-1].minor.yy0); sqlSubProgramsRemaining = SQL_MAX_COMPILING_TRIGGERS; /* Instruct SQL to initate Tarantool's transaction. */ pParse->initiateTTrans = true; - sqlite3DeleteFrom(pParse,yymsp[-2].minor.yy73,yymsp[0].minor.yy294); + sqlite3DeleteFrom(pParse,yymsp[-2].minor.yy387,yymsp[0].minor.yy362); } -#line 2938 "parse.c" +#line 2926 "parse.c" break; case 131: /* cmd ::= with UPDATE orconf fullname indexed_opt SET setlist where_opt */ #line 760 "parse.y" { - sqlite3WithPush(pParse, yymsp[-7].minor.yy445, 1); - sqlite3SrcListIndexedBy(pParse, yymsp[-4].minor.yy73, &yymsp[-3].minor.yy0); - sqlite3ExprListCheckLength(pParse,yymsp[-1].minor.yy272,"set list"); + sqlite3WithPush(pParse, yymsp[-7].minor.yy151, 1); + sqlite3SrcListIndexedBy(pParse, yymsp[-4].minor.yy387, &yymsp[-3].minor.yy0); + sqlite3ExprListCheckLength(pParse,yymsp[-1].minor.yy382,"set list"); sqlSubProgramsRemaining = SQL_MAX_COMPILING_TRIGGERS; /* Instruct SQL to initate Tarantool's transaction. */ pParse->initiateTTrans = true; - sqlite3Update(pParse,yymsp[-4].minor.yy73,yymsp[-1].minor.yy272,yymsp[0].minor.yy294,yymsp[-5].minor.yy322); + sqlite3Update(pParse,yymsp[-4].minor.yy387,yymsp[-1].minor.yy382,yymsp[0].minor.yy362,yymsp[-5].minor.yy52); } -#line 2951 "parse.c" +#line 2939 "parse.c" break; case 132: /* setlist ::= setlist COMMA nm EQ expr */ #line 774 "parse.y" { - yymsp[-4].minor.yy272 = sqlite3ExprListAppend(pParse, yymsp[-4].minor.yy272, yymsp[0].minor.yy200.pExpr); - sqlite3ExprListSetName(pParse, yymsp[-4].minor.yy272, &yymsp[-2].minor.yy0, 1); + yymsp[-4].minor.yy382 = sqlite3ExprListAppend(pParse, yymsp[-4].minor.yy382, yymsp[0].minor.yy162.pExpr); + sqlite3ExprListSetName(pParse, yymsp[-4].minor.yy382, &yymsp[-2].minor.yy0, 1); } -#line 2959 "parse.c" +#line 2947 "parse.c" break; case 133: /* setlist ::= setlist COMMA LP idlist RP EQ expr */ #line 778 "parse.y" { - yymsp[-6].minor.yy272 = sqlite3ExprListAppendVector(pParse, yymsp[-6].minor.yy272, yymsp[-3].minor.yy436, yymsp[0].minor.yy200.pExpr); + yymsp[-6].minor.yy382 = sqlite3ExprListAppendVector(pParse, yymsp[-6].minor.yy382, yymsp[-3].minor.yy40, yymsp[0].minor.yy162.pExpr); } -#line 2966 "parse.c" +#line 2954 "parse.c" break; case 134: /* setlist ::= nm EQ expr */ #line 781 "parse.y" { - yylhsminor.yy272 = sqlite3ExprListAppend(pParse, 0, yymsp[0].minor.yy200.pExpr); - sqlite3ExprListSetName(pParse, yylhsminor.yy272, &yymsp[-2].minor.yy0, 1); + yylhsminor.yy382 = sqlite3ExprListAppend(pParse, 0, yymsp[0].minor.yy162.pExpr); + sqlite3ExprListSetName(pParse, yylhsminor.yy382, &yymsp[-2].minor.yy0, 1); } -#line 2974 "parse.c" - yymsp[-2].minor.yy272 = yylhsminor.yy272; +#line 2962 "parse.c" + yymsp[-2].minor.yy382 = yylhsminor.yy382; break; case 135: /* setlist ::= LP idlist RP EQ expr */ #line 785 "parse.y" { - yymsp[-4].minor.yy272 = sqlite3ExprListAppendVector(pParse, 0, yymsp[-3].minor.yy436, yymsp[0].minor.yy200.pExpr); + yymsp[-4].minor.yy382 = sqlite3ExprListAppendVector(pParse, 0, yymsp[-3].minor.yy40, yymsp[0].minor.yy162.pExpr); } -#line 2982 "parse.c" +#line 2970 "parse.c" break; case 136: /* cmd ::= with insert_cmd INTO fullname idlist_opt select */ #line 791 "parse.y" { - sqlite3WithPush(pParse, yymsp[-5].minor.yy445, 1); + sqlite3WithPush(pParse, yymsp[-5].minor.yy151, 1); sqlSubProgramsRemaining = SQL_MAX_COMPILING_TRIGGERS; /* Instruct SQL to initate Tarantool's transaction. */ pParse->initiateTTrans = true; - sqlite3Insert(pParse, yymsp[-2].minor.yy73, yymsp[0].minor.yy309, yymsp[-1].minor.yy436, yymsp[-4].minor.yy322); + sqlite3Insert(pParse, yymsp[-2].minor.yy387, yymsp[0].minor.yy279, yymsp[-1].minor.yy40, yymsp[-4].minor.yy52); } -#line 2993 "parse.c" +#line 2981 "parse.c" break; case 137: /* cmd ::= with insert_cmd INTO fullname idlist_opt DEFAULT VALUES */ #line 799 "parse.y" { - sqlite3WithPush(pParse, yymsp[-6].minor.yy445, 1); + sqlite3WithPush(pParse, yymsp[-6].minor.yy151, 1); sqlSubProgramsRemaining = SQL_MAX_COMPILING_TRIGGERS; /* Instruct SQL to initate Tarantool's transaction. */ pParse->initiateTTrans = true; - sqlite3Insert(pParse, yymsp[-3].minor.yy73, 0, yymsp[-2].minor.yy436, yymsp[-5].minor.yy322); + sqlite3Insert(pParse, yymsp[-3].minor.yy387, 0, yymsp[-2].minor.yy40, yymsp[-5].minor.yy52); } -#line 3004 "parse.c" +#line 2992 "parse.c" break; case 141: /* idlist_opt ::= LP idlist RP */ #line 817 "parse.y" -{yymsp[-2].minor.yy436 = yymsp[-1].minor.yy436;} -#line 3009 "parse.c" +{yymsp[-2].minor.yy40 = yymsp[-1].minor.yy40;} +#line 2997 "parse.c" break; case 142: /* idlist ::= idlist COMMA nm */ #line 819 "parse.y" -{yymsp[-2].minor.yy436 = sqlite3IdListAppend(pParse->db,yymsp[-2].minor.yy436,&yymsp[0].minor.yy0);} -#line 3014 "parse.c" +{yymsp[-2].minor.yy40 = sqlite3IdListAppend(pParse->db,yymsp[-2].minor.yy40,&yymsp[0].minor.yy0);} +#line 3002 "parse.c" break; case 143: /* idlist ::= nm */ #line 821 "parse.y" -{yymsp[0].minor.yy436 = sqlite3IdListAppend(pParse->db,0,&yymsp[0].minor.yy0); /*A-overwrites-Y*/} -#line 3019 "parse.c" +{yymsp[0].minor.yy40 = sqlite3IdListAppend(pParse->db,0,&yymsp[0].minor.yy0); /*A-overwrites-Y*/} +#line 3007 "parse.c" break; case 144: /* expr ::= LP expr RP */ #line 870 "parse.y" -{spanSet(&yymsp[-2].minor.yy200,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-B*/ yymsp[-2].minor.yy200.pExpr = yymsp[-1].minor.yy200.pExpr;} -#line 3024 "parse.c" +{spanSet(&yymsp[-2].minor.yy162,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-B*/ yymsp[-2].minor.yy162.pExpr = yymsp[-1].minor.yy162.pExpr;} +#line 3012 "parse.c" break; case 145: /* term ::= NULL */ case 149: /* term ::= FLOAT|BLOB */ yytestcase(yyruleno==149); case 150: /* term ::= STRING */ yytestcase(yyruleno==150); #line 871 "parse.y" -{spanExpr(&yymsp[0].minor.yy200,pParse,yymsp[0].major,yymsp[0].minor.yy0);/*A-overwrites-X*/} -#line 3031 "parse.c" +{spanExpr(&yymsp[0].minor.yy162,pParse,yymsp[0].major,yymsp[0].minor.yy0);/*A-overwrites-X*/} +#line 3019 "parse.c" break; case 146: /* expr ::= ID|INDEXED */ case 147: /* expr ::= JOIN_KW */ yytestcase(yyruleno==147); #line 872 "parse.y" -{spanExpr(&yymsp[0].minor.yy200,pParse,TK_ID,yymsp[0].minor.yy0); /*A-overwrites-X*/} -#line 3037 "parse.c" +{spanExpr(&yymsp[0].minor.yy162,pParse,TK_ID,yymsp[0].minor.yy0); /*A-overwrites-X*/} +#line 3025 "parse.c" break; case 148: /* expr ::= nm DOT nm */ #line 874 "parse.y" { Expr *temp1 = sqlite3ExprAlloc(pParse->db, TK_ID, &yymsp[-2].minor.yy0, 1); Expr *temp2 = sqlite3ExprAlloc(pParse->db, TK_ID, &yymsp[0].minor.yy0, 1); - spanSet(&yymsp[-2].minor.yy200,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ - yymsp[-2].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_DOT, temp1, temp2); + spanSet(&yymsp[-2].minor.yy162,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ + yymsp[-2].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_DOT, temp1, temp2); } -#line 3047 "parse.c" +#line 3035 "parse.c" break; case 151: /* term ::= INTEGER */ #line 882 "parse.y" { - yylhsminor.yy200.pExpr = sqlite3ExprAlloc(pParse->db, TK_INTEGER, &yymsp[0].minor.yy0, 1); - yylhsminor.yy200.zStart = yymsp[0].minor.yy0.z; - yylhsminor.yy200.zEnd = yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n; - if( yylhsminor.yy200.pExpr ) yylhsminor.yy200.pExpr->flags |= EP_Leaf; + yylhsminor.yy162.pExpr = sqlite3ExprAlloc(pParse->db, TK_INTEGER, &yymsp[0].minor.yy0, 1); + yylhsminor.yy162.zStart = yymsp[0].minor.yy0.z; + yylhsminor.yy162.zEnd = yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n; + if( yylhsminor.yy162.pExpr ) yylhsminor.yy162.pExpr->flags |= EP_Leaf; } -#line 3057 "parse.c" - yymsp[0].minor.yy200 = yylhsminor.yy200; +#line 3045 "parse.c" + yymsp[0].minor.yy162 = yylhsminor.yy162; break; case 152: /* expr ::= VARIABLE */ #line 888 "parse.y" { if( !(yymsp[0].minor.yy0.z[0]=='#' && sqlite3Isdigit(yymsp[0].minor.yy0.z[1])) ){ u32 n = yymsp[0].minor.yy0.n; - spanExpr(&yymsp[0].minor.yy200, pParse, TK_VARIABLE, yymsp[0].minor.yy0); - sqlite3ExprAssignVarNumber(pParse, yymsp[0].minor.yy200.pExpr, n); + spanExpr(&yymsp[0].minor.yy162, pParse, TK_VARIABLE, yymsp[0].minor.yy0); + sqlite3ExprAssignVarNumber(pParse, yymsp[0].minor.yy162.pExpr, n); }else{ /* When doing a nested parse, one can include terms in an expression ** that look like this: #1 #2 ... These terms refer to registers ** in the virtual machine. #N is the N-th register. */ Token t = yymsp[0].minor.yy0; /*A-overwrites-X*/ assert( t.n>=2 ); - spanSet(&yymsp[0].minor.yy200, &t, &t); + spanSet(&yymsp[0].minor.yy162, &t, &t); if( pParse->nested==0 ){ sqlite3ErrorMsg(pParse, "near \"%T\": syntax error", &t); - yymsp[0].minor.yy200.pExpr = 0; + yymsp[0].minor.yy162.pExpr = 0; }else{ - yymsp[0].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_REGISTER, 0, 0); - if( yymsp[0].minor.yy200.pExpr ) sqlite3GetInt32(&t.z[1], &yymsp[0].minor.yy200.pExpr->iTable); + yymsp[0].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_REGISTER, 0, 0); + if( yymsp[0].minor.yy162.pExpr ) sqlite3GetInt32(&t.z[1], &yymsp[0].minor.yy162.pExpr->iTable); } } } -#line 3083 "parse.c" +#line 3071 "parse.c" break; case 153: /* expr ::= expr COLLATE ID|INDEXED */ #line 909 "parse.y" { - yymsp[-2].minor.yy200.pExpr = sqlite3ExprAddCollateToken(pParse, yymsp[-2].minor.yy200.pExpr, &yymsp[0].minor.yy0, 1); - yymsp[-2].minor.yy200.zEnd = &yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n]; + yymsp[-2].minor.yy162.pExpr = sqlite3ExprAddCollateToken(pParse, yymsp[-2].minor.yy162.pExpr, &yymsp[0].minor.yy0, 1); + yymsp[-2].minor.yy162.zEnd = &yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n]; } -#line 3091 "parse.c" +#line 3079 "parse.c" break; case 154: /* expr ::= CAST LP expr AS typetoken RP */ #line 914 "parse.y" { - spanSet(&yymsp[-5].minor.yy200,&yymsp[-5].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ - yymsp[-5].minor.yy200.pExpr = sqlite3ExprAlloc(pParse->db, TK_CAST, &yymsp[-1].minor.yy0, 1); - sqlite3ExprAttachSubtrees(pParse->db, yymsp[-5].minor.yy200.pExpr, yymsp[-3].minor.yy200.pExpr, 0); + spanSet(&yymsp[-5].minor.yy162,&yymsp[-5].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ + yymsp[-5].minor.yy162.pExpr = sqlite3ExprAlloc(pParse->db, TK_CAST, &yymsp[-1].minor.yy0, 1); + sqlite3ExprAttachSubtrees(pParse->db, yymsp[-5].minor.yy162.pExpr, yymsp[-3].minor.yy162.pExpr, 0); } -#line 3100 "parse.c" +#line 3088 "parse.c" break; case 155: /* expr ::= ID|INDEXED LP distinct exprlist RP */ #line 920 "parse.y" { - if( yymsp[-1].minor.yy272 && yymsp[-1].minor.yy272->nExpr>pParse->db->aLimit[SQLITE_LIMIT_FUNCTION_ARG] ){ + if( yymsp[-1].minor.yy382 && yymsp[-1].minor.yy382->nExpr>pParse->db->aLimit[SQLITE_LIMIT_FUNCTION_ARG] ){ sqlite3ErrorMsg(pParse, "too many arguments on function %T", &yymsp[-4].minor.yy0); } - yylhsminor.yy200.pExpr = sqlite3ExprFunction(pParse, yymsp[-1].minor.yy272, &yymsp[-4].minor.yy0); - spanSet(&yylhsminor.yy200,&yymsp[-4].minor.yy0,&yymsp[0].minor.yy0); - if( yymsp[-2].minor.yy322==SF_Distinct && yylhsminor.yy200.pExpr ){ - yylhsminor.yy200.pExpr->flags |= EP_Distinct; + yylhsminor.yy162.pExpr = sqlite3ExprFunction(pParse, yymsp[-1].minor.yy382, &yymsp[-4].minor.yy0); + spanSet(&yylhsminor.yy162,&yymsp[-4].minor.yy0,&yymsp[0].minor.yy0); + if( yymsp[-2].minor.yy52==SF_Distinct && yylhsminor.yy162.pExpr ){ + yylhsminor.yy162.pExpr->flags |= EP_Distinct; } } -#line 3114 "parse.c" - yymsp[-4].minor.yy200 = yylhsminor.yy200; +#line 3102 "parse.c" + yymsp[-4].minor.yy162 = yylhsminor.yy162; break; case 156: /* expr ::= ID|INDEXED LP STAR RP */ #line 930 "parse.y" { - yylhsminor.yy200.pExpr = sqlite3ExprFunction(pParse, 0, &yymsp[-3].minor.yy0); - spanSet(&yylhsminor.yy200,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0); + yylhsminor.yy162.pExpr = sqlite3ExprFunction(pParse, 0, &yymsp[-3].minor.yy0); + spanSet(&yylhsminor.yy162,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0); } -#line 3123 "parse.c" - yymsp[-3].minor.yy200 = yylhsminor.yy200; +#line 3111 "parse.c" + yymsp[-3].minor.yy162 = yylhsminor.yy162; break; case 157: /* term ::= CTIME_KW */ #line 934 "parse.y" { - yylhsminor.yy200.pExpr = sqlite3ExprFunction(pParse, 0, &yymsp[0].minor.yy0); - spanSet(&yylhsminor.yy200, &yymsp[0].minor.yy0, &yymsp[0].minor.yy0); + yylhsminor.yy162.pExpr = sqlite3ExprFunction(pParse, 0, &yymsp[0].minor.yy0); + spanSet(&yylhsminor.yy162, &yymsp[0].minor.yy0, &yymsp[0].minor.yy0); } -#line 3132 "parse.c" - yymsp[0].minor.yy200 = yylhsminor.yy200; +#line 3120 "parse.c" + yymsp[0].minor.yy162 = yylhsminor.yy162; break; case 158: /* expr ::= LP nexprlist COMMA expr RP */ #line 963 "parse.y" { - ExprList *pList = sqlite3ExprListAppend(pParse, yymsp[-3].minor.yy272, yymsp[-1].minor.yy200.pExpr); - yylhsminor.yy200.pExpr = sqlite3PExpr(pParse, TK_VECTOR, 0, 0); - if( yylhsminor.yy200.pExpr ){ - yylhsminor.yy200.pExpr->x.pList = pList; - spanSet(&yylhsminor.yy200, &yymsp[-4].minor.yy0, &yymsp[0].minor.yy0); + ExprList *pList = sqlite3ExprListAppend(pParse, yymsp[-3].minor.yy382, yymsp[-1].minor.yy162.pExpr); + yylhsminor.yy162.pExpr = sqlite3PExpr(pParse, TK_VECTOR, 0, 0); + if( yylhsminor.yy162.pExpr ){ + yylhsminor.yy162.pExpr->x.pList = pList; + spanSet(&yylhsminor.yy162, &yymsp[-4].minor.yy0, &yymsp[0].minor.yy0); }else{ sqlite3ExprListDelete(pParse->db, pList); } } -#line 3147 "parse.c" - yymsp[-4].minor.yy200 = yylhsminor.yy200; +#line 3135 "parse.c" + yymsp[-4].minor.yy162 = yylhsminor.yy162; break; case 159: /* expr ::= expr AND expr */ case 160: /* expr ::= expr OR expr */ yytestcase(yyruleno==160); @@ -3155,18 +3143,18 @@ static void yy_reduce( case 165: /* expr ::= expr STAR|SLASH|REM expr */ yytestcase(yyruleno==165); case 166: /* expr ::= expr CONCAT expr */ yytestcase(yyruleno==166); #line 974 "parse.y" -{spanBinaryExpr(pParse,yymsp[-1].major,&yymsp[-2].minor.yy200,&yymsp[0].minor.yy200);} -#line 3160 "parse.c" +{spanBinaryExpr(pParse,yymsp[-1].major,&yymsp[-2].minor.yy162,&yymsp[0].minor.yy162);} +#line 3148 "parse.c" break; case 167: /* likeop ::= LIKE_KW|MATCH */ #line 987 "parse.y" {yymsp[0].minor.yy0=yymsp[0].minor.yy0;/*A-overwrites-X*/} -#line 3165 "parse.c" +#line 3153 "parse.c" break; case 168: /* likeop ::= NOT LIKE_KW|MATCH */ #line 988 "parse.y" {yymsp[-1].minor.yy0=yymsp[0].minor.yy0; yymsp[-1].minor.yy0.n|=0x80000000; /*yymsp[-1].minor.yy0-overwrite-yymsp[0].minor.yy0*/} -#line 3170 "parse.c" +#line 3158 "parse.c" break; case 169: /* expr ::= expr likeop expr */ #line 989 "parse.y" @@ -3174,14 +3162,14 @@ static void yy_reduce( ExprList *pList; int bNot = yymsp[-1].minor.yy0.n & 0x80000000; yymsp[-1].minor.yy0.n &= 0x7fffffff; - pList = sqlite3ExprListAppend(pParse,0, yymsp[0].minor.yy200.pExpr); - pList = sqlite3ExprListAppend(pParse,pList, yymsp[-2].minor.yy200.pExpr); - yymsp[-2].minor.yy200.pExpr = sqlite3ExprFunction(pParse, pList, &yymsp[-1].minor.yy0); - exprNot(pParse, bNot, &yymsp[-2].minor.yy200); - yymsp[-2].minor.yy200.zEnd = yymsp[0].minor.yy200.zEnd; - if( yymsp[-2].minor.yy200.pExpr ) yymsp[-2].minor.yy200.pExpr->flags |= EP_InfixFunc; + pList = sqlite3ExprListAppend(pParse,0, yymsp[0].minor.yy162.pExpr); + pList = sqlite3ExprListAppend(pParse,pList, yymsp[-2].minor.yy162.pExpr); + yymsp[-2].minor.yy162.pExpr = sqlite3ExprFunction(pParse, pList, &yymsp[-1].minor.yy0); + exprNot(pParse, bNot, &yymsp[-2].minor.yy162); + yymsp[-2].minor.yy162.zEnd = yymsp[0].minor.yy162.zEnd; + if( yymsp[-2].minor.yy162.pExpr ) yymsp[-2].minor.yy162.pExpr->flags |= EP_InfixFunc; } -#line 3185 "parse.c" +#line 3173 "parse.c" break; case 170: /* expr ::= expr likeop expr ESCAPE expr */ #line 1000 "parse.y" @@ -3189,84 +3177,84 @@ static void yy_reduce( ExprList *pList; int bNot = yymsp[-3].minor.yy0.n & 0x80000000; yymsp[-3].minor.yy0.n &= 0x7fffffff; - pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy200.pExpr); - pList = sqlite3ExprListAppend(pParse,pList, yymsp[-4].minor.yy200.pExpr); - pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy200.pExpr); - yymsp[-4].minor.yy200.pExpr = sqlite3ExprFunction(pParse, pList, &yymsp[-3].minor.yy0); - exprNot(pParse, bNot, &yymsp[-4].minor.yy200); - yymsp[-4].minor.yy200.zEnd = yymsp[0].minor.yy200.zEnd; - if( yymsp[-4].minor.yy200.pExpr ) yymsp[-4].minor.yy200.pExpr->flags |= EP_InfixFunc; + pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy162.pExpr); + pList = sqlite3ExprListAppend(pParse,pList, yymsp[-4].minor.yy162.pExpr); + pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy162.pExpr); + yymsp[-4].minor.yy162.pExpr = sqlite3ExprFunction(pParse, pList, &yymsp[-3].minor.yy0); + exprNot(pParse, bNot, &yymsp[-4].minor.yy162); + yymsp[-4].minor.yy162.zEnd = yymsp[0].minor.yy162.zEnd; + if( yymsp[-4].minor.yy162.pExpr ) yymsp[-4].minor.yy162.pExpr->flags |= EP_InfixFunc; } -#line 3201 "parse.c" +#line 3189 "parse.c" break; case 171: /* expr ::= expr ISNULL|NOTNULL */ #line 1027 "parse.y" -{spanUnaryPostfix(pParse,yymsp[0].major,&yymsp[-1].minor.yy200,&yymsp[0].minor.yy0);} -#line 3206 "parse.c" +{spanUnaryPostfix(pParse,yymsp[0].major,&yymsp[-1].minor.yy162,&yymsp[0].minor.yy0);} +#line 3194 "parse.c" break; case 172: /* expr ::= expr NOT NULL */ #line 1028 "parse.y" -{spanUnaryPostfix(pParse,TK_NOTNULL,&yymsp[-2].minor.yy200,&yymsp[0].minor.yy0);} -#line 3211 "parse.c" +{spanUnaryPostfix(pParse,TK_NOTNULL,&yymsp[-2].minor.yy162,&yymsp[0].minor.yy0);} +#line 3199 "parse.c" break; case 173: /* expr ::= expr IS expr */ #line 1049 "parse.y" { - spanBinaryExpr(pParse,TK_IS,&yymsp[-2].minor.yy200,&yymsp[0].minor.yy200); - binaryToUnaryIfNull(pParse, yymsp[0].minor.yy200.pExpr, yymsp[-2].minor.yy200.pExpr, TK_ISNULL); + spanBinaryExpr(pParse,TK_IS,&yymsp[-2].minor.yy162,&yymsp[0].minor.yy162); + binaryToUnaryIfNull(pParse, yymsp[0].minor.yy162.pExpr, yymsp[-2].minor.yy162.pExpr, TK_ISNULL); } -#line 3219 "parse.c" +#line 3207 "parse.c" break; case 174: /* expr ::= expr IS NOT expr */ #line 1053 "parse.y" { - spanBinaryExpr(pParse,TK_ISNOT,&yymsp[-3].minor.yy200,&yymsp[0].minor.yy200); - binaryToUnaryIfNull(pParse, yymsp[0].minor.yy200.pExpr, yymsp[-3].minor.yy200.pExpr, TK_NOTNULL); + spanBinaryExpr(pParse,TK_ISNOT,&yymsp[-3].minor.yy162,&yymsp[0].minor.yy162); + binaryToUnaryIfNull(pParse, yymsp[0].minor.yy162.pExpr, yymsp[-3].minor.yy162.pExpr, TK_NOTNULL); } -#line 3227 "parse.c" +#line 3215 "parse.c" break; case 175: /* expr ::= NOT expr */ case 176: /* expr ::= BITNOT expr */ yytestcase(yyruleno==176); #line 1077 "parse.y" -{spanUnaryPrefix(&yymsp[-1].minor.yy200,pParse,yymsp[-1].major,&yymsp[0].minor.yy200,&yymsp[-1].minor.yy0);/*A-overwrites-B*/} -#line 3233 "parse.c" +{spanUnaryPrefix(&yymsp[-1].minor.yy162,pParse,yymsp[-1].major,&yymsp[0].minor.yy162,&yymsp[-1].minor.yy0);/*A-overwrites-B*/} +#line 3221 "parse.c" break; case 177: /* expr ::= MINUS expr */ #line 1081 "parse.y" -{spanUnaryPrefix(&yymsp[-1].minor.yy200,pParse,TK_UMINUS,&yymsp[0].minor.yy200,&yymsp[-1].minor.yy0);/*A-overwrites-B*/} -#line 3238 "parse.c" +{spanUnaryPrefix(&yymsp[-1].minor.yy162,pParse,TK_UMINUS,&yymsp[0].minor.yy162,&yymsp[-1].minor.yy0);/*A-overwrites-B*/} +#line 3226 "parse.c" break; case 178: /* expr ::= PLUS expr */ #line 1083 "parse.y" -{spanUnaryPrefix(&yymsp[-1].minor.yy200,pParse,TK_UPLUS,&yymsp[0].minor.yy200,&yymsp[-1].minor.yy0);/*A-overwrites-B*/} -#line 3243 "parse.c" +{spanUnaryPrefix(&yymsp[-1].minor.yy162,pParse,TK_UPLUS,&yymsp[0].minor.yy162,&yymsp[-1].minor.yy0);/*A-overwrites-B*/} +#line 3231 "parse.c" break; case 179: /* between_op ::= BETWEEN */ case 182: /* in_op ::= IN */ yytestcase(yyruleno==182); #line 1086 "parse.y" -{yymsp[0].minor.yy322 = 0;} -#line 3249 "parse.c" +{yymsp[0].minor.yy52 = 0;} +#line 3237 "parse.c" break; case 181: /* expr ::= expr between_op expr AND expr */ #line 1088 "parse.y" { - ExprList *pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy200.pExpr); - pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy200.pExpr); - yymsp[-4].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_BETWEEN, yymsp[-4].minor.yy200.pExpr, 0); - if( yymsp[-4].minor.yy200.pExpr ){ - yymsp[-4].minor.yy200.pExpr->x.pList = pList; + ExprList *pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy162.pExpr); + pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy162.pExpr); + yymsp[-4].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_BETWEEN, yymsp[-4].minor.yy162.pExpr, 0); + if( yymsp[-4].minor.yy162.pExpr ){ + yymsp[-4].minor.yy162.pExpr->x.pList = pList; }else{ sqlite3ExprListDelete(pParse->db, pList); } - exprNot(pParse, yymsp[-3].minor.yy322, &yymsp[-4].minor.yy200); - yymsp[-4].minor.yy200.zEnd = yymsp[0].minor.yy200.zEnd; + exprNot(pParse, yymsp[-3].minor.yy52, &yymsp[-4].minor.yy162); + yymsp[-4].minor.yy162.zEnd = yymsp[0].minor.yy162.zEnd; } -#line 3265 "parse.c" +#line 3253 "parse.c" break; case 184: /* expr ::= expr in_op LP exprlist RP */ #line 1104 "parse.y" { - if( yymsp[-1].minor.yy272==0 ){ + if( yymsp[-1].minor.yy382==0 ){ /* Expressions of the form ** ** expr1 IN () @@ -3275,9 +3263,9 @@ static void yy_reduce( ** simplify to constants 0 (false) and 1 (true), respectively, ** regardless of the value of expr1. */ - sqlite3ExprDelete(pParse->db, yymsp[-4].minor.yy200.pExpr); - yymsp[-4].minor.yy200.pExpr = sqlite3ExprAlloc(pParse->db, TK_INTEGER,&sqlite3IntTokens[yymsp[-3].minor.yy322],1); - }else if( yymsp[-1].minor.yy272->nExpr==1 ){ + sqlite3ExprDelete(pParse->db, yymsp[-4].minor.yy162.pExpr); + yymsp[-4].minor.yy162.pExpr = sqlite3ExprAlloc(pParse->db, TK_INTEGER,&sqlite3IntTokens[yymsp[-3].minor.yy52],1); + }else if( yymsp[-1].minor.yy382->nExpr==1 ){ /* Expressions of the form: ** ** expr1 IN (?1) @@ -3294,206 +3282,206 @@ static void yy_reduce( ** affinity or the collating sequence to use for comparison. Otherwise, ** the semantics would be subtly different from IN or NOT IN. */ - Expr *pRHS = yymsp[-1].minor.yy272->a[0].pExpr; - yymsp[-1].minor.yy272->a[0].pExpr = 0; - sqlite3ExprListDelete(pParse->db, yymsp[-1].minor.yy272); + Expr *pRHS = yymsp[-1].minor.yy382->a[0].pExpr; + yymsp[-1].minor.yy382->a[0].pExpr = 0; + sqlite3ExprListDelete(pParse->db, yymsp[-1].minor.yy382); /* pRHS cannot be NULL because a malloc error would have been detected ** before now and control would have never reached this point */ if( ALWAYS(pRHS) ){ pRHS->flags &= ~EP_Collate; pRHS->flags |= EP_Generic; } - yymsp[-4].minor.yy200.pExpr = sqlite3PExpr(pParse, yymsp[-3].minor.yy322 ? TK_NE : TK_EQ, yymsp[-4].minor.yy200.pExpr, pRHS); + yymsp[-4].minor.yy162.pExpr = sqlite3PExpr(pParse, yymsp[-3].minor.yy52 ? TK_NE : TK_EQ, yymsp[-4].minor.yy162.pExpr, pRHS); }else{ - yymsp[-4].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_IN, yymsp[-4].minor.yy200.pExpr, 0); - if( yymsp[-4].minor.yy200.pExpr ){ - yymsp[-4].minor.yy200.pExpr->x.pList = yymsp[-1].minor.yy272; - sqlite3ExprSetHeightAndFlags(pParse, yymsp[-4].minor.yy200.pExpr); + yymsp[-4].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_IN, yymsp[-4].minor.yy162.pExpr, 0); + if( yymsp[-4].minor.yy162.pExpr ){ + yymsp[-4].minor.yy162.pExpr->x.pList = yymsp[-1].minor.yy382; + sqlite3ExprSetHeightAndFlags(pParse, yymsp[-4].minor.yy162.pExpr); }else{ - sqlite3ExprListDelete(pParse->db, yymsp[-1].minor.yy272); + sqlite3ExprListDelete(pParse->db, yymsp[-1].minor.yy382); } - exprNot(pParse, yymsp[-3].minor.yy322, &yymsp[-4].minor.yy200); + exprNot(pParse, yymsp[-3].minor.yy52, &yymsp[-4].minor.yy162); } - yymsp[-4].minor.yy200.zEnd = &yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n]; + yymsp[-4].minor.yy162.zEnd = &yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n]; } -#line 3320 "parse.c" +#line 3308 "parse.c" break; case 185: /* expr ::= LP select RP */ #line 1155 "parse.y" { - spanSet(&yymsp[-2].minor.yy200,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-B*/ - yymsp[-2].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_SELECT, 0, 0); - sqlite3PExprAddSelect(pParse, yymsp[-2].minor.yy200.pExpr, yymsp[-1].minor.yy309); + spanSet(&yymsp[-2].minor.yy162,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-B*/ + yymsp[-2].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_SELECT, 0, 0); + sqlite3PExprAddSelect(pParse, yymsp[-2].minor.yy162.pExpr, yymsp[-1].minor.yy279); } -#line 3329 "parse.c" +#line 3317 "parse.c" break; case 186: /* expr ::= expr in_op LP select RP */ #line 1160 "parse.y" { - yymsp[-4].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_IN, yymsp[-4].minor.yy200.pExpr, 0); - sqlite3PExprAddSelect(pParse, yymsp[-4].minor.yy200.pExpr, yymsp[-1].minor.yy309); - exprNot(pParse, yymsp[-3].minor.yy322, &yymsp[-4].minor.yy200); - yymsp[-4].minor.yy200.zEnd = &yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n]; + yymsp[-4].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_IN, yymsp[-4].minor.yy162.pExpr, 0); + sqlite3PExprAddSelect(pParse, yymsp[-4].minor.yy162.pExpr, yymsp[-1].minor.yy279); + exprNot(pParse, yymsp[-3].minor.yy52, &yymsp[-4].minor.yy162); + yymsp[-4].minor.yy162.zEnd = &yymsp[0].minor.yy0.z[yymsp[0].minor.yy0.n]; } -#line 3339 "parse.c" +#line 3327 "parse.c" break; case 187: /* expr ::= expr in_op nm paren_exprlist */ #line 1166 "parse.y" { SrcList *pSrc = sqlite3SrcListAppend(pParse->db, 0,&yymsp[-1].minor.yy0); Select *pSelect = sqlite3SelectNew(pParse, 0,pSrc,0,0,0,0,0,0,0); - if( yymsp[0].minor.yy272 ) sqlite3SrcListFuncArgs(pParse, pSelect ? pSrc : 0, yymsp[0].minor.yy272); - yymsp[-3].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_IN, yymsp[-3].minor.yy200.pExpr, 0); - sqlite3PExprAddSelect(pParse, yymsp[-3].minor.yy200.pExpr, pSelect); - exprNot(pParse, yymsp[-2].minor.yy322, &yymsp[-3].minor.yy200); - yymsp[-3].minor.yy200.zEnd = &yymsp[-1].minor.yy0.z[yymsp[-1].minor.yy0.n]; + if( yymsp[0].minor.yy382 ) sqlite3SrcListFuncArgs(pParse, pSelect ? pSrc : 0, yymsp[0].minor.yy382); + yymsp[-3].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_IN, yymsp[-3].minor.yy162.pExpr, 0); + sqlite3PExprAddSelect(pParse, yymsp[-3].minor.yy162.pExpr, pSelect); + exprNot(pParse, yymsp[-2].minor.yy52, &yymsp[-3].minor.yy162); + yymsp[-3].minor.yy162.zEnd = &yymsp[-1].minor.yy0.z[yymsp[-1].minor.yy0.n]; } -#line 3352 "parse.c" +#line 3340 "parse.c" break; case 188: /* expr ::= EXISTS LP select RP */ #line 1175 "parse.y" { Expr *p; - spanSet(&yymsp[-3].minor.yy200,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-B*/ - p = yymsp[-3].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_EXISTS, 0, 0); - sqlite3PExprAddSelect(pParse, p, yymsp[-1].minor.yy309); + spanSet(&yymsp[-3].minor.yy162,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-B*/ + p = yymsp[-3].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_EXISTS, 0, 0); + sqlite3PExprAddSelect(pParse, p, yymsp[-1].minor.yy279); } -#line 3362 "parse.c" +#line 3350 "parse.c" break; case 189: /* expr ::= CASE case_operand case_exprlist case_else END */ #line 1184 "parse.y" { - spanSet(&yymsp[-4].minor.yy200,&yymsp[-4].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-C*/ - yymsp[-4].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_CASE, yymsp[-3].minor.yy294, 0); - if( yymsp[-4].minor.yy200.pExpr ){ - yymsp[-4].minor.yy200.pExpr->x.pList = yymsp[-1].minor.yy294 ? sqlite3ExprListAppend(pParse,yymsp[-2].minor.yy272,yymsp[-1].minor.yy294) : yymsp[-2].minor.yy272; - sqlite3ExprSetHeightAndFlags(pParse, yymsp[-4].minor.yy200.pExpr); + spanSet(&yymsp[-4].minor.yy162,&yymsp[-4].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-C*/ + yymsp[-4].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_CASE, yymsp[-3].minor.yy362, 0); + if( yymsp[-4].minor.yy162.pExpr ){ + yymsp[-4].minor.yy162.pExpr->x.pList = yymsp[-1].minor.yy362 ? sqlite3ExprListAppend(pParse,yymsp[-2].minor.yy382,yymsp[-1].minor.yy362) : yymsp[-2].minor.yy382; + sqlite3ExprSetHeightAndFlags(pParse, yymsp[-4].minor.yy162.pExpr); }else{ - sqlite3ExprListDelete(pParse->db, yymsp[-2].minor.yy272); - sqlite3ExprDelete(pParse->db, yymsp[-1].minor.yy294); + sqlite3ExprListDelete(pParse->db, yymsp[-2].minor.yy382); + sqlite3ExprDelete(pParse->db, yymsp[-1].minor.yy362); } } -#line 3377 "parse.c" +#line 3365 "parse.c" break; case 190: /* case_exprlist ::= case_exprlist WHEN expr THEN expr */ #line 1197 "parse.y" { - yymsp[-4].minor.yy272 = sqlite3ExprListAppend(pParse,yymsp[-4].minor.yy272, yymsp[-2].minor.yy200.pExpr); - yymsp[-4].minor.yy272 = sqlite3ExprListAppend(pParse,yymsp[-4].minor.yy272, yymsp[0].minor.yy200.pExpr); + yymsp[-4].minor.yy382 = sqlite3ExprListAppend(pParse,yymsp[-4].minor.yy382, yymsp[-2].minor.yy162.pExpr); + yymsp[-4].minor.yy382 = sqlite3ExprListAppend(pParse,yymsp[-4].minor.yy382, yymsp[0].minor.yy162.pExpr); } -#line 3385 "parse.c" +#line 3373 "parse.c" break; case 191: /* case_exprlist ::= WHEN expr THEN expr */ #line 1201 "parse.y" { - yymsp[-3].minor.yy272 = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy200.pExpr); - yymsp[-3].minor.yy272 = sqlite3ExprListAppend(pParse,yymsp[-3].minor.yy272, yymsp[0].minor.yy200.pExpr); + yymsp[-3].minor.yy382 = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy162.pExpr); + yymsp[-3].minor.yy382 = sqlite3ExprListAppend(pParse,yymsp[-3].minor.yy382, yymsp[0].minor.yy162.pExpr); } -#line 3393 "parse.c" +#line 3381 "parse.c" break; case 194: /* case_operand ::= expr */ #line 1211 "parse.y" -{yymsp[0].minor.yy294 = yymsp[0].minor.yy200.pExpr; /*A-overwrites-X*/} -#line 3398 "parse.c" +{yymsp[0].minor.yy362 = yymsp[0].minor.yy162.pExpr; /*A-overwrites-X*/} +#line 3386 "parse.c" break; case 197: /* nexprlist ::= nexprlist COMMA expr */ #line 1222 "parse.y" -{yymsp[-2].minor.yy272 = sqlite3ExprListAppend(pParse,yymsp[-2].minor.yy272,yymsp[0].minor.yy200.pExpr);} -#line 3403 "parse.c" +{yymsp[-2].minor.yy382 = sqlite3ExprListAppend(pParse,yymsp[-2].minor.yy382,yymsp[0].minor.yy162.pExpr);} +#line 3391 "parse.c" break; case 198: /* nexprlist ::= expr */ #line 1224 "parse.y" -{yymsp[0].minor.yy272 = sqlite3ExprListAppend(pParse,0,yymsp[0].minor.yy200.pExpr); /*A-overwrites-Y*/} -#line 3408 "parse.c" +{yymsp[0].minor.yy382 = sqlite3ExprListAppend(pParse,0,yymsp[0].minor.yy162.pExpr); /*A-overwrites-Y*/} +#line 3396 "parse.c" break; case 200: /* paren_exprlist ::= LP exprlist RP */ case 205: /* eidlist_opt ::= LP eidlist RP */ yytestcase(yyruleno==205); #line 1232 "parse.y" -{yymsp[-2].minor.yy272 = yymsp[-1].minor.yy272;} -#line 3414 "parse.c" +{yymsp[-2].minor.yy382 = yymsp[-1].minor.yy382;} +#line 3402 "parse.c" break; case 201: /* cmd ::= createkw uniqueflag INDEX ifnotexists nm ON nm LP sortlist RP where_opt */ #line 1239 "parse.y" { sqlite3CreateIndex(pParse, &yymsp[-6].minor.yy0, - sqlite3SrcListAppend(pParse->db,0,&yymsp[-4].minor.yy0), yymsp[-2].minor.yy272, yymsp[-9].minor.yy322, - &yymsp[-10].minor.yy0, yymsp[0].minor.yy294, SQLITE_SO_ASC, yymsp[-7].minor.yy322, SQLITE_IDXTYPE_APPDEF); + sqlite3SrcListAppend(pParse->db,0,&yymsp[-4].minor.yy0), yymsp[-2].minor.yy382, yymsp[-9].minor.yy52, + &yymsp[-10].minor.yy0, yymsp[0].minor.yy362, SQLITE_SO_ASC, yymsp[-7].minor.yy52, SQLITE_IDXTYPE_APPDEF); } -#line 3423 "parse.c" +#line 3411 "parse.c" break; case 202: /* uniqueflag ::= UNIQUE */ case 242: /* raisetype ::= ABORT */ yytestcase(yyruleno==242); #line 1246 "parse.y" -{yymsp[0].minor.yy322 = OE_Abort;} -#line 3429 "parse.c" +{yymsp[0].minor.yy52 = OE_Abort;} +#line 3417 "parse.c" break; case 203: /* uniqueflag ::= */ #line 1247 "parse.y" -{yymsp[1].minor.yy322 = OE_None;} -#line 3434 "parse.c" +{yymsp[1].minor.yy52 = OE_None;} +#line 3422 "parse.c" break; case 206: /* eidlist ::= eidlist COMMA nm collate sortorder */ #line 1290 "parse.y" { - yymsp[-4].minor.yy272 = parserAddExprIdListTerm(pParse, yymsp[-4].minor.yy272, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy322, yymsp[0].minor.yy322); + yymsp[-4].minor.yy382 = parserAddExprIdListTerm(pParse, yymsp[-4].minor.yy382, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy52, yymsp[0].minor.yy52); } -#line 3441 "parse.c" +#line 3429 "parse.c" break; case 207: /* eidlist ::= nm collate sortorder */ #line 1293 "parse.y" { - yymsp[-2].minor.yy272 = parserAddExprIdListTerm(pParse, 0, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy322, yymsp[0].minor.yy322); /*A-overwrites-Y*/ + yymsp[-2].minor.yy382 = parserAddExprIdListTerm(pParse, 0, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy52, yymsp[0].minor.yy52); /*A-overwrites-Y*/ } -#line 3448 "parse.c" +#line 3436 "parse.c" break; case 210: /* cmd ::= DROP INDEX ifexists fullname ON nm */ #line 1304 "parse.y" { - sqlite3DropIndex(pParse, yymsp[-2].minor.yy73, &yymsp[0].minor.yy0, yymsp[-3].minor.yy322); + sqlite3DropIndex(pParse, yymsp[-2].minor.yy387, &yymsp[0].minor.yy0, yymsp[-3].minor.yy52); } -#line 3455 "parse.c" +#line 3443 "parse.c" break; case 211: /* cmd ::= PRAGMA nm */ #line 1311 "parse.y" { sqlite3Pragma(pParse,&yymsp[0].minor.yy0,0,0,0,0); } -#line 3462 "parse.c" +#line 3450 "parse.c" break; case 212: /* cmd ::= PRAGMA nm EQ nmnum */ #line 1314 "parse.y" { sqlite3Pragma(pParse,&yymsp[-2].minor.yy0,0,&yymsp[0].minor.yy0,0,0); } -#line 3469 "parse.c" +#line 3457 "parse.c" break; case 213: /* cmd ::= PRAGMA nm LP nmnum RP */ #line 1317 "parse.y" { sqlite3Pragma(pParse,&yymsp[-3].minor.yy0,0,&yymsp[-1].minor.yy0,0,0); } -#line 3476 "parse.c" +#line 3464 "parse.c" break; case 214: /* cmd ::= PRAGMA nm EQ minus_num */ #line 1320 "parse.y" { sqlite3Pragma(pParse,&yymsp[-2].minor.yy0,0,&yymsp[0].minor.yy0,0,1); } -#line 3483 "parse.c" +#line 3471 "parse.c" break; case 215: /* cmd ::= PRAGMA nm LP minus_num RP */ #line 1323 "parse.y" { sqlite3Pragma(pParse,&yymsp[-3].minor.yy0,0,&yymsp[-1].minor.yy0,0,1); } -#line 3490 "parse.c" +#line 3478 "parse.c" break; case 216: /* cmd ::= PRAGMA nm EQ nm DOT nm */ #line 1326 "parse.y" { sqlite3Pragma(pParse,&yymsp[-4].minor.yy0,0,&yymsp[0].minor.yy0,&yymsp[-2].minor.yy0,0); } -#line 3497 "parse.c" +#line 3485 "parse.c" break; case 219: /* cmd ::= createkw trigger_decl BEGIN trigger_cmd_list END */ #line 1346 "parse.y" @@ -3501,75 +3489,75 @@ static void yy_reduce( Token all; all.z = yymsp[-3].minor.yy0.z; all.n = (int)(yymsp[0].minor.yy0.z - yymsp[-3].minor.yy0.z) + yymsp[0].minor.yy0.n; - sqlite3FinishTrigger(pParse, yymsp[-1].minor.yy251, &all); + sqlite3FinishTrigger(pParse, yymsp[-1].minor.yy427, &all); } -#line 3507 "parse.c" +#line 3495 "parse.c" break; case 220: /* trigger_decl ::= TRIGGER ifnotexists nm trigger_time trigger_event ON fullname foreach_clause when_clause */ #line 1355 "parse.y" { - sqlite3BeginTrigger(pParse, &yymsp[-6].minor.yy0, yymsp[-5].minor.yy322, yymsp[-4].minor.yy60.a, yymsp[-4].minor.yy60.b, yymsp[-2].minor.yy73, yymsp[0].minor.yy294, yymsp[-7].minor.yy322); + sqlite3BeginTrigger(pParse, &yymsp[-6].minor.yy0, yymsp[-5].minor.yy52, yymsp[-4].minor.yy10.a, yymsp[-4].minor.yy10.b, yymsp[-2].minor.yy387, yymsp[0].minor.yy362, yymsp[-7].minor.yy52); yymsp[-8].minor.yy0 = yymsp[-6].minor.yy0; /*yymsp[-8].minor.yy0-overwrites-T*/ } -#line 3515 "parse.c" +#line 3503 "parse.c" break; case 221: /* trigger_time ::= BEFORE */ #line 1361 "parse.y" -{ yymsp[0].minor.yy322 = TK_BEFORE; } -#line 3520 "parse.c" +{ yymsp[0].minor.yy52 = TK_BEFORE; } +#line 3508 "parse.c" break; case 222: /* trigger_time ::= AFTER */ #line 1362 "parse.y" -{ yymsp[0].minor.yy322 = TK_AFTER; } -#line 3525 "parse.c" +{ yymsp[0].minor.yy52 = TK_AFTER; } +#line 3513 "parse.c" break; case 223: /* trigger_time ::= INSTEAD OF */ #line 1363 "parse.y" -{ yymsp[-1].minor.yy322 = TK_INSTEAD;} -#line 3530 "parse.c" +{ yymsp[-1].minor.yy52 = TK_INSTEAD;} +#line 3518 "parse.c" break; case 224: /* trigger_time ::= */ #line 1364 "parse.y" -{ yymsp[1].minor.yy322 = TK_BEFORE; } -#line 3535 "parse.c" +{ yymsp[1].minor.yy52 = TK_BEFORE; } +#line 3523 "parse.c" break; case 225: /* trigger_event ::= DELETE|INSERT */ case 226: /* trigger_event ::= UPDATE */ yytestcase(yyruleno==226); #line 1368 "parse.y" -{yymsp[0].minor.yy60.a = yymsp[0].major; /*A-overwrites-X*/ yymsp[0].minor.yy60.b = 0;} -#line 3541 "parse.c" +{yymsp[0].minor.yy10.a = yymsp[0].major; /*A-overwrites-X*/ yymsp[0].minor.yy10.b = 0;} +#line 3529 "parse.c" break; case 227: /* trigger_event ::= UPDATE OF idlist */ #line 1370 "parse.y" -{yymsp[-2].minor.yy60.a = TK_UPDATE; yymsp[-2].minor.yy60.b = yymsp[0].minor.yy436;} -#line 3546 "parse.c" +{yymsp[-2].minor.yy10.a = TK_UPDATE; yymsp[-2].minor.yy10.b = yymsp[0].minor.yy40;} +#line 3534 "parse.c" break; case 228: /* when_clause ::= */ #line 1377 "parse.y" -{ yymsp[1].minor.yy294 = 0; } -#line 3551 "parse.c" +{ yymsp[1].minor.yy362 = 0; } +#line 3539 "parse.c" break; case 229: /* when_clause ::= WHEN expr */ #line 1378 "parse.y" -{ yymsp[-1].minor.yy294 = yymsp[0].minor.yy200.pExpr; } -#line 3556 "parse.c" +{ yymsp[-1].minor.yy362 = yymsp[0].minor.yy162.pExpr; } +#line 3544 "parse.c" break; case 230: /* trigger_cmd_list ::= trigger_cmd_list trigger_cmd SEMI */ #line 1382 "parse.y" { - assert( yymsp[-2].minor.yy251!=0 ); - yymsp[-2].minor.yy251->pLast->pNext = yymsp[-1].minor.yy251; - yymsp[-2].minor.yy251->pLast = yymsp[-1].minor.yy251; + assert( yymsp[-2].minor.yy427!=0 ); + yymsp[-2].minor.yy427->pLast->pNext = yymsp[-1].minor.yy427; + yymsp[-2].minor.yy427->pLast = yymsp[-1].minor.yy427; } -#line 3565 "parse.c" +#line 3553 "parse.c" break; case 231: /* trigger_cmd_list ::= trigger_cmd SEMI */ #line 1387 "parse.y" { - assert( yymsp[-1].minor.yy251!=0 ); - yymsp[-1].minor.yy251->pLast = yymsp[-1].minor.yy251; + assert( yymsp[-1].minor.yy427!=0 ); + yymsp[-1].minor.yy427->pLast = yymsp[-1].minor.yy427; } -#line 3573 "parse.c" +#line 3561 "parse.c" break; case 232: /* trnm ::= nm DOT nm */ #line 1398 "parse.y" @@ -3579,7 +3567,7 @@ static void yy_reduce( "qualified table names are not allowed on INSERT, UPDATE, and DELETE " "statements within triggers"); } -#line 3583 "parse.c" +#line 3571 "parse.c" break; case 233: /* tridxby ::= INDEXED BY nm */ #line 1410 "parse.y" @@ -3588,7 +3576,7 @@ static void yy_reduce( "the INDEXED BY clause is not allowed on UPDATE or DELETE statements " "within triggers"); } -#line 3592 "parse.c" +#line 3580 "parse.c" break; case 234: /* tridxby ::= NOT INDEXED */ #line 1415 "parse.y" @@ -3597,190 +3585,172 @@ static void yy_reduce( "the NOT INDEXED clause is not allowed on UPDATE or DELETE statements " "within triggers"); } -#line 3601 "parse.c" +#line 3589 "parse.c" break; case 235: /* trigger_cmd ::= UPDATE orconf trnm tridxby SET setlist where_opt */ #line 1428 "parse.y" -{yymsp[-6].minor.yy251 = sqlite3TriggerUpdateStep(pParse->db, &yymsp[-4].minor.yy0, yymsp[-1].minor.yy272, yymsp[0].minor.yy294, yymsp[-5].minor.yy322);} -#line 3606 "parse.c" +{yymsp[-6].minor.yy427 = sqlite3TriggerUpdateStep(pParse->db, &yymsp[-4].minor.yy0, yymsp[-1].minor.yy382, yymsp[0].minor.yy362, yymsp[-5].minor.yy52);} +#line 3594 "parse.c" break; case 236: /* trigger_cmd ::= insert_cmd INTO trnm idlist_opt select */ #line 1432 "parse.y" -{yymsp[-4].minor.yy251 = sqlite3TriggerInsertStep(pParse->db, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy436, yymsp[0].minor.yy309, yymsp[-4].minor.yy322);/*A-overwrites-R*/} -#line 3611 "parse.c" +{yymsp[-4].minor.yy427 = sqlite3TriggerInsertStep(pParse->db, &yymsp[-2].minor.yy0, yymsp[-1].minor.yy40, yymsp[0].minor.yy279, yymsp[-4].minor.yy52);/*A-overwrites-R*/} +#line 3599 "parse.c" break; case 237: /* trigger_cmd ::= DELETE FROM trnm tridxby where_opt */ #line 1436 "parse.y" -{yymsp[-4].minor.yy251 = sqlite3TriggerDeleteStep(pParse->db, &yymsp[-2].minor.yy0, yymsp[0].minor.yy294);} -#line 3616 "parse.c" +{yymsp[-4].minor.yy427 = sqlite3TriggerDeleteStep(pParse->db, &yymsp[-2].minor.yy0, yymsp[0].minor.yy362);} +#line 3604 "parse.c" break; case 238: /* trigger_cmd ::= select */ #line 1440 "parse.y" -{yymsp[0].minor.yy251 = sqlite3TriggerSelectStep(pParse->db, yymsp[0].minor.yy309); /*A-overwrites-X*/} -#line 3621 "parse.c" +{yymsp[0].minor.yy427 = sqlite3TriggerSelectStep(pParse->db, yymsp[0].minor.yy279); /*A-overwrites-X*/} +#line 3609 "parse.c" break; case 239: /* expr ::= RAISE LP IGNORE RP */ #line 1443 "parse.y" { - spanSet(&yymsp[-3].minor.yy200,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ - yymsp[-3].minor.yy200.pExpr = sqlite3PExpr(pParse, TK_RAISE, 0, 0); - if( yymsp[-3].minor.yy200.pExpr ){ - yymsp[-3].minor.yy200.pExpr->affinity = OE_Ignore; + spanSet(&yymsp[-3].minor.yy162,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ + yymsp[-3].minor.yy162.pExpr = sqlite3PExpr(pParse, TK_RAISE, 0, 0); + if( yymsp[-3].minor.yy162.pExpr ){ + yymsp[-3].minor.yy162.pExpr->affinity = OE_Ignore; } } -#line 3632 "parse.c" +#line 3620 "parse.c" break; case 240: /* expr ::= RAISE LP raisetype COMMA STRING RP */ #line 1450 "parse.y" { - spanSet(&yymsp[-5].minor.yy200,&yymsp[-5].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ - yymsp[-5].minor.yy200.pExpr = sqlite3ExprAlloc(pParse->db, TK_RAISE, &yymsp[-1].minor.yy0, 1); - if( yymsp[-5].minor.yy200.pExpr ) { - yymsp[-5].minor.yy200.pExpr->affinity = (char)yymsp[-3].minor.yy322; + spanSet(&yymsp[-5].minor.yy162,&yymsp[-5].minor.yy0,&yymsp[0].minor.yy0); /*A-overwrites-X*/ + yymsp[-5].minor.yy162.pExpr = sqlite3ExprAlloc(pParse->db, TK_RAISE, &yymsp[-1].minor.yy0, 1); + if( yymsp[-5].minor.yy162.pExpr ) { + yymsp[-5].minor.yy162.pExpr->affinity = (char)yymsp[-3].minor.yy52; } } -#line 3643 "parse.c" +#line 3631 "parse.c" break; case 241: /* raisetype ::= ROLLBACK */ #line 1460 "parse.y" -{yymsp[0].minor.yy322 = OE_Rollback;} -#line 3648 "parse.c" +{yymsp[0].minor.yy52 = OE_Rollback;} +#line 3636 "parse.c" break; case 243: /* raisetype ::= FAIL */ #line 1462 "parse.y" -{yymsp[0].minor.yy322 = OE_Fail;} -#line 3653 "parse.c" +{yymsp[0].minor.yy52 = OE_Fail;} +#line 3641 "parse.c" break; case 244: /* cmd ::= DROP TRIGGER ifexists fullname */ #line 1467 "parse.y" { - sqlite3DropTrigger(pParse,yymsp[0].minor.yy73,yymsp[-1].minor.yy322); + sqlite3DropTrigger(pParse,yymsp[0].minor.yy387,yymsp[-1].minor.yy52); } -#line 3660 "parse.c" +#line 3648 "parse.c" break; case 245: /* cmd ::= REINDEX */ #line 1474 "parse.y" {sqlite3Reindex(pParse, 0, 0);} -#line 3665 "parse.c" +#line 3653 "parse.c" break; case 246: /* cmd ::= REINDEX nm */ #line 1475 "parse.y" {sqlite3Reindex(pParse, &yymsp[0].minor.yy0, 0);} -#line 3670 "parse.c" +#line 3658 "parse.c" break; case 247: /* cmd ::= REINDEX nm ON nm */ #line 1476 "parse.y" {sqlite3Reindex(pParse, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0);} -#line 3675 "parse.c" +#line 3663 "parse.c" break; case 248: /* cmd ::= ANALYZE */ #line 1481 "parse.y" {sqlite3Analyze(pParse, 0);} -#line 3680 "parse.c" +#line 3668 "parse.c" break; case 249: /* cmd ::= ANALYZE nm */ #line 1482 "parse.y" {sqlite3Analyze(pParse, &yymsp[0].minor.yy0);} -#line 3685 "parse.c" +#line 3673 "parse.c" break; case 250: /* cmd ::= ALTER TABLE fullname RENAME TO nm */ #line 1487 "parse.y" { - sqlite3AlterRenameTable(pParse,yymsp[-3].minor.yy73,&yymsp[0].minor.yy0); -} -#line 3692 "parse.c" - break; - case 251: /* cmd ::= ALTER TABLE add_column_fullname ADD kwcolumn_opt columnname carglist */ -#line 1491 "parse.y" -{ - yymsp[-1].minor.yy0.n = (int)(pParse->sLastToken.z-yymsp[-1].minor.yy0.z) + pParse->sLastToken.n; - sqlite3AlterFinishAddColumn(pParse, &yymsp[-1].minor.yy0); + sqlite3AlterRenameTable(pParse,yymsp[-3].minor.yy387,&yymsp[0].minor.yy0); } -#line 3700 "parse.c" - break; - case 252: /* add_column_fullname ::= fullname */ -#line 1495 "parse.y" -{ - disableLookaside(pParse); - sqlite3AlterBeginAddColumn(pParse, yymsp[0].minor.yy73); -} -#line 3708 "parse.c" - break; - case 253: /* with ::= */ -#line 1509 "parse.y" -{yymsp[1].minor.yy445 = 0;} -#line 3713 "parse.c" +#line 3680 "parse.c" break; - case 254: /* with ::= WITH wqlist */ -#line 1511 "parse.y" -{ yymsp[-1].minor.yy445 = yymsp[0].minor.yy445; } -#line 3718 "parse.c" + case 251: /* with ::= */ +#line 1510 "parse.y" +{yymsp[1].minor.yy151 = 0;} +#line 3685 "parse.c" break; - case 255: /* with ::= WITH RECURSIVE wqlist */ + case 252: /* with ::= WITH wqlist */ #line 1512 "parse.y" -{ yymsp[-2].minor.yy445 = yymsp[0].minor.yy445; } -#line 3723 "parse.c" +{ yymsp[-1].minor.yy151 = yymsp[0].minor.yy151; } +#line 3690 "parse.c" + break; + case 253: /* with ::= WITH RECURSIVE wqlist */ +#line 1513 "parse.y" +{ yymsp[-2].minor.yy151 = yymsp[0].minor.yy151; } +#line 3695 "parse.c" break; - case 256: /* wqlist ::= nm eidlist_opt AS LP select RP */ -#line 1514 "parse.y" + case 254: /* wqlist ::= nm eidlist_opt AS LP select RP */ +#line 1515 "parse.y" { - yymsp[-5].minor.yy445 = sqlite3WithAdd(pParse, 0, &yymsp[-5].minor.yy0, yymsp[-4].minor.yy272, yymsp[-1].minor.yy309); /*A-overwrites-X*/ + yymsp[-5].minor.yy151 = sqlite3WithAdd(pParse, 0, &yymsp[-5].minor.yy0, yymsp[-4].minor.yy382, yymsp[-1].minor.yy279); /*A-overwrites-X*/ } -#line 3730 "parse.c" +#line 3702 "parse.c" break; - case 257: /* wqlist ::= wqlist COMMA nm eidlist_opt AS LP select RP */ -#line 1517 "parse.y" + case 255: /* wqlist ::= wqlist COMMA nm eidlist_opt AS LP select RP */ +#line 1518 "parse.y" { - yymsp[-7].minor.yy445 = sqlite3WithAdd(pParse, yymsp[-7].minor.yy445, &yymsp[-5].minor.yy0, yymsp[-4].minor.yy272, yymsp[-1].minor.yy309); + yymsp[-7].minor.yy151 = sqlite3WithAdd(pParse, yymsp[-7].minor.yy151, &yymsp[-5].minor.yy0, yymsp[-4].minor.yy382, yymsp[-1].minor.yy279); } -#line 3737 "parse.c" +#line 3709 "parse.c" break; default: - /* (258) input ::= ecmd */ yytestcase(yyruleno==258); - /* (259) explain ::= */ yytestcase(yyruleno==259); - /* (260) cmdx ::= cmd (OPTIMIZED OUT) */ assert(yyruleno!=260); - /* (261) trans_opt ::= */ yytestcase(yyruleno==261); - /* (262) trans_opt ::= TRANSACTION */ yytestcase(yyruleno==262); - /* (263) trans_opt ::= TRANSACTION nm */ yytestcase(yyruleno==263); - /* (264) savepoint_opt ::= SAVEPOINT */ yytestcase(yyruleno==264); - /* (265) savepoint_opt ::= */ yytestcase(yyruleno==265); - /* (266) cmd ::= create_table create_table_args */ yytestcase(yyruleno==266); - /* (267) columnlist ::= columnlist COMMA columnname carglist */ yytestcase(yyruleno==267); - /* (268) columnlist ::= columnname carglist */ yytestcase(yyruleno==268); - /* (269) typetoken ::= typename */ yytestcase(yyruleno==269); - /* (270) typename ::= ID|STRING */ yytestcase(yyruleno==270); - /* (271) signed ::= plus_num (OPTIMIZED OUT) */ assert(yyruleno!=271); - /* (272) signed ::= minus_num (OPTIMIZED OUT) */ assert(yyruleno!=272); - /* (273) carglist ::= carglist ccons */ yytestcase(yyruleno==273); - /* (274) carglist ::= */ yytestcase(yyruleno==274); - /* (275) ccons ::= NULL onconf */ yytestcase(yyruleno==275); - /* (276) conslist_opt ::= COMMA conslist */ yytestcase(yyruleno==276); - /* (277) conslist ::= conslist tconscomma tcons */ yytestcase(yyruleno==277); - /* (278) conslist ::= tcons (OPTIMIZED OUT) */ assert(yyruleno!=278); - /* (279) tconscomma ::= */ yytestcase(yyruleno==279); - /* (280) defer_subclause_opt ::= defer_subclause (OPTIMIZED OUT) */ assert(yyruleno!=280); - /* (281) resolvetype ::= raisetype (OPTIMIZED OUT) */ assert(yyruleno!=281); - /* (282) selectnowith ::= oneselect (OPTIMIZED OUT) */ assert(yyruleno!=282); - /* (283) oneselect ::= values */ yytestcase(yyruleno==283); - /* (284) sclp ::= selcollist COMMA */ yytestcase(yyruleno==284); - /* (285) as ::= ID|STRING */ yytestcase(yyruleno==285); - /* (286) join_nm ::= ID|INDEXED */ yytestcase(yyruleno==286); - /* (287) join_nm ::= JOIN_KW */ yytestcase(yyruleno==287); - /* (288) expr ::= term (OPTIMIZED OUT) */ assert(yyruleno!=288); - /* (289) exprlist ::= nexprlist */ yytestcase(yyruleno==289); - /* (290) nmnum ::= plus_num (OPTIMIZED OUT) */ assert(yyruleno!=290); - /* (291) nmnum ::= STRING */ yytestcase(yyruleno==291); - /* (292) nmnum ::= nm */ yytestcase(yyruleno==292); - /* (293) nmnum ::= ON */ yytestcase(yyruleno==293); - /* (294) nmnum ::= DELETE */ yytestcase(yyruleno==294); - /* (295) nmnum ::= DEFAULT */ yytestcase(yyruleno==295); - /* (296) plus_num ::= INTEGER|FLOAT */ yytestcase(yyruleno==296); - /* (297) foreach_clause ::= */ yytestcase(yyruleno==297); - /* (298) foreach_clause ::= FOR EACH ROW */ yytestcase(yyruleno==298); - /* (299) trnm ::= nm */ yytestcase(yyruleno==299); - /* (300) tridxby ::= */ yytestcase(yyruleno==300); - /* (301) kwcolumn_opt ::= */ yytestcase(yyruleno==301); - /* (302) kwcolumn_opt ::= COLUMNKW */ yytestcase(yyruleno==302); + /* (256) input ::= ecmd */ yytestcase(yyruleno==256); + /* (257) explain ::= */ yytestcase(yyruleno==257); + /* (258) cmdx ::= cmd (OPTIMIZED OUT) */ assert(yyruleno!=258); + /* (259) trans_opt ::= */ yytestcase(yyruleno==259); + /* (260) trans_opt ::= TRANSACTION */ yytestcase(yyruleno==260); + /* (261) trans_opt ::= TRANSACTION nm */ yytestcase(yyruleno==261); + /* (262) savepoint_opt ::= SAVEPOINT */ yytestcase(yyruleno==262); + /* (263) savepoint_opt ::= */ yytestcase(yyruleno==263); + /* (264) cmd ::= create_table create_table_args */ yytestcase(yyruleno==264); + /* (265) columnlist ::= columnlist COMMA columnname carglist */ yytestcase(yyruleno==265); + /* (266) columnlist ::= columnname carglist */ yytestcase(yyruleno==266); + /* (267) typetoken ::= typename */ yytestcase(yyruleno==267); + /* (268) typename ::= ID|STRING */ yytestcase(yyruleno==268); + /* (269) signed ::= plus_num (OPTIMIZED OUT) */ assert(yyruleno!=269); + /* (270) signed ::= minus_num (OPTIMIZED OUT) */ assert(yyruleno!=270); + /* (271) carglist ::= carglist ccons */ yytestcase(yyruleno==271); + /* (272) carglist ::= */ yytestcase(yyruleno==272); + /* (273) ccons ::= NULL onconf */ yytestcase(yyruleno==273); + /* (274) conslist_opt ::= COMMA conslist */ yytestcase(yyruleno==274); + /* (275) conslist ::= conslist tconscomma tcons */ yytestcase(yyruleno==275); + /* (276) conslist ::= tcons (OPTIMIZED OUT) */ assert(yyruleno!=276); + /* (277) tconscomma ::= */ yytestcase(yyruleno==277); + /* (278) defer_subclause_opt ::= defer_subclause (OPTIMIZED OUT) */ assert(yyruleno!=278); + /* (279) resolvetype ::= raisetype (OPTIMIZED OUT) */ assert(yyruleno!=279); + /* (280) selectnowith ::= oneselect (OPTIMIZED OUT) */ assert(yyruleno!=280); + /* (281) oneselect ::= values */ yytestcase(yyruleno==281); + /* (282) sclp ::= selcollist COMMA */ yytestcase(yyruleno==282); + /* (283) as ::= ID|STRING */ yytestcase(yyruleno==283); + /* (284) join_nm ::= ID|INDEXED */ yytestcase(yyruleno==284); + /* (285) join_nm ::= JOIN_KW */ yytestcase(yyruleno==285); + /* (286) expr ::= term (OPTIMIZED OUT) */ assert(yyruleno!=286); + /* (287) exprlist ::= nexprlist */ yytestcase(yyruleno==287); + /* (288) nmnum ::= plus_num (OPTIMIZED OUT) */ assert(yyruleno!=288); + /* (289) nmnum ::= STRING */ yytestcase(yyruleno==289); + /* (290) nmnum ::= nm */ yytestcase(yyruleno==290); + /* (291) nmnum ::= ON */ yytestcase(yyruleno==291); + /* (292) nmnum ::= DELETE */ yytestcase(yyruleno==292); + /* (293) nmnum ::= DEFAULT */ yytestcase(yyruleno==293); + /* (294) plus_num ::= INTEGER|FLOAT */ yytestcase(yyruleno==294); + /* (295) foreach_clause ::= */ yytestcase(yyruleno==295); + /* (296) foreach_clause ::= FOR EACH ROW */ yytestcase(yyruleno==296); + /* (297) trnm ::= nm */ yytestcase(yyruleno==297); + /* (298) tridxby ::= */ yytestcase(yyruleno==298); break; /********** End reduce actions ************************************************/ }; @@ -3846,7 +3816,7 @@ static void yy_syntax_error( } else { sqlite3ErrorMsg(pParse, "near \"%T\": syntax error", &TOKEN); } -#line 3850 "parse.c" +#line 3820 "parse.c" /************ End %syntax_error code ******************************************/ sqlite3ParserARG_STORE; /* Suppress warning about unused %extra_argument variable */ } -- GitLab