diff options
-rw-r--r-- | src/glsl/glsl_lexer.cpp | 1718 | ||||
-rw-r--r-- | src/glsl/glsl_parser.cpp | 3313 | ||||
-rw-r--r-- | src/glsl/glsl_parser.h | 168 |
3 files changed, 2646 insertions, 2553 deletions
diff --git a/src/glsl/glsl_lexer.cpp b/src/glsl/glsl_lexer.cpp index 3cdce995e2..873df609d3 100644 --- a/src/glsl/glsl_lexer.cpp +++ b/src/glsl/glsl_lexer.cpp @@ -358,8 +358,8 @@ static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner ); *yy_cp = '\0'; \ yyg->yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 177 -#define YY_END_OF_BUFFER 178 +#define YY_NUM_RULES 183 +#define YY_END_OF_BUFFER 184 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -367,81 +367,86 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[668] = +static yyconst flex_int16_t yy_accept[708] = { 0, - 0, 0, 9, 9, 178, 176, 1, 14, 176, 176, - 176, 176, 176, 176, 176, 176, 90, 88, 176, 176, - 176, 175, 176, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 176, 1, 176, 85, 177, 9, 13, - 177, 12, 10, 11, 1, 74, 81, 75, 84, 78, - 69, 80, 70, 87, 92, 79, 93, 90, 0, 0, - 95, 0, 88, 0, 71, 73, 72, 0, 175, 77, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 22, 175, 175, 175, 175, 175, 175, 175, - - 175, 175, 175, 175, 175, 175, 26, 175, 175, 50, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 86, 76, 1, 0, 0, 2, 0, 0, 0, - 0, 9, 8, 12, 11, 0, 92, 91, 0, 93, - 0, 94, 89, 82, 83, 175, 98, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 25, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 19, - - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 51, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 0, 0, - 0, 0, 8, 0, 92, 0, 91, 0, 93, 94, - 175, 175, 17, 175, 175, 138, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 24, 101, 175, 175, 175, - 175, 57, 175, 175, 106, 120, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 117, 141, 38, - 39, 40, 175, 175, 175, 175, 175, 175, 175, 175, - - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 104, 96, 175, 175, 175, 175, 175, 175, - 175, 35, 36, 37, 67, 175, 175, 0, 0, 0, - 0, 0, 91, 175, 175, 20, 29, 30, 31, 175, - 99, 175, 16, 175, 175, 175, 175, 128, 129, 130, - 175, 97, 175, 121, 18, 131, 132, 133, 143, 125, - 126, 127, 175, 175, 175, 52, 123, 175, 175, 32, - 33, 34, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 118, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 100, - - 175, 140, 175, 175, 23, 0, 0, 0, 0, 147, - 175, 175, 145, 175, 175, 175, 119, 114, 150, 175, - 175, 175, 175, 175, 175, 109, 175, 175, 68, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 175, 175, - 175, 175, 124, 105, 175, 175, 112, 28, 175, 175, - 137, 58, 113, 66, 148, 107, 175, 175, 175, 175, - 175, 175, 175, 0, 0, 0, 0, 175, 175, 175, - 108, 27, 175, 175, 175, 175, 175, 175, 151, 152, - 153, 175, 175, 175, 175, 142, 175, 175, 175, 175, - 175, 175, 175, 175, 102, 175, 175, 175, 175, 175, - - 53, 175, 54, 175, 0, 0, 0, 7, 0, 175, - 55, 21, 115, 155, 156, 157, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 110, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 103, 159, 160, - 161, 175, 175, 122, 111, 0, 0, 6, 0, 0, - 0, 3, 15, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 154, 116, 56, 139, 175, 146, 144, 174, - 60, 61, 62, 175, 175, 175, 175, 175, 175, 0, - 0, 0, 0, 175, 175, 175, 158, 175, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - - 175, 175, 162, 4, 0, 5, 0, 0, 0, 175, - 175, 175, 175, 175, 175, 175, 171, 175, 175, 175, - 175, 175, 175, 63, 175, 175, 175, 0, 175, 175, - 172, 163, 175, 164, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 173, 165, 166, 169, 170, 59, 175, - 134, 175, 135, 149, 167, 168, 175, 175, 175, 64, - 175, 65, 175, 175, 175, 136, 0 + 0, 0, 15, 15, 0, 0, 184, 182, 1, 20, + 182, 182, 182, 182, 182, 182, 182, 182, 96, 94, + 182, 182, 182, 181, 182, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 182, 1, 182, 91, 183, + 15, 19, 183, 18, 16, 17, 13, 12, 1, 80, + 87, 81, 90, 84, 75, 86, 76, 93, 98, 85, + 99, 96, 0, 0, 101, 0, 94, 0, 77, 79, + 78, 0, 181, 83, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 28, 181, 181, 181, + + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 32, 181, 181, 56, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 92, 82, 1, 0, 0, + 2, 0, 0, 0, 0, 15, 14, 18, 17, 0, + 98, 97, 0, 99, 0, 100, 95, 88, 89, 181, + 104, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 31, 181, 181, 181, 181, 181, 181, 181, + + 181, 181, 181, 25, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 57, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 0, 0, 0, 0, 14, 0, 98, 0, + 97, 0, 99, 100, 181, 181, 23, 181, 181, 144, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 30, + 107, 181, 181, 181, 181, 63, 181, 181, 112, 126, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 123, 147, 44, 45, 46, 181, 181, 181, 181, + + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 110, 102, 181, 181, + 181, 181, 181, 181, 181, 41, 42, 43, 73, 181, + 181, 0, 0, 0, 0, 0, 97, 181, 181, 26, + 35, 36, 37, 181, 105, 181, 22, 181, 181, 181, + 181, 134, 135, 136, 181, 103, 181, 127, 24, 137, + 138, 139, 149, 131, 132, 133, 181, 181, 181, 58, + 129, 181, 181, 38, 39, 40, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 124, 181, 181, 181, 181, 181, 181, 181, + + 181, 181, 181, 106, 181, 146, 181, 181, 29, 0, + 0, 0, 0, 153, 181, 181, 151, 181, 181, 181, + 125, 120, 156, 181, 181, 181, 181, 181, 181, 115, + 181, 181, 74, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 181, 181, 181, 181, 130, 111, 181, 181, + 118, 34, 181, 181, 143, 64, 119, 72, 154, 113, + 181, 181, 181, 181, 181, 181, 181, 0, 0, 0, + 0, 181, 181, 181, 114, 33, 181, 181, 181, 181, + 181, 181, 157, 158, 159, 181, 181, 181, 181, 148, + 181, 181, 181, 181, 181, 181, 181, 181, 108, 181, + + 181, 181, 181, 181, 59, 181, 60, 181, 0, 0, + 0, 0, 0, 181, 61, 27, 121, 161, 162, 163, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 116, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 109, 165, 166, 167, 181, 181, 128, 117, 0, + 0, 6, 0, 0, 0, 11, 3, 21, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 160, 122, 62, + 145, 181, 152, 150, 180, 66, 67, 68, 181, 181, + 181, 181, 181, 181, 0, 0, 0, 0, 0, 0, + 181, 181, 181, 164, 181, 181, 181, 181, 181, 181, + + 181, 181, 181, 181, 181, 181, 181, 181, 181, 168, + 4, 0, 5, 0, 0, 0, 0, 0, 181, 181, + 181, 181, 181, 181, 181, 177, 181, 181, 181, 181, + 181, 181, 69, 181, 181, 181, 0, 0, 0, 181, + 181, 178, 169, 181, 170, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 179, 0, 0, 171, 172, 175, + 176, 65, 181, 140, 181, 141, 155, 173, 174, 0, + 0, 181, 181, 181, 0, 0, 0, 70, 181, 71, + 0, 0, 0, 181, 0, 0, 0, 181, 0, 0, + 7, 0, 0, 181, 0, 8, 0, 0, 142, 0, + + 0, 0, 0, 9, 0, 10, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -449,17 +454,17 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 2, 5, 1, 6, 1, 7, 8, 1, 1, - 1, 9, 10, 1, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 19, 19, 20, 20, 21, 1, 22, - 23, 24, 1, 1, 25, 26, 27, 28, 29, 30, - 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 32, 33, 31, 31, 31, 31, 34, 31, 31, - 1, 1, 1, 35, 36, 1, 37, 38, 39, 40, - - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 31, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 1, 62, 1, 1, 1, 1, 1, 1, + 1, 2, 5, 1, 6, 1, 7, 8, 1, 9, + 10, 11, 12, 1, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 21, 21, 22, 22, 23, 1, 24, + 25, 26, 1, 1, 27, 28, 29, 30, 31, 32, + 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 34, 35, 33, 33, 33, 33, 36, 33, 33, + 1, 1, 1, 37, 38, 1, 39, 40, 41, 42, + + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 33, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 1, 64, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -476,296 +481,314 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[63] = +static yyconst flex_int32_t yy_meta[65] = { 0, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 4, 4, 4, 4, 4, 4, 5, - 1, 1, 1, 1, 6, 6, 6, 6, 5, 5, - 7, 7, 7, 8, 1, 7, 6, 6, 6, 6, - 5, 5, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 8, 7, - 7, 1 + 1, 1, 1, 1, 1, 4, 4, 4, 4, 4, + 4, 5, 1, 1, 1, 1, 6, 6, 6, 6, + 5, 5, 7, 7, 7, 8, 1, 7, 6, 6, + 6, 6, 5, 5, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 8, 7, 7, 1 } ; -static yyconst flex_int16_t yy_base[678] = +static yyconst flex_int16_t yy_base[719] = { 0, - 0, 61, 84, 0, 1012, 1013, 62, 1013, 988, 987, - 57, 986, 58, 59, 57, 985, 135, 183, 56, 984, - 133, 0, 971, 119, 109, 130, 134, 111, 135, 954, - 151, 165, 32, 152, 131, 948, 153, 170, 182, 176, - 178, 193, 959, 125, 237, 243, 979, 1013, 214, 1013, - 988, 233, 1013, 0, 231, 1013, 1013, 1013, 1013, 1013, - 1013, 1013, 1013, 1013, 225, 1013, 227, 224, 289, 260, - 1013, 0, 0, 977, 1013, 1013, 1013, 976, 0, 1013, - 943, 948, 941, 944, 953, 952, 938, 941, 953, 155, - 947, 934, 931, 945, 931, 928, 928, 934, 213, 222, - - 928, 939, 924, 930, 934, 935, 0, 926, 937, 237, - 932, 912, 232, 916, 930, 920, 241, 913, 257, 926, - 928, 910, 906, 914, 911, 900, 909, 228, 907, 913, - 908, 911, 899, 902, 904, 257, 907, 898, 911, 215, - 904, 1013, 1013, 310, 295, 318, 1013, 889, 902, 893, - 904, 260, 0, 308, 0, 362, 1013, 303, 373, 1013, - 380, 387, 0, 1013, 1013, 899, 0, 890, 894, 904, - 901, 884, 883, 883, 887, 280, 898, 895, 895, 893, - 890, 881, 888, 874, 872, 885, 870, 887, 0, 884, - 871, 879, 876, 880, 881, 874, 871, 859, 858, 872, - - 875, 872, 859, 866, 856, 321, 862, 865, 855, 863, - 851, 855, 846, 861, 851, 842, 861, 844, 842, 853, - 842, 837, 835, 849, 834, 836, 833, 845, 844, 847, - 298, 838, 832, 821, 337, 840, 842, 830, 822, 826, - 838, 821, 0, 394, 404, 421, 1013, 433, 440, 1013, - 816, 827, 0, 824, 340, 0, 817, 815, 817, 812, - 821, 809, 827, 815, 344, 0, 0, 809, 820, 819, - 819, 0, 803, 347, 0, 0, 805, 351, 813, 814, - 804, 798, 797, 798, 797, 409, 793, 0, 0, 789, - 788, 787, 789, 790, 795, 789, 785, 799, 794, 793, - - 792, 783, 786, 786, 778, 781, 776, 785, 790, 775, - 788, 778, 0, 0, 785, 781, 772, 772, 778, 777, - 774, 0, 0, 0, 0, 763, 776, 775, 774, 771, - 759, 447, 457, 771, 773, 0, 0, 0, 0, 759, - 0, 759, 0, 758, 759, 753, 764, 0, 0, 0, - 754, 0, 750, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 761, 463, 760, 0, 0, 758, 754, 0, - 0, 0, 743, 426, 467, 475, 748, 744, 750, 740, - 738, 752, 736, 736, 750, 738, 750, 745, 0, 743, - 740, 744, 727, 729, 736, 742, 737, 736, 723, 0, - - 725, 0, 724, 728, 0, 722, 769, 721, 724, 0, - 712, 722, 0, 710, 710, 724, 0, 726, 0, 479, - 734, 733, 732, 703, 702, 0, 720, 719, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 703, 717, - 703, 700, 0, 0, 706, 705, 0, 0, 703, 695, - 0, 0, 0, 0, 0, 0, 692, 704, 485, 696, - 703, 700, 694, 687, 501, 703, 688, 683, 697, 695, - 0, 0, 687, 706, 705, 704, 675, 674, 317, 489, - 0, 687, 690, 688, 676, 0, 686, 683, 682, 671, - 670, 669, 508, 678, 0, 690, 689, 688, 659, 658, - - 0, 673, 0, 671, 666, 495, 524, 1013, 660, 668, - 0, 0, 0, 683, 682, 0, 664, 667, 651, 659, - 649, 657, 658, 658, 657, 642, 655, 0, 656, 644, - 643, 639, 663, 662, 661, 632, 631, 0, 661, 660, - 0, 642, 645, 0, 0, 631, 543, 1013, 534, 0, - 553, 1013, 0, 628, 627, 637, 637, 624, 639, 622, - 637, 632, 0, 0, 0, 0, 617, 0, 0, 0, - 638, 353, 638, 627, 630, 614, 613, 623, 623, 613, - 530, 563, 413, 609, 608, 619, 0, 622, 618, 620, - 616, 602, 609, 605, 607, 603, 598, 596, 596, 575, - - 542, 553, 0, 1013, 466, 1013, 582, 0, 588, 556, - 555, 535, 527, 535, 516, 524, 0, 517, 510, 492, - 493, 489, 472, 0, 473, 472, 451, 505, 428, 426, - 0, 0, 423, 0, 387, 392, 390, 373, 334, 316, - 298, 288, 286, 0, 0, 0, 0, 0, 0, 290, - 296, 266, 0, 0, 0, 0, 257, 269, 241, 0, - 250, 0, 202, 133, 105, 0, 1013, 605, 610, 615, - 617, 619, 625, 632, 637, 642, 647 + 0, 63, 88, 0, 1076, 1075, 1077, 1080, 64, 1080, + 1051, 1050, 59, 1049, 58, 60, 58, 1048, 139, 187, + 47, 1047, 56, 0, 1034, 121, 110, 137, 138, 134, + 163, 1017, 173, 177, 115, 149, 140, 1011, 159, 121, + 187, 194, 194, 172, 1022, 171, 249, 240, 1042, 1080, + 250, 1080, 1051, 241, 1080, 0, 1080, 1080, 262, 1080, + 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 236, 1080, + 238, 187, 286, 303, 1080, 0, 0, 1040, 1080, 1080, + 1080, 1039, 0, 1080, 1006, 1011, 1004, 1007, 1016, 1015, + 1001, 1004, 1016, 35, 1010, 997, 994, 1008, 994, 991, + + 991, 997, 215, 232, 991, 1002, 987, 993, 997, 998, + 0, 989, 1000, 234, 995, 975, 226, 979, 993, 983, + 119, 976, 234, 989, 991, 973, 969, 977, 974, 963, + 972, 256, 970, 976, 971, 974, 962, 965, 967, 245, + 970, 961, 974, 227, 967, 1080, 1080, 308, 294, 324, + 1080, 952, 965, 956, 967, 329, 0, 338, 0, 368, + 1080, 303, 379, 1080, 386, 393, 0, 1080, 1080, 962, + 0, 953, 957, 967, 964, 947, 946, 946, 950, 216, + 961, 958, 958, 956, 953, 944, 951, 937, 935, 948, + 933, 950, 0, 947, 934, 942, 939, 943, 944, 937, + + 934, 922, 921, 935, 938, 935, 922, 929, 919, 320, + 925, 928, 918, 926, 914, 918, 909, 924, 914, 905, + 924, 907, 905, 916, 905, 900, 898, 912, 897, 899, + 896, 908, 907, 910, 288, 901, 895, 884, 331, 903, + 905, 893, 885, 889, 901, 884, 0, 400, 410, 427, + 1080, 439, 446, 1080, 879, 890, 0, 887, 343, 0, + 880, 878, 880, 875, 884, 872, 890, 878, 346, 0, + 0, 872, 883, 882, 882, 0, 866, 350, 0, 0, + 868, 353, 876, 877, 867, 861, 860, 861, 860, 357, + 856, 0, 0, 852, 851, 850, 852, 853, 858, 852, + + 848, 862, 857, 856, 855, 846, 849, 849, 841, 844, + 839, 848, 853, 838, 851, 841, 0, 0, 848, 844, + 835, 835, 841, 840, 837, 0, 0, 0, 0, 826, + 839, 838, 837, 834, 822, 453, 463, 834, 836, 0, + 0, 0, 0, 822, 0, 822, 0, 821, 822, 816, + 827, 0, 0, 0, 817, 0, 813, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 824, 469, 823, 0, + 0, 821, 817, 0, 0, 0, 806, 415, 432, 473, + 811, 807, 813, 803, 801, 815, 799, 799, 813, 801, + 813, 808, 0, 806, 803, 807, 790, 792, 799, 805, + + 800, 799, 786, 0, 788, 0, 787, 791, 0, 785, + 834, 784, 787, 0, 775, 785, 0, 773, 773, 787, + 0, 789, 0, 482, 797, 796, 795, 766, 765, 0, + 783, 782, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 766, 780, 766, 763, 0, 0, 769, 768, + 0, 0, 766, 758, 0, 0, 0, 0, 0, 0, + 755, 767, 485, 759, 766, 763, 757, 750, 503, 766, + 751, 746, 760, 758, 0, 0, 750, 769, 768, 767, + 738, 737, 301, 481, 0, 750, 753, 751, 739, 0, + 749, 746, 745, 734, 733, 732, 509, 741, 0, 753, + + 752, 751, 722, 721, 0, 736, 0, 734, 729, 515, + 527, 773, 722, 730, 0, 0, 0, 745, 744, 0, + 726, 729, 713, 721, 711, 719, 720, 720, 719, 704, + 717, 0, 718, 706, 705, 701, 725, 724, 723, 694, + 693, 0, 723, 722, 0, 704, 707, 0, 0, 693, + 537, 1080, 561, 0, 567, 340, 1080, 0, 690, 689, + 699, 699, 686, 701, 684, 699, 694, 0, 0, 0, + 0, 679, 0, 0, 0, 700, 389, 700, 689, 692, + 676, 675, 685, 685, 675, 529, 589, 474, 683, 671, + 669, 668, 679, 0, 682, 678, 680, 676, 662, 669, + + 669, 671, 667, 669, 667, 667, 654, 653, 664, 0, + 1080, 531, 1080, 596, 0, 616, 666, 648, 665, 664, + 647, 635, 643, 633, 634, 0, 627, 646, 635, 607, + 604, 601, 0, 604, 603, 586, 533, 572, 580, 564, + 563, 0, 0, 564, 0, 540, 554, 552, 516, 530, + 505, 486, 453, 450, 0, 461, 443, 0, 0, 0, + 0, 0, 400, 406, 385, 0, 0, 0, 0, 343, + 389, 319, 267, 249, 487, 341, 235, 0, 200, 0, + 507, 498, 184, 157, 150, 564, 559, 136, 565, 591, + 1080, 593, 550, 112, 594, 1080, 569, 576, 0, 123, + + 619, 621, 637, 1080, 638, 1080, 1080, 648, 653, 658, + 663, 665, 667, 673, 680, 685, 690, 695 } ; -static yyconst flex_int16_t yy_def[678] = +static yyconst flex_int16_t yy_def[719] = { 0, - 667, 1, 667, 3, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 668, 667, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 669, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 670, 667, 671, 17, 667, 667, - 667, 672, 18, 667, 667, 667, 667, 667, 668, 667, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 673, 667, 669, 667, 667, 671, 667, 667, - 667, 667, 672, 667, 667, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 667, 667, - 667, 667, 673, 667, 667, 667, 667, 667, 667, 667, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 667, 667, 667, - 667, 667, 667, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - - 668, 668, 668, 668, 668, 667, 667, 667, 667, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 667, 667, 667, 667, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - - 668, 668, 668, 668, 667, 674, 667, 667, 667, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 667, 667, 667, 667, 675, - 667, 667, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 667, - 676, 667, 675, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - - 668, 668, 668, 667, 667, 667, 667, 677, 667, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 677, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 668, 668, 668, 668, - 668, 668, 668, 668, 668, 668, 0, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667 + 707, 1, 707, 3, 708, 708, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 709, 707, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 710, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 711, 707, + 712, 19, 707, 707, 707, 713, 20, 707, 707, 707, + 707, 707, 709, 707, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 714, 707, 710, 707, + 707, 712, 707, 707, 707, 707, 713, 707, 707, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 707, 707, 707, 707, 714, 707, 707, 707, + 707, 707, 707, 707, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 707, 707, 707, 707, 707, 707, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + + 709, 709, 709, 709, 709, 709, 709, 709, 709, 707, + 707, 707, 707, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 707, 707, 707, + 707, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + + 709, 709, 709, 709, 709, 709, 709, 709, 707, 715, + 707, 707, 707, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 707, + 707, 707, 707, 716, 707, 707, 707, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 707, 717, 707, 716, 707, 707, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 707, 707, 707, 707, 718, 707, 707, 707, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 718, 707, 707, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 709, + 709, 709, 709, 709, 709, 707, 707, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 709, 709, 709, 707, + 707, 709, 709, 709, 707, 707, 707, 709, 709, 709, + 707, 707, 707, 709, 707, 707, 707, 709, 707, 707, + 707, 707, 707, 709, 707, 707, 707, 707, 709, 707, + + 707, 707, 707, 707, 707, 707, 0, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707 } ; -static yyconst flex_int16_t yy_nxt[1076] = +static yyconst flex_int16_t yy_nxt[1145] = { 0, - 6, 7, 8, 7, 9, 6, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 18, 18, 18, 18, 18, - 6, 19, 20, 21, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 23, 22, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 22, 22, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 22, 22, - 22, 44, 45, 55, 58, 55, 46, 61, 112, 63, - 65, 65, 65, 65, 65, 65, 65, 74, 75, 59, - 62, 64, 113, 47, 48, 49, 50, 49, 48, 48, - 48, 48, 48, 48, 48, 48, 51, 48, 52, 52, - - 52, 52, 52, 52, 53, 48, 48, 48, 54, 54, - 54, 54, 54, 54, 54, 54, 54, 54, 48, 54, - 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 48, 67, 142, 68, 68, - 68, 68, 68, 68, 69, 77, 78, 81, 95, 84, - 96, 85, 666, 70, 71, 86, 87, 116, 72, 97, - 88, 98, 82, 83, 91, 70, 71, 89, 92, 99, - 90, 117, 100, 665, 93, 101, 143, 104, 114, 119, - 94, 102, 115, 72, 67, 105, 73, 73, 73, 73, - - 73, 73, 73, 175, 176, 120, 107, 106, 121, 108, - 122, 70, 71, 109, 110, 152, 131, 152, 124, 132, - 123, 111, 135, 70, 71, 125, 126, 136, 133, 138, - 127, 137, 55, 139, 55, 134, 128, 129, 144, 130, - 55, 664, 145, 140, 146, 147, 154, 154, 154, 154, - 154, 154, 154, 156, 157, 159, 160, 667, 187, 236, - 185, 152, 237, 152, 222, 156, 157, 159, 160, 161, - 161, 186, 188, 162, 162, 162, 162, 162, 162, 162, - 223, 204, 667, 148, 197, 209, 663, 198, 199, 205, - 149, 200, 210, 201, 150, 212, 146, 147, 662, 151, - - 67, 231, 69, 69, 69, 69, 69, 69, 69, 213, - 232, 144, 661, 55, 660, 145, 659, 70, 71, 146, - 147, 154, 154, 154, 154, 154, 154, 154, 658, 70, - 71, 246, 247, 260, 261, 148, 290, 291, 292, 317, - 657, 519, 149, 246, 247, 656, 150, 655, 318, 520, - 654, 151, 322, 323, 324, 337, 338, 339, 148, 348, - 349, 350, 356, 357, 358, 149, 360, 361, 362, 150, - 653, 244, 244, 652, 151, 245, 245, 245, 245, 245, - 245, 245, 248, 248, 595, 596, 249, 249, 249, 249, - 249, 249, 249, 162, 162, 162, 162, 162, 162, 162, - - 162, 162, 162, 162, 162, 162, 162, 245, 245, 245, - 245, 245, 245, 245, 547, 548, 250, 245, 245, 245, - 245, 245, 245, 245, 370, 371, 372, 651, 250, 650, - 332, 332, 649, 157, 333, 333, 333, 333, 333, 333, - 333, 430, 431, 432, 648, 157, 249, 249, 249, 249, - 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, - 333, 333, 333, 333, 333, 333, 333, 605, 606, 160, - 333, 333, 333, 333, 333, 333, 333, 421, 422, 423, - 647, 160, 433, 434, 435, 646, 247, 645, 424, 425, - 436, 437, 438, 474, 475, 476, 547, 548, 247, 496, - - 497, 498, 465, 644, 477, 478, 605, 606, 643, 642, - 499, 500, 641, 521, 506, 507, 507, 507, 507, 507, - 507, 522, 533, 534, 535, 547, 548, 640, 550, 639, - 638, 605, 606, 536, 537, 547, 548, 551, 551, 551, - 551, 551, 551, 551, 547, 548, 637, 549, 549, 549, - 549, 549, 549, 550, 547, 548, 581, 582, 582, 582, - 582, 582, 582, 608, 605, 606, 551, 551, 551, 551, - 551, 551, 551, 636, 635, 634, 609, 609, 609, 609, - 609, 609, 609, 605, 606, 633, 632, 631, 608, 605, - 606, 630, 629, 627, 626, 607, 607, 607, 607, 607, - - 607, 609, 609, 609, 609, 609, 609, 609, 79, 79, - 79, 79, 79, 155, 155, 155, 155, 155, 65, 65, - 158, 158, 163, 163, 163, 243, 243, 625, 243, 243, - 243, 243, 243, 549, 549, 549, 624, 623, 622, 549, - 583, 583, 583, 607, 607, 607, 621, 620, 619, 607, - 628, 628, 628, 618, 617, 616, 615, 614, 613, 612, - 611, 610, 604, 603, 602, 601, 600, 599, 598, 597, - 594, 593, 592, 591, 590, 589, 588, 587, 586, 585, - 584, 580, 579, 578, 577, 576, 575, 574, 573, 572, - 571, 570, 569, 568, 567, 566, 565, 564, 563, 562, - - 561, 560, 559, 558, 557, 556, 555, 554, 553, 552, - 546, 545, 544, 543, 542, 541, 540, 539, 538, 532, - 531, 530, 529, 528, 527, 526, 525, 524, 523, 518, - 517, 516, 515, 514, 513, 512, 511, 510, 509, 508, - 505, 504, 503, 502, 501, 495, 494, 493, 492, 491, - 490, 489, 488, 487, 486, 485, 484, 483, 482, 481, - 480, 479, 473, 472, 471, 470, 469, 468, 467, 466, - 465, 464, 463, 462, 461, 460, 459, 458, 457, 456, - 455, 454, 453, 452, 451, 450, 449, 448, 447, 446, - 445, 444, 443, 442, 441, 440, 439, 429, 428, 427, - - 426, 420, 419, 418, 417, 416, 415, 414, 413, 412, - 411, 410, 409, 408, 407, 406, 405, 404, 403, 402, - 401, 400, 399, 398, 397, 396, 395, 394, 393, 392, - 391, 390, 389, 388, 387, 386, 385, 384, 383, 382, - 381, 380, 379, 378, 377, 376, 375, 374, 373, 369, - 368, 367, 366, 365, 364, 363, 359, 355, 354, 353, - 352, 351, 347, 346, 345, 344, 343, 342, 341, 340, - 336, 335, 334, 331, 330, 329, 328, 327, 326, 325, - 321, 320, 319, 316, 315, 314, 313, 312, 311, 310, - 309, 308, 307, 306, 305, 304, 303, 302, 301, 300, - - 299, 298, 297, 296, 295, 294, 293, 289, 288, 287, - 286, 285, 284, 283, 282, 281, 280, 279, 278, 277, - 276, 275, 274, 273, 272, 271, 270, 269, 268, 267, - 266, 265, 264, 263, 262, 259, 258, 257, 256, 255, - 254, 253, 252, 251, 242, 241, 240, 239, 238, 235, - 234, 233, 230, 229, 228, 227, 226, 225, 224, 221, - 220, 219, 218, 217, 216, 215, 214, 211, 208, 207, - 206, 203, 202, 196, 195, 194, 193, 192, 191, 190, - 189, 184, 183, 182, 181, 180, 179, 178, 177, 174, - 173, 172, 171, 170, 169, 168, 167, 166, 165, 164, - - 153, 76, 141, 118, 103, 80, 76, 66, 60, 57, - 56, 667, 5, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667 + 8, 9, 10, 9, 11, 8, 12, 13, 8, 8, + 14, 15, 16, 17, 18, 19, 20, 20, 20, 20, + 20, 20, 8, 21, 22, 23, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 25, 24, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 24, 24, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 24, 24, 24, 46, 47, 59, 62, 59, 48, 65, + 78, 79, 67, 69, 69, 69, 69, 69, 69, 69, + 81, 82, 66, 63, 68, 179, 180, 49, 50, 51, + 52, 51, 50, 50, 50, 50, 50, 50, 50, 50, + + 50, 50, 53, 50, 54, 54, 54, 54, 54, 54, + 55, 50, 50, 50, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 50, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 50, 71, 116, 72, 72, 72, 72, 72, 72, + 73, 85, 88, 126, 89, 213, 702, 117, 90, 74, + 75, 699, 214, 127, 76, 91, 86, 87, 120, 92, + 95, 74, 75, 99, 96, 100, 93, 118, 694, 94, + 97, 119, 121, 689, 101, 146, 98, 123, 688, 76, + + 71, 102, 77, 77, 77, 77, 77, 77, 77, 103, + 142, 108, 104, 124, 143, 105, 125, 74, 75, 109, + 111, 106, 707, 112, 144, 128, 687, 113, 114, 74, + 75, 110, 129, 130, 147, 115, 135, 131, 684, 136, + 139, 150, 151, 132, 133, 140, 134, 707, 137, 141, + 148, 156, 59, 156, 149, 138, 158, 158, 158, 158, + 158, 158, 158, 59, 189, 59, 160, 161, 163, 164, + 191, 264, 265, 240, 216, 190, 241, 208, 160, 161, + 163, 164, 152, 201, 192, 209, 202, 203, 217, 153, + 204, 235, 205, 154, 226, 150, 151, 683, 155, 71, + + 236, 73, 73, 73, 73, 73, 73, 73, 680, 148, + 227, 59, 679, 149, 165, 165, 74, 75, 166, 166, + 166, 166, 166, 166, 166, 150, 151, 523, 74, 75, + 156, 321, 156, 250, 251, 524, 152, 294, 295, 296, + 322, 556, 681, 153, 675, 250, 251, 154, 326, 327, + 328, 676, 155, 158, 158, 158, 158, 158, 158, 158, + 341, 342, 343, 352, 353, 354, 152, 360, 361, 362, + 364, 365, 366, 153, 374, 375, 376, 154, 678, 248, + 248, 589, 155, 249, 249, 249, 249, 249, 249, 249, + 252, 252, 590, 682, 253, 253, 253, 253, 253, 253, + + 253, 166, 166, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 166, 166, 249, 249, 249, 249, 249, + 249, 249, 602, 603, 254, 249, 249, 249, 249, 249, + 249, 249, 434, 435, 436, 677, 254, 674, 336, 336, + 673, 161, 337, 337, 337, 337, 337, 337, 337, 437, + 438, 439, 672, 161, 253, 253, 253, 253, 253, 253, + 253, 253, 253, 253, 253, 253, 253, 253, 337, 337, + 337, 337, 337, 337, 337, 551, 552, 164, 337, 337, + 337, 337, 337, 337, 337, 425, 426, 427, 675, 164, + 440, 441, 442, 671, 251, 676, 428, 429, 478, 479, + + 480, 500, 501, 502, 469, 670, 251, 525, 681, 481, + 482, 669, 503, 504, 668, 526, 551, 552, 510, 511, + 511, 511, 511, 511, 511, 537, 538, 539, 551, 552, + 612, 613, 612, 613, 612, 613, 540, 541, 551, 552, + 667, 685, 555, 555, 555, 555, 555, 555, 555, 686, + 554, 697, 586, 587, 587, 587, 587, 587, 587, 682, + 692, 666, 551, 552, 615, 690, 695, 693, 551, 552, + 697, 665, 664, 691, 696, 554, 553, 553, 553, 553, + 553, 553, 555, 555, 555, 555, 555, 555, 555, 615, + 612, 613, 690, 663, 692, 695, 662, 612, 613, 661, + + 691, 693, 698, 696, 616, 616, 616, 616, 616, 616, + 616, 614, 614, 614, 614, 614, 614, 612, 613, 700, + 703, 698, 705, 660, 659, 658, 657, 701, 704, 656, + 706, 616, 616, 616, 616, 616, 616, 616, 703, 705, + 655, 654, 653, 652, 651, 650, 704, 706, 57, 57, + 57, 57, 57, 57, 57, 57, 83, 83, 83, 83, + 83, 159, 159, 159, 159, 159, 69, 69, 162, 162, + 167, 167, 167, 247, 247, 649, 247, 247, 247, 247, + 247, 553, 553, 553, 648, 647, 646, 553, 588, 588, + 588, 614, 614, 614, 645, 644, 643, 614, 637, 637, + + 637, 642, 641, 640, 639, 638, 636, 635, 634, 633, + 632, 631, 630, 629, 628, 627, 626, 625, 624, 623, + 622, 621, 620, 619, 618, 617, 611, 610, 609, 608, + 607, 606, 605, 604, 601, 600, 599, 598, 597, 596, + 595, 594, 593, 592, 591, 585, 584, 583, 582, 581, + 580, 579, 578, 577, 576, 575, 574, 573, 572, 571, + 570, 569, 568, 567, 566, 565, 564, 563, 562, 561, + 560, 559, 558, 557, 556, 550, 549, 548, 547, 546, + 545, 544, 543, 542, 536, 535, 534, 533, 532, 531, + 530, 529, 528, 527, 522, 521, 520, 519, 518, 517, + + 516, 515, 514, 513, 512, 509, 508, 507, 506, 505, + 499, 498, 497, 496, 495, 494, 493, 492, 491, 490, + 489, 488, 487, 486, 485, 484, 483, 477, 476, 475, + 474, 473, 472, 471, 470, 469, 468, 467, 466, 465, + 464, 463, 462, 461, 460, 459, 458, 457, 456, 455, + 454, 453, 452, 451, 450, 449, 448, 447, 446, 445, + 444, 443, 433, 432, 431, 430, 424, 423, 422, 421, + 420, 419, 418, 417, 416, 415, 414, 413, 412, 411, + 410, 409, 408, 407, 406, 405, 404, 403, 402, 401, + 400, 399, 398, 397, 396, 395, 394, 393, 392, 391, + + 390, 389, 388, 387, 386, 385, 384, 383, 382, 381, + 380, 379, 378, 377, 373, 372, 371, 370, 369, 368, + 367, 363, 359, 358, 357, 356, 355, 351, 350, 349, + 348, 347, 346, 345, 344, 340, 339, 338, 335, 334, + 333, 332, 331, 330, 329, 325, 324, 323, 320, 319, + 318, 317, 316, 315, 314, 313, 312, 311, 310, 309, + 308, 307, 306, 305, 304, 303, 302, 301, 300, 299, + 298, 297, 293, 292, 291, 290, 289, 288, 287, 286, + 285, 284, 283, 282, 281, 280, 279, 278, 277, 276, + 275, 274, 273, 272, 271, 270, 269, 268, 267, 266, + + 263, 262, 261, 260, 259, 258, 257, 256, 255, 246, + 245, 244, 243, 242, 239, 238, 237, 234, 233, 232, + 231, 230, 229, 228, 225, 224, 223, 222, 221, 220, + 219, 218, 215, 212, 211, 210, 207, 206, 200, 199, + 198, 197, 196, 195, 194, 193, 188, 187, 186, 185, + 184, 183, 182, 181, 178, 177, 176, 175, 174, 173, + 172, 171, 170, 169, 168, 157, 80, 145, 122, 107, + 84, 80, 70, 64, 61, 60, 707, 58, 58, 7, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707 } ; -static yyconst flex_int16_t yy_chk[1076] = +static yyconst flex_int16_t yy_chk[1145] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -773,118 +796,126 @@ static yyconst flex_int16_t yy_chk[1076] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 2, 7, 11, 7, 2, 13, 33, 14, - 15, 15, 15, 15, 15, 15, 15, 19, 19, 11, - 13, 14, 33, 2, 3, 3, 3, 3, 3, 3, + 1, 1, 1, 1, 2, 9, 13, 9, 2, 15, + 21, 21, 16, 17, 17, 17, 17, 17, 17, 17, + 23, 23, 15, 13, 16, 94, 94, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 17, 44, 17, 17, - 17, 17, 17, 17, 17, 21, 21, 24, 28, 25, - 28, 25, 665, 17, 17, 25, 26, 35, 17, 28, - 26, 29, 24, 24, 27, 17, 17, 26, 27, 29, - 26, 35, 29, 664, 27, 29, 44, 31, 34, 37, - 27, 29, 34, 17, 18, 31, 18, 18, 18, 18, - - 18, 18, 18, 90, 90, 37, 32, 31, 37, 32, - 38, 18, 18, 32, 32, 49, 40, 49, 39, 40, - 38, 32, 41, 18, 18, 39, 39, 41, 40, 42, - 39, 41, 55, 42, 55, 40, 39, 39, 45, 39, - 45, 663, 45, 42, 46, 46, 52, 52, 52, 52, - 52, 52, 52, 65, 65, 67, 67, 68, 100, 140, - 99, 152, 140, 152, 128, 65, 65, 67, 67, 70, - 70, 99, 100, 70, 70, 70, 70, 70, 70, 70, - 128, 113, 68, 46, 110, 117, 661, 110, 110, 113, - 46, 110, 117, 110, 46, 119, 145, 145, 659, 46, - - 69, 136, 69, 69, 69, 69, 69, 69, 69, 119, - 136, 144, 658, 144, 657, 144, 652, 69, 69, 146, - 146, 154, 154, 154, 154, 154, 154, 154, 651, 69, - 69, 158, 158, 176, 176, 145, 206, 206, 206, 231, - 650, 479, 145, 158, 158, 643, 145, 642, 231, 479, - 641, 145, 235, 235, 235, 255, 255, 255, 146, 265, - 265, 265, 274, 274, 274, 146, 278, 278, 278, 146, - 640, 156, 156, 639, 146, 156, 156, 156, 156, 156, - 156, 156, 159, 159, 572, 572, 159, 159, 159, 159, - 159, 159, 159, 161, 161, 161, 161, 161, 161, 161, - - 162, 162, 162, 162, 162, 162, 162, 244, 244, 244, - 244, 244, 244, 244, 583, 583, 162, 245, 245, 245, - 245, 245, 245, 245, 286, 286, 286, 638, 162, 637, - 246, 246, 636, 245, 246, 246, 246, 246, 246, 246, - 246, 374, 374, 374, 635, 245, 248, 248, 248, 248, - 248, 248, 248, 249, 249, 249, 249, 249, 249, 249, - 332, 332, 332, 332, 332, 332, 332, 605, 605, 249, - 333, 333, 333, 333, 333, 333, 333, 364, 364, 364, - 633, 249, 375, 375, 375, 630, 333, 629, 364, 364, - 376, 376, 376, 420, 420, 420, 506, 506, 333, 459, - - 459, 459, 465, 627, 420, 420, 628, 628, 626, 625, - 459, 459, 623, 480, 465, 465, 465, 465, 465, 465, - 465, 480, 493, 493, 493, 507, 507, 622, 506, 621, - 620, 581, 581, 493, 493, 549, 549, 507, 507, 507, - 507, 507, 507, 507, 547, 547, 619, 549, 549, 549, - 549, 549, 549, 506, 551, 551, 547, 547, 547, 547, - 547, 547, 547, 581, 582, 582, 551, 551, 551, 551, - 551, 551, 551, 618, 616, 615, 582, 582, 582, 582, - 582, 582, 582, 607, 607, 614, 613, 612, 581, 609, - 609, 611, 610, 602, 601, 607, 607, 607, 607, 607, - - 607, 609, 609, 609, 609, 609, 609, 609, 668, 668, - 668, 668, 668, 669, 669, 669, 669, 669, 670, 670, - 671, 671, 672, 672, 672, 673, 673, 600, 673, 673, - 673, 673, 673, 674, 674, 674, 599, 598, 597, 674, - 675, 675, 675, 676, 676, 676, 596, 595, 594, 676, - 677, 677, 677, 593, 592, 591, 590, 589, 588, 586, - 585, 584, 580, 579, 578, 577, 576, 575, 574, 573, - 571, 567, 562, 561, 560, 559, 558, 557, 556, 555, - 554, 546, 543, 542, 540, 539, 537, 536, 535, 534, - 533, 532, 531, 530, 529, 527, 526, 525, 524, 523, - - 522, 521, 520, 519, 518, 517, 515, 514, 510, 509, - 505, 504, 502, 500, 499, 498, 497, 496, 494, 492, - 491, 490, 489, 488, 487, 485, 484, 483, 482, 478, - 477, 476, 475, 474, 473, 470, 469, 468, 467, 466, - 464, 463, 462, 461, 460, 458, 457, 450, 449, 446, - 445, 442, 441, 440, 439, 428, 427, 425, 424, 423, - 422, 421, 418, 416, 415, 414, 412, 411, 409, 408, - 407, 406, 404, 403, 401, 399, 398, 397, 396, 395, - 394, 393, 392, 391, 390, 388, 387, 386, 385, 384, - 383, 382, 381, 380, 379, 378, 377, 373, 369, 368, - - 365, 363, 353, 351, 347, 346, 345, 344, 342, 340, - 335, 334, 331, 330, 329, 328, 327, 326, 321, 320, - 319, 318, 317, 316, 315, 312, 311, 310, 309, 308, - 307, 306, 305, 304, 303, 302, 301, 300, 299, 298, - 297, 296, 295, 294, 293, 292, 291, 290, 287, 285, - 284, 283, 282, 281, 280, 279, 277, 273, 271, 270, - 269, 268, 264, 263, 262, 261, 260, 259, 258, 257, - 254, 252, 251, 242, 241, 240, 239, 238, 237, 236, - 234, 233, 232, 230, 229, 228, 227, 226, 225, 224, - 223, 222, 221, 220, 219, 218, 217, 216, 215, 214, - - 213, 212, 211, 210, 209, 208, 207, 205, 204, 203, - 202, 201, 200, 199, 198, 197, 196, 195, 194, 193, - 192, 191, 190, 188, 187, 186, 185, 184, 183, 182, - 181, 180, 179, 178, 177, 175, 174, 173, 172, 171, - 170, 169, 168, 166, 151, 150, 149, 148, 141, 139, - 138, 137, 135, 134, 133, 132, 131, 130, 129, 127, - 126, 125, 124, 123, 122, 121, 120, 118, 116, 115, - 114, 112, 111, 109, 108, 106, 105, 104, 103, 102, - 101, 98, 97, 96, 95, 94, 93, 92, 91, 89, - 88, 87, 86, 85, 84, 83, 82, 81, 78, 74, - - 51, 47, 43, 36, 30, 23, 20, 16, 12, 10, - 9, 5, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, - 667, 667, 667, 667, 667 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 19, 35, 19, 19, 19, 19, 19, 19, + 19, 26, 27, 40, 27, 121, 700, 35, 27, 19, + 19, 694, 121, 40, 19, 28, 26, 26, 37, 28, + 29, 19, 19, 30, 29, 30, 28, 36, 688, 28, + 29, 36, 37, 685, 30, 46, 29, 39, 684, 19, + + 20, 31, 20, 20, 20, 20, 20, 20, 20, 31, + 44, 33, 31, 39, 44, 31, 39, 20, 20, 33, + 34, 31, 72, 34, 44, 41, 683, 34, 34, 20, + 20, 33, 41, 41, 46, 34, 42, 41, 679, 42, + 43, 48, 48, 41, 41, 43, 41, 72, 42, 43, + 47, 51, 47, 51, 47, 42, 54, 54, 54, 54, + 54, 54, 54, 59, 103, 59, 69, 69, 71, 71, + 104, 180, 180, 144, 123, 103, 144, 117, 69, 69, + 71, 71, 48, 114, 104, 117, 114, 114, 123, 48, + 114, 140, 114, 48, 132, 149, 149, 677, 48, 73, + + 140, 73, 73, 73, 73, 73, 73, 73, 674, 148, + 132, 148, 673, 148, 74, 74, 73, 73, 74, 74, + 74, 74, 74, 74, 74, 150, 150, 483, 73, 73, + 156, 235, 156, 162, 162, 483, 149, 210, 210, 210, + 235, 556, 676, 149, 670, 162, 162, 149, 239, 239, + 239, 670, 149, 158, 158, 158, 158, 158, 158, 158, + 259, 259, 259, 269, 269, 269, 150, 278, 278, 278, + 282, 282, 282, 150, 290, 290, 290, 150, 672, 160, + 160, 556, 150, 160, 160, 160, 160, 160, 160, 160, + 163, 163, 556, 676, 163, 163, 163, 163, 163, 163, + + 163, 165, 165, 165, 165, 165, 165, 165, 166, 166, + 166, 166, 166, 166, 166, 248, 248, 248, 248, 248, + 248, 248, 577, 577, 166, 249, 249, 249, 249, 249, + 249, 249, 378, 378, 378, 671, 166, 665, 250, 250, + 664, 249, 250, 250, 250, 250, 250, 250, 250, 379, + 379, 379, 663, 249, 252, 252, 252, 252, 252, 252, + 252, 253, 253, 253, 253, 253, 253, 253, 336, 336, + 336, 336, 336, 336, 336, 588, 588, 253, 337, 337, + 337, 337, 337, 337, 337, 368, 368, 368, 675, 253, + 380, 380, 380, 657, 337, 675, 368, 368, 424, 424, + + 424, 463, 463, 463, 469, 656, 337, 484, 681, 424, + 424, 654, 463, 463, 653, 484, 510, 510, 469, 469, + 469, 469, 469, 469, 469, 497, 497, 497, 511, 511, + 586, 586, 612, 612, 637, 637, 497, 497, 551, 551, + 652, 682, 511, 511, 511, 511, 511, 511, 511, 682, + 510, 693, 551, 551, 551, 551, 551, 551, 551, 681, + 687, 651, 553, 553, 586, 686, 689, 687, 555, 555, + 697, 650, 649, 686, 689, 510, 553, 553, 553, 553, + 553, 553, 555, 555, 555, 555, 555, 555, 555, 586, + 587, 587, 690, 648, 692, 695, 647, 614, 614, 646, + + 690, 692, 693, 695, 587, 587, 587, 587, 587, 587, + 587, 614, 614, 614, 614, 614, 614, 616, 616, 698, + 701, 697, 702, 644, 641, 640, 639, 698, 701, 638, + 702, 616, 616, 616, 616, 616, 616, 616, 703, 705, + 636, 635, 634, 632, 631, 630, 703, 705, 708, 708, + 708, 708, 708, 708, 708, 708, 709, 709, 709, 709, + 709, 710, 710, 710, 710, 710, 711, 711, 712, 712, + 713, 713, 713, 714, 714, 629, 714, 714, 714, 714, + 714, 715, 715, 715, 628, 627, 625, 715, 716, 716, + 716, 717, 717, 717, 624, 623, 622, 717, 718, 718, + + 718, 621, 620, 619, 618, 617, 609, 608, 607, 606, + 605, 604, 603, 602, 601, 600, 599, 598, 597, 596, + 595, 593, 592, 591, 590, 589, 585, 584, 583, 582, + 581, 580, 579, 578, 576, 572, 567, 566, 565, 564, + 563, 562, 561, 560, 559, 550, 547, 546, 544, 543, + 541, 540, 539, 538, 537, 536, 535, 534, 533, 531, + 530, 529, 528, 527, 526, 525, 524, 523, 522, 521, + 519, 518, 514, 513, 512, 509, 508, 506, 504, 503, + 502, 501, 500, 498, 496, 495, 494, 493, 492, 491, + 489, 488, 487, 486, 482, 481, 480, 479, 478, 477, + + 474, 473, 472, 471, 470, 468, 467, 466, 465, 464, + 462, 461, 454, 453, 450, 449, 446, 445, 444, 443, + 432, 431, 429, 428, 427, 426, 425, 422, 420, 419, + 418, 416, 415, 413, 412, 411, 410, 408, 407, 405, + 403, 402, 401, 400, 399, 398, 397, 396, 395, 394, + 392, 391, 390, 389, 388, 387, 386, 385, 384, 383, + 382, 381, 377, 373, 372, 369, 367, 357, 355, 351, + 350, 349, 348, 346, 344, 339, 338, 335, 334, 333, + 332, 331, 330, 325, 324, 323, 322, 321, 320, 319, + 316, 315, 314, 313, 312, 311, 310, 309, 308, 307, + + 306, 305, 304, 303, 302, 301, 300, 299, 298, 297, + 296, 295, 294, 291, 289, 288, 287, 286, 285, 284, + 283, 281, 277, 275, 274, 273, 272, 268, 267, 266, + 265, 264, 263, 262, 261, 258, 256, 255, 246, 245, + 244, 243, 242, 241, 240, 238, 237, 236, 234, 233, + 232, 231, 230, 229, 228, 227, 226, 225, 224, 223, + 222, 221, 220, 219, 218, 217, 216, 215, 214, 213, + 212, 211, 209, 208, 207, 206, 205, 204, 203, 202, + 201, 200, 199, 198, 197, 196, 195, 194, 192, 191, + 190, 189, 188, 187, 186, 185, 184, 183, 182, 181, + + 179, 178, 177, 176, 175, 174, 173, 172, 170, 155, + 154, 153, 152, 145, 143, 142, 141, 139, 138, 137, + 136, 135, 134, 133, 131, 130, 129, 128, 127, 126, + 125, 124, 122, 120, 119, 118, 116, 115, 113, 112, + 110, 109, 108, 107, 106, 105, 102, 101, 100, 99, + 98, 97, 96, 95, 93, 92, 91, 90, 89, 88, + 87, 86, 85, 82, 78, 53, 49, 45, 38, 32, + 25, 22, 18, 14, 12, 11, 7, 6, 5, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707, 707, 707, 707, 707, 707, 707, + 707, 707, 707, 707 } ; /* The intent behind this definition is that it'll catch @@ -954,10 +985,11 @@ static yyconst flex_int16_t yy_chk[1076] = } \ } while (0) -#line 958 "glsl_lexer.cpp" +#line 989 "glsl_lexer.cpp" #define INITIAL 0 #define PP 1 +#define PRAGMA 2 #define YY_EXTRA_TYPE struct _mesa_glsl_parse_state * @@ -1195,7 +1227,7 @@ YY_DECL #line 76 "glsl_lexer.lpp" -#line 1199 "glsl_lexer.cpp" +#line 1231 "glsl_lexer.cpp" yylval = yylval_param; @@ -1253,13 +1285,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 668 ) + if ( yy_current_state >= 708 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_current_state != 667 ); + while ( yy_current_state != 707 ); yy_cp = yyg->yy_last_accepting_cpos; yy_current_state = yyg->yy_last_accepting_state; @@ -1349,319 +1381,362 @@ YY_RULE_SETUP case 7: YY_RULE_SETUP #line 113 "glsl_lexer.lpp" -{ BEGIN PP; return PRAGMA; } +{ + BEGIN PP; + return PRAGMA_DEBUG_ON; + } YY_BREAK case 8: YY_RULE_SETUP -#line 114 "glsl_lexer.lpp" -{ } +#line 117 "glsl_lexer.lpp" +{ + BEGIN PP; + return PRAGMA_DEBUG_OFF; + } YY_BREAK case 9: YY_RULE_SETUP -#line 115 "glsl_lexer.lpp" -{ } +#line 121 "glsl_lexer.lpp" +{ + BEGIN PP; + return PRAGMA_OPTIMIZE_ON; + } YY_BREAK case 10: YY_RULE_SETUP -#line 116 "glsl_lexer.lpp" -return COLON; +#line 125 "glsl_lexer.lpp" +{ + BEGIN PP; + return PRAGMA_OPTIMIZE_OFF; + } YY_BREAK case 11: YY_RULE_SETUP -#line 117 "glsl_lexer.lpp" +#line 129 "glsl_lexer.lpp" +{ BEGIN PRAGMA; } + YY_BREAK +case 12: +/* rule 12 can match eol */ +YY_RULE_SETUP +#line 131 "glsl_lexer.lpp" +{ BEGIN 0; yylineno++; yycolumn = 0; } + YY_BREAK +case 13: +YY_RULE_SETUP +#line 132 "glsl_lexer.lpp" +{ } + YY_BREAK +case 14: +YY_RULE_SETUP +#line 134 "glsl_lexer.lpp" +{ } + YY_BREAK +case 15: +YY_RULE_SETUP +#line 135 "glsl_lexer.lpp" +{ } + YY_BREAK +case 16: +YY_RULE_SETUP +#line 136 "glsl_lexer.lpp" +return COLON; + YY_BREAK +case 17: +YY_RULE_SETUP +#line 137 "glsl_lexer.lpp" { yylval->identifier = strdup(yytext); return IDENTIFIER; } YY_BREAK -case 12: +case 18: YY_RULE_SETUP -#line 121 "glsl_lexer.lpp" +#line 141 "glsl_lexer.lpp" { yylval->n = strtol(yytext, NULL, 10); return INTCONSTANT; } YY_BREAK -case 13: -/* rule 13 can match eol */ +case 19: +/* rule 19 can match eol */ YY_RULE_SETUP -#line 125 "glsl_lexer.lpp" +#line 145 "glsl_lexer.lpp" { BEGIN 0; yylineno++; yycolumn = 0; return EOL; } YY_BREAK -case 14: -/* rule 14 can match eol */ +case 20: +/* rule 20 can match eol */ YY_RULE_SETUP -#line 127 "glsl_lexer.lpp" +#line 147 "glsl_lexer.lpp" { yylineno++; yycolumn = 0; } YY_BREAK -case 15: +case 21: YY_RULE_SETUP -#line 129 "glsl_lexer.lpp" +#line 149 "glsl_lexer.lpp" return ATTRIBUTE; YY_BREAK -case 16: +case 22: YY_RULE_SETUP -#line 130 "glsl_lexer.lpp" +#line 150 "glsl_lexer.lpp" return CONST_TOK; YY_BREAK -case 17: +case 23: YY_RULE_SETUP -#line 131 "glsl_lexer.lpp" +#line 151 "glsl_lexer.lpp" return BOOL_TOK; YY_BREAK -case 18: +case 24: YY_RULE_SETUP -#line 132 "glsl_lexer.lpp" +#line 152 "glsl_lexer.lpp" return FLOAT_TOK; YY_BREAK -case 19: +case 25: YY_RULE_SETUP -#line 133 "glsl_lexer.lpp" +#line 153 "glsl_lexer.lpp" return INT_TOK; YY_BREAK -case 20: +case 26: YY_RULE_SETUP -#line 135 "glsl_lexer.lpp" +#line 155 "glsl_lexer.lpp" return BREAK; YY_BREAK -case 21: +case 27: YY_RULE_SETUP -#line 136 "glsl_lexer.lpp" +#line 156 "glsl_lexer.lpp" return CONTINUE; YY_BREAK -case 22: +case 28: YY_RULE_SETUP -#line 137 "glsl_lexer.lpp" +#line 157 "glsl_lexer.lpp" return DO; YY_BREAK -case 23: +case 29: YY_RULE_SETUP -#line 138 "glsl_lexer.lpp" +#line 158 "glsl_lexer.lpp" return WHILE; YY_BREAK -case 24: +case 30: YY_RULE_SETUP -#line 139 "glsl_lexer.lpp" +#line 159 "glsl_lexer.lpp" return ELSE; YY_BREAK -case 25: +case 31: YY_RULE_SETUP -#line 140 "glsl_lexer.lpp" +#line 160 "glsl_lexer.lpp" return FOR; YY_BREAK -case 26: +case 32: YY_RULE_SETUP -#line 141 "glsl_lexer.lpp" +#line 161 "glsl_lexer.lpp" return IF; YY_BREAK -case 27: +case 33: YY_RULE_SETUP -#line 142 "glsl_lexer.lpp" +#line 162 "glsl_lexer.lpp" return DISCARD; YY_BREAK -case 28: +case 34: YY_RULE_SETUP -#line 143 "glsl_lexer.lpp" +#line 163 "glsl_lexer.lpp" return RETURN; YY_BREAK -case 29: +case 35: YY_RULE_SETUP -#line 145 "glsl_lexer.lpp" +#line 165 "glsl_lexer.lpp" return BVEC2; YY_BREAK -case 30: +case 36: YY_RULE_SETUP -#line 146 "glsl_lexer.lpp" +#line 166 "glsl_lexer.lpp" return BVEC3; YY_BREAK -case 31: +case 37: YY_RULE_SETUP -#line 147 "glsl_lexer.lpp" +#line 167 "glsl_lexer.lpp" return BVEC4; YY_BREAK -case 32: +case 38: YY_RULE_SETUP -#line 148 "glsl_lexer.lpp" +#line 168 "glsl_lexer.lpp" return IVEC2; YY_BREAK -case 33: +case 39: YY_RULE_SETUP -#line 149 "glsl_lexer.lpp" +#line 169 "glsl_lexer.lpp" return IVEC3; YY_BREAK -case 34: +case 40: YY_RULE_SETUP -#line 150 "glsl_lexer.lpp" +#line 170 "glsl_lexer.lpp" return IVEC4; YY_BREAK -case 35: +case 41: YY_RULE_SETUP -#line 151 "glsl_lexer.lpp" +#line 171 "glsl_lexer.lpp" return VEC2; YY_BREAK -case 36: +case 42: YY_RULE_SETUP -#line 152 "glsl_lexer.lpp" +#line 172 "glsl_lexer.lpp" return VEC3; YY_BREAK -case 37: +case 43: YY_RULE_SETUP -#line 153 "glsl_lexer.lpp" +#line 173 "glsl_lexer.lpp" return VEC4; YY_BREAK -case 38: +case 44: YY_RULE_SETUP -#line 154 "glsl_lexer.lpp" +#line 174 "glsl_lexer.lpp" return MAT2X2; YY_BREAK -case 39: +case 45: YY_RULE_SETUP -#line 155 "glsl_lexer.lpp" +#line 175 "glsl_lexer.lpp" return MAT3X3; YY_BREAK -case 40: +case 46: YY_RULE_SETUP -#line 156 "glsl_lexer.lpp" +#line 176 "glsl_lexer.lpp" return MAT4X4; YY_BREAK -case 41: +case 47: YY_RULE_SETUP -#line 157 "glsl_lexer.lpp" +#line 177 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT2X2); YY_BREAK -case 42: +case 48: YY_RULE_SETUP -#line 158 "glsl_lexer.lpp" +#line 178 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT2X3); YY_BREAK -case 43: +case 49: YY_RULE_SETUP -#line 159 "glsl_lexer.lpp" +#line 179 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT2X4); YY_BREAK -case 44: +case 50: YY_RULE_SETUP -#line 160 "glsl_lexer.lpp" +#line 180 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT3X2); YY_BREAK -case 45: +case 51: YY_RULE_SETUP -#line 161 "glsl_lexer.lpp" +#line 181 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT3X3); YY_BREAK -case 46: +case 52: YY_RULE_SETUP -#line 162 "glsl_lexer.lpp" +#line 182 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT3X4); YY_BREAK -case 47: +case 53: YY_RULE_SETUP -#line 163 "glsl_lexer.lpp" +#line 183 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT4X2); YY_BREAK -case 48: +case 54: YY_RULE_SETUP -#line 164 "glsl_lexer.lpp" +#line 184 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT4X3); YY_BREAK -case 49: +case 55: YY_RULE_SETUP -#line 165 "glsl_lexer.lpp" +#line 185 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MAT4X4); YY_BREAK -case 50: +case 56: YY_RULE_SETUP -#line 167 "glsl_lexer.lpp" +#line 187 "glsl_lexer.lpp" return IN_TOK; YY_BREAK -case 51: +case 57: YY_RULE_SETUP -#line 168 "glsl_lexer.lpp" +#line 188 "glsl_lexer.lpp" return OUT_TOK; YY_BREAK -case 52: +case 58: YY_RULE_SETUP -#line 169 "glsl_lexer.lpp" +#line 189 "glsl_lexer.lpp" return INOUT_TOK; YY_BREAK -case 53: +case 59: YY_RULE_SETUP -#line 170 "glsl_lexer.lpp" +#line 190 "glsl_lexer.lpp" return UNIFORM; YY_BREAK -case 54: +case 60: YY_RULE_SETUP -#line 171 "glsl_lexer.lpp" +#line 191 "glsl_lexer.lpp" return VARYING; YY_BREAK -case 55: +case 61: YY_RULE_SETUP -#line 172 "glsl_lexer.lpp" +#line 192 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, CENTROID); YY_BREAK -case 56: +case 62: YY_RULE_SETUP -#line 173 "glsl_lexer.lpp" +#line 193 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, INVARIANT); YY_BREAK -case 57: +case 63: YY_RULE_SETUP -#line 175 "glsl_lexer.lpp" +#line 195 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, FLAT); YY_BREAK -case 58: +case 64: YY_RULE_SETUP -#line 176 "glsl_lexer.lpp" +#line 196 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, SMOOTH); YY_BREAK -case 59: +case 65: YY_RULE_SETUP -#line 177 "glsl_lexer.lpp" +#line 197 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, NOPERSPECTIVE); YY_BREAK -case 60: +case 66: YY_RULE_SETUP -#line 179 "glsl_lexer.lpp" +#line 199 "glsl_lexer.lpp" return SAMPLER1D; YY_BREAK -case 61: +case 67: YY_RULE_SETUP -#line 180 "glsl_lexer.lpp" +#line 200 "glsl_lexer.lpp" return SAMPLER2D; YY_BREAK -case 62: +case 68: YY_RULE_SETUP -#line 181 "glsl_lexer.lpp" +#line 201 "glsl_lexer.lpp" return SAMPLER3D; YY_BREAK -case 63: +case 69: YY_RULE_SETUP -#line 182 "glsl_lexer.lpp" +#line 202 "glsl_lexer.lpp" return SAMPLERCUBE; YY_BREAK -case 64: +case 70: YY_RULE_SETUP -#line 183 "glsl_lexer.lpp" +#line 203 "glsl_lexer.lpp" return SAMPLER1DSHADOW; YY_BREAK -case 65: +case 71: YY_RULE_SETUP -#line 184 "glsl_lexer.lpp" +#line 204 "glsl_lexer.lpp" return SAMPLER2DSHADOW; YY_BREAK -case 66: +case 72: YY_RULE_SETUP -#line 186 "glsl_lexer.lpp" +#line 206 "glsl_lexer.lpp" return STRUCT; YY_BREAK -case 67: +case 73: YY_RULE_SETUP -#line 187 "glsl_lexer.lpp" +#line 207 "glsl_lexer.lpp" return VOID_TOK; YY_BREAK -case 68: +case 74: YY_RULE_SETUP -#line 189 "glsl_lexer.lpp" +#line 209 "glsl_lexer.lpp" { if ((yyextra->language_version >= 140) || (yyextra->ARB_fragment_coord_conventions_enable)){ @@ -1672,572 +1747,572 @@ YY_RULE_SETUP } } YY_BREAK -case 69: +case 75: YY_RULE_SETUP -#line 199 "glsl_lexer.lpp" +#line 219 "glsl_lexer.lpp" return INC_OP; YY_BREAK -case 70: +case 76: YY_RULE_SETUP -#line 200 "glsl_lexer.lpp" +#line 220 "glsl_lexer.lpp" return DEC_OP; YY_BREAK -case 71: +case 77: YY_RULE_SETUP -#line 201 "glsl_lexer.lpp" +#line 221 "glsl_lexer.lpp" return LE_OP; YY_BREAK -case 72: +case 78: YY_RULE_SETUP -#line 202 "glsl_lexer.lpp" +#line 222 "glsl_lexer.lpp" return GE_OP; YY_BREAK -case 73: +case 79: YY_RULE_SETUP -#line 203 "glsl_lexer.lpp" +#line 223 "glsl_lexer.lpp" return EQ_OP; YY_BREAK -case 74: +case 80: YY_RULE_SETUP -#line 204 "glsl_lexer.lpp" +#line 224 "glsl_lexer.lpp" return NE_OP; YY_BREAK -case 75: +case 81: YY_RULE_SETUP -#line 205 "glsl_lexer.lpp" +#line 225 "glsl_lexer.lpp" return AND_OP; YY_BREAK -case 76: +case 82: YY_RULE_SETUP -#line 206 "glsl_lexer.lpp" +#line 226 "glsl_lexer.lpp" return OR_OP; YY_BREAK -case 77: +case 83: YY_RULE_SETUP -#line 207 "glsl_lexer.lpp" +#line 227 "glsl_lexer.lpp" return XOR_OP; YY_BREAK -case 78: +case 84: YY_RULE_SETUP -#line 209 "glsl_lexer.lpp" +#line 229 "glsl_lexer.lpp" return MUL_ASSIGN; YY_BREAK -case 79: +case 85: YY_RULE_SETUP -#line 210 "glsl_lexer.lpp" +#line 230 "glsl_lexer.lpp" return DIV_ASSIGN; YY_BREAK -case 80: +case 86: YY_RULE_SETUP -#line 211 "glsl_lexer.lpp" +#line 231 "glsl_lexer.lpp" return ADD_ASSIGN; YY_BREAK -case 81: +case 87: YY_RULE_SETUP -#line 212 "glsl_lexer.lpp" +#line 232 "glsl_lexer.lpp" return MOD_ASSIGN; YY_BREAK -case 82: +case 88: YY_RULE_SETUP -#line 213 "glsl_lexer.lpp" +#line 233 "glsl_lexer.lpp" return LEFT_ASSIGN; YY_BREAK -case 83: +case 89: YY_RULE_SETUP -#line 214 "glsl_lexer.lpp" +#line 234 "glsl_lexer.lpp" return RIGHT_ASSIGN; YY_BREAK -case 84: +case 90: YY_RULE_SETUP -#line 215 "glsl_lexer.lpp" +#line 235 "glsl_lexer.lpp" return AND_ASSIGN; YY_BREAK -case 85: +case 91: YY_RULE_SETUP -#line 216 "glsl_lexer.lpp" +#line 236 "glsl_lexer.lpp" return XOR_ASSIGN; YY_BREAK -case 86: +case 92: YY_RULE_SETUP -#line 217 "glsl_lexer.lpp" +#line 237 "glsl_lexer.lpp" return OR_ASSIGN; YY_BREAK -case 87: +case 93: YY_RULE_SETUP -#line 218 "glsl_lexer.lpp" +#line 238 "glsl_lexer.lpp" return SUB_ASSIGN; YY_BREAK -case 88: +case 94: YY_RULE_SETUP -#line 220 "glsl_lexer.lpp" +#line 240 "glsl_lexer.lpp" { yylval->n = strtol(yytext, NULL, 10); return INTCONSTANT; } YY_BREAK -case 89: +case 95: YY_RULE_SETUP -#line 224 "glsl_lexer.lpp" +#line 244 "glsl_lexer.lpp" { yylval->n = strtol(yytext + 2, NULL, 16); return INTCONSTANT; } YY_BREAK -case 90: +case 96: YY_RULE_SETUP -#line 228 "glsl_lexer.lpp" +#line 248 "glsl_lexer.lpp" { yylval->n = strtol(yytext, NULL, 8); return INTCONSTANT; } YY_BREAK -case 91: +case 97: YY_RULE_SETUP -#line 233 "glsl_lexer.lpp" +#line 253 "glsl_lexer.lpp" { yylval->real = strtod(yytext, NULL); return FLOATCONSTANT; } YY_BREAK -case 92: +case 98: YY_RULE_SETUP -#line 237 "glsl_lexer.lpp" +#line 257 "glsl_lexer.lpp" { yylval->real = strtod(yytext, NULL); return FLOATCONSTANT; } YY_BREAK -case 93: +case 99: YY_RULE_SETUP -#line 241 "glsl_lexer.lpp" +#line 261 "glsl_lexer.lpp" { yylval->real = strtod(yytext, NULL); return FLOATCONSTANT; } YY_BREAK -case 94: +case 100: YY_RULE_SETUP -#line 245 "glsl_lexer.lpp" +#line 265 "glsl_lexer.lpp" { yylval->real = strtod(yytext, NULL); return FLOATCONSTANT; } YY_BREAK -case 95: +case 101: YY_RULE_SETUP -#line 249 "glsl_lexer.lpp" +#line 269 "glsl_lexer.lpp" { yylval->real = strtod(yytext, NULL); return FLOATCONSTANT; } YY_BREAK -case 96: +case 102: YY_RULE_SETUP -#line 254 "glsl_lexer.lpp" +#line 274 "glsl_lexer.lpp" { yylval->n = 1; return BOOLCONSTANT; } YY_BREAK -case 97: +case 103: YY_RULE_SETUP -#line 258 "glsl_lexer.lpp" +#line 278 "glsl_lexer.lpp" { yylval->n = 0; return BOOLCONSTANT; } YY_BREAK /* Reserved words in GLSL 1.10. */ -case 98: +case 104: YY_RULE_SETUP -#line 265 "glsl_lexer.lpp" +#line 285 "glsl_lexer.lpp" RESERVED_WORD(999, ASM); YY_BREAK -case 99: +case 105: YY_RULE_SETUP -#line 266 "glsl_lexer.lpp" +#line 286 "glsl_lexer.lpp" RESERVED_WORD(999, CLASS); YY_BREAK -case 100: +case 106: YY_RULE_SETUP -#line 267 "glsl_lexer.lpp" +#line 287 "glsl_lexer.lpp" RESERVED_WORD(999, UNION); YY_BREAK -case 101: +case 107: YY_RULE_SETUP -#line 268 "glsl_lexer.lpp" +#line 288 "glsl_lexer.lpp" RESERVED_WORD(999, ENUM); YY_BREAK -case 102: +case 108: YY_RULE_SETUP -#line 269 "glsl_lexer.lpp" +#line 289 "glsl_lexer.lpp" RESERVED_WORD(999, TYPEDEF); YY_BREAK -case 103: +case 109: YY_RULE_SETUP -#line 270 "glsl_lexer.lpp" +#line 290 "glsl_lexer.lpp" RESERVED_WORD(999, TEMPLATE); YY_BREAK -case 104: +case 110: YY_RULE_SETUP -#line 271 "glsl_lexer.lpp" +#line 291 "glsl_lexer.lpp" RESERVED_WORD(999, THIS); YY_BREAK -case 105: +case 111: YY_RULE_SETUP -#line 272 "glsl_lexer.lpp" +#line 292 "glsl_lexer.lpp" RESERVED_WORD(999, PACKED_TOK); YY_BREAK -case 106: +case 112: YY_RULE_SETUP -#line 273 "glsl_lexer.lpp" +#line 293 "glsl_lexer.lpp" RESERVED_WORD(999, GOTO); YY_BREAK -case 107: +case 113: YY_RULE_SETUP -#line 274 "glsl_lexer.lpp" +#line 294 "glsl_lexer.lpp" RESERVED_WORD(130, SWITCH); YY_BREAK -case 108: +case 114: YY_RULE_SETUP -#line 275 "glsl_lexer.lpp" +#line 295 "glsl_lexer.lpp" RESERVED_WORD(130, DEFAULT); YY_BREAK -case 109: +case 115: YY_RULE_SETUP -#line 276 "glsl_lexer.lpp" +#line 296 "glsl_lexer.lpp" RESERVED_WORD(999, INLINE_TOK); YY_BREAK -case 110: +case 116: YY_RULE_SETUP -#line 277 "glsl_lexer.lpp" +#line 297 "glsl_lexer.lpp" RESERVED_WORD(999, NOINLINE); YY_BREAK -case 111: +case 117: YY_RULE_SETUP -#line 278 "glsl_lexer.lpp" +#line 298 "glsl_lexer.lpp" RESERVED_WORD(999, VOLATILE); YY_BREAK -case 112: +case 118: YY_RULE_SETUP -#line 279 "glsl_lexer.lpp" +#line 299 "glsl_lexer.lpp" RESERVED_WORD(999, PUBLIC_TOK); YY_BREAK -case 113: +case 119: YY_RULE_SETUP -#line 280 "glsl_lexer.lpp" +#line 300 "glsl_lexer.lpp" RESERVED_WORD(999, STATIC); YY_BREAK -case 114: +case 120: YY_RULE_SETUP -#line 281 "glsl_lexer.lpp" +#line 301 "glsl_lexer.lpp" RESERVED_WORD(999, EXTERN); YY_BREAK -case 115: +case 121: YY_RULE_SETUP -#line 282 "glsl_lexer.lpp" +#line 302 "glsl_lexer.lpp" RESERVED_WORD(999, EXTERNAL); YY_BREAK -case 116: +case 122: YY_RULE_SETUP -#line 283 "glsl_lexer.lpp" +#line 303 "glsl_lexer.lpp" RESERVED_WORD(999, INTERFACE); YY_BREAK -case 117: +case 123: YY_RULE_SETUP -#line 284 "glsl_lexer.lpp" +#line 304 "glsl_lexer.lpp" RESERVED_WORD(999, LONG_TOK); YY_BREAK -case 118: +case 124: YY_RULE_SETUP -#line 285 "glsl_lexer.lpp" +#line 305 "glsl_lexer.lpp" RESERVED_WORD(999, SHORT_TOK); YY_BREAK -case 119: +case 125: YY_RULE_SETUP -#line 286 "glsl_lexer.lpp" +#line 306 "glsl_lexer.lpp" RESERVED_WORD(999, DOUBLE_TOK); YY_BREAK -case 120: +case 126: YY_RULE_SETUP -#line 287 "glsl_lexer.lpp" +#line 307 "glsl_lexer.lpp" RESERVED_WORD(999, HALF); YY_BREAK -case 121: +case 127: YY_RULE_SETUP -#line 288 "glsl_lexer.lpp" +#line 308 "glsl_lexer.lpp" RESERVED_WORD(999, FIXED_TOK); YY_BREAK -case 122: +case 128: YY_RULE_SETUP -#line 289 "glsl_lexer.lpp" +#line 309 "glsl_lexer.lpp" RESERVED_WORD(999, UNSIGNED); YY_BREAK -case 123: +case 129: YY_RULE_SETUP -#line 290 "glsl_lexer.lpp" +#line 310 "glsl_lexer.lpp" RESERVED_WORD(999, INPUT_TOK); YY_BREAK -case 124: +case 130: YY_RULE_SETUP -#line 291 "glsl_lexer.lpp" +#line 311 "glsl_lexer.lpp" RESERVED_WORD(999, OUTPUT); YY_BREAK -case 125: +case 131: YY_RULE_SETUP -#line 292 "glsl_lexer.lpp" +#line 312 "glsl_lexer.lpp" RESERVED_WORD(999, HVEC2); YY_BREAK -case 126: +case 132: YY_RULE_SETUP -#line 293 "glsl_lexer.lpp" +#line 313 "glsl_lexer.lpp" RESERVED_WORD(999, HVEC3); YY_BREAK -case 127: +case 133: YY_RULE_SETUP -#line 294 "glsl_lexer.lpp" +#line 314 "glsl_lexer.lpp" RESERVED_WORD(999, HVEC4); YY_BREAK -case 128: +case 134: YY_RULE_SETUP -#line 295 "glsl_lexer.lpp" +#line 315 "glsl_lexer.lpp" RESERVED_WORD(999, DVEC2); YY_BREAK -case 129: +case 135: YY_RULE_SETUP -#line 296 "glsl_lexer.lpp" +#line 316 "glsl_lexer.lpp" RESERVED_WORD(999, DVEC3); YY_BREAK -case 130: +case 136: YY_RULE_SETUP -#line 297 "glsl_lexer.lpp" +#line 317 "glsl_lexer.lpp" RESERVED_WORD(999, DVEC4); YY_BREAK -case 131: +case 137: YY_RULE_SETUP -#line 298 "glsl_lexer.lpp" +#line 318 "glsl_lexer.lpp" RESERVED_WORD(999, FVEC2); YY_BREAK -case 132: +case 138: YY_RULE_SETUP -#line 299 "glsl_lexer.lpp" +#line 319 "glsl_lexer.lpp" RESERVED_WORD(999, FVEC3); YY_BREAK -case 133: +case 139: YY_RULE_SETUP -#line 300 "glsl_lexer.lpp" +#line 320 "glsl_lexer.lpp" RESERVED_WORD(999, FVEC4); YY_BREAK -case 134: +case 140: YY_RULE_SETUP -#line 301 "glsl_lexer.lpp" +#line 321 "glsl_lexer.lpp" return SAMPLER2DRECT; YY_BREAK -case 135: +case 141: YY_RULE_SETUP -#line 302 "glsl_lexer.lpp" +#line 322 "glsl_lexer.lpp" RESERVED_WORD(999, SAMPLER3DRECT); YY_BREAK -case 136: +case 142: YY_RULE_SETUP -#line 303 "glsl_lexer.lpp" +#line 323 "glsl_lexer.lpp" return SAMPLER2DRECTSHADOW; YY_BREAK -case 137: +case 143: YY_RULE_SETUP -#line 304 "glsl_lexer.lpp" +#line 324 "glsl_lexer.lpp" RESERVED_WORD(999, SIZEOF); YY_BREAK -case 138: +case 144: YY_RULE_SETUP -#line 305 "glsl_lexer.lpp" +#line 325 "glsl_lexer.lpp" RESERVED_WORD(999, CAST); YY_BREAK -case 139: +case 145: YY_RULE_SETUP -#line 306 "glsl_lexer.lpp" +#line 326 "glsl_lexer.lpp" RESERVED_WORD(999, NAMESPACE); YY_BREAK -case 140: +case 146: YY_RULE_SETUP -#line 307 "glsl_lexer.lpp" +#line 327 "glsl_lexer.lpp" RESERVED_WORD(999, USING); YY_BREAK /* Additional reserved words in GLSL 1.20. */ -case 141: +case 147: YY_RULE_SETUP -#line 310 "glsl_lexer.lpp" +#line 330 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, LOWP); YY_BREAK -case 142: +case 148: YY_RULE_SETUP -#line 311 "glsl_lexer.lpp" +#line 331 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MEDIUMP); YY_BREAK -case 143: +case 149: YY_RULE_SETUP -#line 312 "glsl_lexer.lpp" +#line 332 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, HIGHP); YY_BREAK -case 144: +case 150: YY_RULE_SETUP -#line 313 "glsl_lexer.lpp" +#line 333 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, PRECISION); YY_BREAK /* Additional reserved words in GLSL 1.30. */ -case 145: +case 151: YY_RULE_SETUP -#line 316 "glsl_lexer.lpp" +#line 336 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, COMMON); YY_BREAK -case 146: +case 152: YY_RULE_SETUP -#line 317 "glsl_lexer.lpp" +#line 337 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, PARTITION); YY_BREAK -case 147: +case 153: YY_RULE_SETUP -#line 318 "glsl_lexer.lpp" +#line 338 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, ACTIVE); YY_BREAK -case 148: +case 154: YY_RULE_SETUP -#line 319 "glsl_lexer.lpp" +#line 339 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, SUPERP); YY_BREAK -case 149: +case 155: YY_RULE_SETUP -#line 320 "glsl_lexer.lpp" +#line 340 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, SAMPLERBUFFER); YY_BREAK -case 150: +case 156: YY_RULE_SETUP -#line 321 "glsl_lexer.lpp" +#line 341 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, FILTER); YY_BREAK -case 151: +case 157: YY_RULE_SETUP -#line 322 "glsl_lexer.lpp" +#line 342 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGE1D); YY_BREAK -case 152: +case 158: YY_RULE_SETUP -#line 323 "glsl_lexer.lpp" +#line 343 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGE2D); YY_BREAK -case 153: +case 159: YY_RULE_SETUP -#line 324 "glsl_lexer.lpp" +#line 344 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGE3D); YY_BREAK -case 154: +case 160: YY_RULE_SETUP -#line 325 "glsl_lexer.lpp" +#line 345 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGECUBE); YY_BREAK -case 155: +case 161: YY_RULE_SETUP -#line 326 "glsl_lexer.lpp" +#line 346 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IIMAGE1D); YY_BREAK -case 156: +case 162: YY_RULE_SETUP -#line 327 "glsl_lexer.lpp" +#line 347 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IIMAGE2D); YY_BREAK -case 157: +case 163: YY_RULE_SETUP -#line 328 "glsl_lexer.lpp" +#line 348 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IIMAGE3D); YY_BREAK -case 158: +case 164: YY_RULE_SETUP -#line 329 "glsl_lexer.lpp" +#line 349 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IIMAGECUBE); YY_BREAK -case 159: +case 165: YY_RULE_SETUP -#line 330 "glsl_lexer.lpp" +#line 350 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, UIMAGE1D); YY_BREAK -case 160: +case 166: YY_RULE_SETUP -#line 331 "glsl_lexer.lpp" +#line 351 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, UIMAGE2D); YY_BREAK -case 161: +case 167: YY_RULE_SETUP -#line 332 "glsl_lexer.lpp" +#line 352 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, UIMAGE3D); YY_BREAK -case 162: +case 168: YY_RULE_SETUP -#line 333 "glsl_lexer.lpp" +#line 353 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, UIMAGECUBE); YY_BREAK -case 163: +case 169: YY_RULE_SETUP -#line 334 "glsl_lexer.lpp" +#line 354 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGE1DARRAY); YY_BREAK -case 164: +case 170: YY_RULE_SETUP -#line 335 "glsl_lexer.lpp" +#line 355 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGE2DARRAY); YY_BREAK -case 165: +case 171: YY_RULE_SETUP -#line 336 "glsl_lexer.lpp" +#line 356 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IIMAGE1DARRAY); YY_BREAK -case 166: +case 172: YY_RULE_SETUP -#line 337 "glsl_lexer.lpp" +#line 357 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IIMAGE2DARRAY); YY_BREAK -case 167: +case 173: YY_RULE_SETUP -#line 338 "glsl_lexer.lpp" +#line 358 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, UIMAGE1DARRAY); YY_BREAK -case 168: +case 174: YY_RULE_SETUP -#line 339 "glsl_lexer.lpp" +#line 359 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, UIMAGE2DARRAY); YY_BREAK -case 169: +case 175: YY_RULE_SETUP -#line 340 "glsl_lexer.lpp" +#line 360 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGE1DSHADOW); YY_BREAK -case 170: +case 176: YY_RULE_SETUP -#line 341 "glsl_lexer.lpp" +#line 361 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGE2DSHADOW); YY_BREAK -case 171: +case 177: YY_RULE_SETUP -#line 342 "glsl_lexer.lpp" +#line 362 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IMAGEBUFFER); YY_BREAK -case 172: +case 178: YY_RULE_SETUP -#line 343 "glsl_lexer.lpp" +#line 363 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, IIMAGEBUFFER); YY_BREAK -case 173: +case 179: YY_RULE_SETUP -#line 344 "glsl_lexer.lpp" +#line 364 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, UIMAGEBUFFER); YY_BREAK -case 174: +case 180: YY_RULE_SETUP -#line 345 "glsl_lexer.lpp" +#line 365 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(130, ROW_MAJOR); YY_BREAK -case 175: +case 181: YY_RULE_SETUP -#line 347 "glsl_lexer.lpp" +#line 367 "glsl_lexer.lpp" { struct _mesa_glsl_parse_state *state = yyextra; void *ctx = state; @@ -2245,19 +2320,20 @@ YY_RULE_SETUP return IDENTIFIER; } YY_BREAK -case 176: +case 182: YY_RULE_SETUP -#line 354 "glsl_lexer.lpp" +#line 374 "glsl_lexer.lpp" { return yytext[0]; } YY_BREAK -case 177: +case 183: YY_RULE_SETUP -#line 356 "glsl_lexer.lpp" +#line 376 "glsl_lexer.lpp" ECHO; YY_BREAK -#line 2259 "glsl_lexer.cpp" +#line 2334 "glsl_lexer.cpp" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(PP): +case YY_STATE_EOF(PRAGMA): yyterminate(); case YY_END_OF_BUFFER: @@ -2552,7 +2628,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 668 ) + if ( yy_current_state >= 708 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2581,11 +2657,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 668 ) + if ( yy_current_state >= 708 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 667); + yy_is_jam = (yy_current_state == 707); return yy_is_jam ? 0 : yy_current_state; } @@ -3397,7 +3473,7 @@ void _mesa_glsl_free (void * ptr , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#line 356 "glsl_lexer.lpp" +#line 376 "glsl_lexer.lpp" diff --git a/src/glsl/glsl_parser.cpp b/src/glsl/glsl_parser.cpp index 188d128526..e36bb03c43 100644 --- a/src/glsl/glsl_parser.cpp +++ b/src/glsl/glsl_parser.cpp @@ -1,9 +1,10 @@ -/* A Bison parser, made by GNU Bison 2.4.3. */ + +/* A Bison parser, made by GNU Bison 2.4.1. */ /* Skeleton implementation for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -45,7 +46,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.3" +#define YYBISON_VERSION "2.4.1" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -113,7 +114,7 @@ /* Line 189 of yacc.c */ -#line 117 "glsl_parser.cpp" +#line 118 "glsl_parser.cpp" /* Enabling traces. */ #ifndef YYDEBUG @@ -249,82 +250,85 @@ VERSION = 364, EXTENSION = 365, LINE = 366, - PRAGMA = 367, - COLON = 368, - EOL = 369, - INTERFACE = 370, - OUTPUT = 371, - LAYOUT_TOK = 372, - ASM = 373, - CLASS = 374, - UNION = 375, - ENUM = 376, - TYPEDEF = 377, - TEMPLATE = 378, - THIS = 379, - PACKED_TOK = 380, - GOTO = 381, - INLINE_TOK = 382, - NOINLINE = 383, - VOLATILE = 384, - PUBLIC_TOK = 385, - STATIC = 386, - EXTERN = 387, - EXTERNAL = 388, - LONG_TOK = 389, - SHORT_TOK = 390, - DOUBLE_TOK = 391, - HALF = 392, - FIXED_TOK = 393, - UNSIGNED = 394, - INPUT_TOK = 395, - OUPTUT = 396, - HVEC2 = 397, - HVEC3 = 398, - HVEC4 = 399, - DVEC2 = 400, - DVEC3 = 401, - DVEC4 = 402, - FVEC2 = 403, - FVEC3 = 404, - FVEC4 = 405, - SAMPLER2DRECT = 406, - SAMPLER3DRECT = 407, - SAMPLER2DRECTSHADOW = 408, - SIZEOF = 409, - CAST = 410, - NAMESPACE = 411, - USING = 412, - ERROR_TOK = 413, - COMMON = 414, - PARTITION = 415, - ACTIVE = 416, - SAMPLERBUFFER = 417, - FILTER = 418, - IMAGE1D = 419, - IMAGE2D = 420, - IMAGE3D = 421, - IMAGECUBE = 422, - IMAGE1DARRAY = 423, - IMAGE2DARRAY = 424, - IIMAGE1D = 425, - IIMAGE2D = 426, - IIMAGE3D = 427, - IIMAGECUBE = 428, - IIMAGE1DARRAY = 429, - IIMAGE2DARRAY = 430, - UIMAGE1D = 431, - UIMAGE2D = 432, - UIMAGE3D = 433, - UIMAGECUBE = 434, - UIMAGE1DARRAY = 435, - UIMAGE2DARRAY = 436, - IMAGE1DSHADOW = 437, - IMAGE2DSHADOW = 438, - IMAGEBUFFER = 439, - IIMAGEBUFFER = 440, - UIMAGEBUFFER = 441, - ROW_MAJOR = 442 + COLON = 367, + EOL = 368, + INTERFACE = 369, + OUTPUT = 370, + PRAGMA_DEBUG_ON = 371, + PRAGMA_DEBUG_OFF = 372, + PRAGMA_OPTIMIZE_ON = 373, + PRAGMA_OPTIMIZE_OFF = 374, + LAYOUT_TOK = 375, + ASM = 376, + CLASS = 377, + UNION = 378, + ENUM = 379, + TYPEDEF = 380, + TEMPLATE = 381, + THIS = 382, + PACKED_TOK = 383, + GOTO = 384, + INLINE_TOK = 385, + NOINLINE = 386, + VOLATILE = 387, + PUBLIC_TOK = 388, + STATIC = 389, + EXTERN = 390, + EXTERNAL = 391, + LONG_TOK = 392, + SHORT_TOK = 393, + DOUBLE_TOK = 394, + HALF = 395, + FIXED_TOK = 396, + UNSIGNED = 397, + INPUT_TOK = 398, + OUPTUT = 399, + HVEC2 = 400, + HVEC3 = 401, + HVEC4 = 402, + DVEC2 = 403, + DVEC3 = 404, + DVEC4 = 405, + FVEC2 = 406, + FVEC3 = 407, + FVEC4 = 408, + SAMPLER2DRECT = 409, + SAMPLER3DRECT = 410, + SAMPLER2DRECTSHADOW = 411, + SIZEOF = 412, + CAST = 413, + NAMESPACE = 414, + USING = 415, + ERROR_TOK = 416, + COMMON = 417, + PARTITION = 418, + ACTIVE = 419, + SAMPLERBUFFER = 420, + FILTER = 421, + IMAGE1D = 422, + IMAGE2D = 423, + IMAGE3D = 424, + IMAGECUBE = 425, + IMAGE1DARRAY = 426, + IMAGE2DARRAY = 427, + IIMAGE1D = 428, + IIMAGE2D = 429, + IIMAGE3D = 430, + IIMAGECUBE = 431, + IIMAGE1DARRAY = 432, + IIMAGE2DARRAY = 433, + UIMAGE1D = 434, + UIMAGE2D = 435, + UIMAGE3D = 436, + UIMAGECUBE = 437, + UIMAGE1DARRAY = 438, + UIMAGE2DARRAY = 439, + IMAGE1DSHADOW = 440, + IMAGE2DSHADOW = 441, + IMAGEBUFFER = 442, + IIMAGEBUFFER = 443, + UIMAGEBUFFER = 444, + ROW_MAJOR = 445 }; #endif @@ -366,7 +370,7 @@ typedef union YYSTYPE /* Line 214 of yacc.c */ -#line 370 "glsl_parser.cpp" +#line 374 "glsl_parser.cpp" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -391,7 +395,7 @@ typedef struct YYLTYPE /* Line 264 of yacc.c */ -#line 395 "glsl_parser.cpp" +#line 399 "glsl_parser.cpp" #ifdef short # undef short @@ -441,7 +445,7 @@ typedef short int yytype_int16; #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #ifndef YY_ -# if defined YYENABLE_NLS && YYENABLE_NLS +# if YYENABLE_NLS # if ENABLE_NLS # include <libintl.h> /* INFRINGES ON USER NAME SPACE */ # define YY_(msgid) dgettext ("bison-runtime", msgid) @@ -608,20 +612,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 4096 +#define YYLAST 4115 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 212 +#define YYNTOKENS 215 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 89 +#define YYNNTS 90 /* YYNRULES -- Number of rules. */ -#define YYNRULES 273 +#define YYNRULES 278 /* YYNRULES -- Number of states. */ -#define YYNSTATES 410 +#define YYNSTATES 419 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 442 +#define YYMAXUTOK 445 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -632,16 +636,16 @@ static const yytype_uint8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 196, 2, 2, 2, 200, 203, 2, - 188, 189, 198, 194, 193, 195, 192, 199, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 207, 209, - 201, 208, 202, 206, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 199, 2, 2, 2, 203, 206, 2, + 191, 192, 201, 197, 196, 198, 195, 202, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 210, 212, + 204, 211, 205, 209, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 190, 2, 191, 204, 2, 2, 2, 2, 2, + 2, 193, 2, 194, 207, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 210, 205, 211, 197, 2, 2, 2, + 2, 2, 2, 213, 208, 214, 200, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -673,7 +677,7 @@ static const yytype_uint8 yytranslate[] = 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187 + 185, 186, 187, 188, 189, 190 }; #if YYDEBUG @@ -681,151 +685,153 @@ static const yytype_uint8 yytranslate[] = YYRHS. */ static const yytype_uint16 yyprhs[] = { - 0, 0, 3, 4, 9, 10, 14, 15, 18, 24, - 26, 29, 31, 33, 35, 37, 39, 41, 45, 47, - 52, 54, 58, 61, 64, 66, 68, 70, 74, 77, - 80, 83, 85, 88, 92, 95, 97, 99, 101, 103, - 106, 109, 112, 114, 116, 118, 120, 122, 126, 130, - 134, 136, 140, 144, 146, 150, 154, 156, 160, 164, - 168, 172, 174, 178, 182, 184, 188, 190, 194, 196, - 200, 202, 206, 208, 212, 214, 218, 220, 226, 228, - 232, 234, 236, 238, 240, 242, 244, 246, 248, 250, - 252, 254, 256, 260, 262, 265, 268, 273, 276, 278, - 280, 283, 287, 291, 294, 300, 304, 307, 311, 314, - 315, 317, 319, 321, 323, 325, 329, 335, 342, 350, - 359, 365, 367, 370, 375, 381, 388, 396, 401, 404, - 406, 409, 410, 412, 417, 419, 423, 425, 427, 429, - 431, 433, 435, 438, 441, 443, 445, 448, 451, 454, - 456, 459, 462, 464, 466, 469, 471, 475, 480, 482, - 484, 486, 488, 490, 492, 494, 496, 498, 500, 502, - 504, 506, 508, 510, 512, 514, 516, 518, 520, 522, - 524, 526, 528, 530, 532, 534, 536, 538, 540, 542, - 544, 546, 548, 550, 552, 554, 556, 558, 560, 562, - 564, 566, 568, 570, 572, 574, 576, 578, 580, 582, - 584, 586, 588, 590, 592, 594, 600, 605, 607, 610, - 614, 616, 620, 622, 627, 629, 631, 633, 635, 637, - 639, 641, 643, 645, 647, 649, 651, 653, 655, 658, - 662, 664, 666, 669, 673, 675, 678, 680, 683, 691, - 697, 703, 711, 713, 718, 724, 728, 731, 737, 745, - 752, 754, 756, 758, 759, 762, 766, 769, 772, 775, - 779, 782, 784, 786 + 0, 0, 3, 4, 9, 10, 14, 17, 20, 23, + 26, 27, 30, 36, 38, 41, 43, 45, 47, 49, + 51, 53, 57, 59, 64, 66, 70, 73, 76, 78, + 80, 82, 86, 89, 92, 95, 97, 100, 104, 107, + 109, 111, 113, 115, 118, 121, 124, 126, 128, 130, + 132, 134, 138, 142, 146, 148, 152, 156, 158, 162, + 166, 168, 172, 176, 180, 184, 186, 190, 194, 196, + 200, 202, 206, 208, 212, 214, 218, 220, 224, 226, + 230, 232, 238, 240, 244, 246, 248, 250, 252, 254, + 256, 258, 260, 262, 264, 266, 268, 272, 274, 277, + 280, 285, 288, 290, 292, 295, 299, 303, 306, 312, + 316, 319, 323, 326, 327, 329, 331, 333, 335, 337, + 341, 347, 354, 362, 371, 377, 379, 382, 387, 393, + 400, 408, 413, 416, 418, 421, 422, 424, 429, 431, + 435, 437, 439, 441, 443, 445, 447, 450, 453, 455, + 457, 460, 463, 466, 468, 471, 474, 476, 478, 481, + 483, 487, 492, 494, 496, 498, 500, 502, 504, 506, + 508, 510, 512, 514, 516, 518, 520, 522, 524, 526, + 528, 530, 532, 534, 536, 538, 540, 542, 544, 546, + 548, 550, 552, 554, 556, 558, 560, 562, 564, 566, + 568, 570, 572, 574, 576, 578, 580, 582, 584, 586, + 588, 590, 592, 594, 596, 598, 600, 602, 604, 606, + 612, 617, 619, 622, 626, 628, 632, 634, 639, 641, + 643, 645, 647, 649, 651, 653, 655, 657, 659, 661, + 663, 665, 667, 670, 674, 676, 678, 681, 685, 687, + 690, 692, 695, 703, 709, 715, 723, 725, 730, 736, + 740, 743, 749, 757, 764, 766, 768, 770, 771, 774, + 778, 781, 784, 787, 791, 794, 796, 798, 800 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 213, 0, -1, -1, 215, 216, 214, 218, -1, -1, - 109, 78, 114, -1, -1, 216, 217, -1, 110, 76, - 113, 76, 114, -1, 299, -1, 218, 299, -1, 76, - -1, 219, -1, 78, -1, 79, -1, 77, -1, 80, - -1, 188, 246, 189, -1, 220, -1, 221, 190, 222, - 191, -1, 223, -1, 221, 192, 76, -1, 221, 84, - -1, 221, 85, -1, 246, -1, 224, -1, 225, -1, - 221, 192, 225, -1, 227, 189, -1, 226, 189, -1, - 228, 74, -1, 228, -1, 228, 244, -1, 227, 193, - 244, -1, 229, 188, -1, 268, -1, 76, -1, 81, - -1, 221, -1, 84, 230, -1, 85, 230, -1, 231, - 230, -1, 194, -1, 195, -1, 196, -1, 197, -1, - 230, -1, 232, 198, 230, -1, 232, 199, 230, -1, - 232, 200, 230, -1, 232, -1, 233, 194, 232, -1, - 233, 195, 232, -1, 233, -1, 234, 82, 233, -1, - 234, 83, 233, -1, 234, -1, 235, 201, 234, -1, - 235, 202, 234, -1, 235, 86, 234, -1, 235, 87, - 234, -1, 235, -1, 236, 88, 235, -1, 236, 89, - 235, -1, 236, -1, 237, 203, 236, -1, 237, -1, - 238, 204, 237, -1, 238, -1, 239, 205, 238, -1, - 239, -1, 240, 90, 239, -1, 240, -1, 241, 92, - 240, -1, 241, -1, 242, 91, 241, -1, 242, -1, - 242, 206, 246, 207, 244, -1, 243, -1, 230, 245, - 244, -1, 208, -1, 93, -1, 94, -1, 96, -1, - 95, -1, 102, -1, 97, -1, 98, -1, 99, -1, - 100, -1, 101, -1, 244, -1, 246, 193, 244, -1, - 243, -1, 249, 209, -1, 257, 209, -1, 108, 272, - 269, 209, -1, 250, 189, -1, 252, -1, 251, -1, - 252, 254, -1, 251, 193, 254, -1, 259, 76, 188, - -1, 268, 76, -1, 268, 76, 190, 247, 191, -1, - 265, 255, 253, -1, 255, 253, -1, 265, 255, 256, - -1, 255, 256, -1, -1, 33, -1, 34, -1, 35, - -1, 268, -1, 258, -1, 257, 193, 76, -1, 257, - 193, 76, 190, 191, -1, 257, 193, 76, 190, 247, - 191, -1, 257, 193, 76, 190, 191, 208, 278, -1, - 257, 193, 76, 190, 247, 191, 208, 278, -1, 257, - 193, 76, 208, 278, -1, 259, -1, 259, 76, -1, - 259, 76, 190, 191, -1, 259, 76, 190, 247, 191, - -1, 259, 76, 190, 191, 208, 278, -1, 259, 76, - 190, 247, 191, 208, 278, -1, 259, 76, 208, 278, - -1, 103, 76, -1, 268, -1, 266, 268, -1, -1, - 261, -1, 117, 188, 262, 189, -1, 263, -1, 262, - 193, 263, -1, 76, -1, 40, -1, 39, -1, 38, - -1, 4, -1, 267, -1, 264, 266, -1, 103, 266, - -1, 4, -1, 3, -1, 260, 37, -1, 32, 37, - -1, 260, 33, -1, 34, -1, 32, 33, -1, 32, - 34, -1, 36, -1, 269, -1, 272, 269, -1, 270, - -1, 270, 190, 191, -1, 270, 190, 247, 191, -1, - 271, -1, 273, -1, 76, -1, 74, -1, 6, -1, - 7, -1, 8, -1, 5, -1, 29, -1, 30, -1, - 31, -1, 20, -1, 21, -1, 22, -1, 23, -1, - 24, -1, 25, -1, 26, -1, 27, -1, 28, -1, - 41, -1, 42, -1, 43, -1, 44, -1, 45, -1, - 46, -1, 47, -1, 48, -1, 49, -1, 50, -1, - 51, -1, 151, -1, 52, -1, 53, -1, 54, -1, - 55, -1, 153, -1, 56, -1, 57, -1, 58, -1, - 59, -1, 60, -1, 61, -1, 62, -1, 63, -1, - 64, -1, 65, -1, 66, -1, 67, -1, 68, -1, - 69, -1, 70, -1, 71, -1, 72, -1, 106, -1, - 105, -1, 104, -1, 73, 76, 210, 274, 211, -1, - 73, 210, 274, 211, -1, 275, -1, 274, 275, -1, - 268, 276, 209, -1, 277, -1, 276, 193, 277, -1, - 76, -1, 76, 190, 247, 191, -1, 244, -1, 248, - -1, 281, -1, 282, -1, 284, -1, 283, -1, 290, - -1, 279, -1, 288, -1, 289, -1, 292, -1, 293, - -1, 294, -1, 298, -1, 210, 211, -1, 210, 287, - 211, -1, 286, -1, 283, -1, 210, 211, -1, 210, - 287, 211, -1, 280, -1, 287, 280, -1, 209, -1, - 246, 209, -1, 14, 188, 246, 189, 281, 12, 281, - -1, 14, 188, 246, 189, 281, -1, 14, 188, 246, - 189, 282, -1, 14, 188, 246, 189, 281, 12, 282, - -1, 246, -1, 259, 76, 208, 278, -1, 17, 188, - 246, 189, 284, -1, 18, 246, 207, -1, 19, 207, - -1, 75, 188, 291, 189, 285, -1, 11, 280, 75, - 188, 246, 189, 209, -1, 13, 188, 295, 297, 189, - 285, -1, 288, -1, 279, -1, 291, -1, -1, 296, - 209, -1, 296, 209, 246, -1, 10, 209, -1, 9, - 209, -1, 16, 209, -1, 16, 246, 209, -1, 15, - 209, -1, 300, -1, 248, -1, 249, 286, -1 + 216, 0, -1, -1, 218, 220, 217, 222, -1, -1, + 109, 78, 113, -1, 116, 113, -1, 117, 113, -1, + 118, 113, -1, 119, 113, -1, -1, 220, 221, -1, + 110, 76, 112, 76, 113, -1, 303, -1, 222, 303, + -1, 76, -1, 223, -1, 78, -1, 79, -1, 77, + -1, 80, -1, 191, 250, 192, -1, 224, -1, 225, + 193, 226, 194, -1, 227, -1, 225, 195, 76, -1, + 225, 84, -1, 225, 85, -1, 250, -1, 228, -1, + 229, -1, 225, 195, 229, -1, 231, 192, -1, 230, + 192, -1, 232, 74, -1, 232, -1, 232, 248, -1, + 231, 196, 248, -1, 233, 191, -1, 272, -1, 76, + -1, 81, -1, 225, -1, 84, 234, -1, 85, 234, + -1, 235, 234, -1, 197, -1, 198, -1, 199, -1, + 200, -1, 234, -1, 236, 201, 234, -1, 236, 202, + 234, -1, 236, 203, 234, -1, 236, -1, 237, 197, + 236, -1, 237, 198, 236, -1, 237, -1, 238, 82, + 237, -1, 238, 83, 237, -1, 238, -1, 239, 204, + 238, -1, 239, 205, 238, -1, 239, 86, 238, -1, + 239, 87, 238, -1, 239, -1, 240, 88, 239, -1, + 240, 89, 239, -1, 240, -1, 241, 206, 240, -1, + 241, -1, 242, 207, 241, -1, 242, -1, 243, 208, + 242, -1, 243, -1, 244, 90, 243, -1, 244, -1, + 245, 92, 244, -1, 245, -1, 246, 91, 245, -1, + 246, -1, 246, 209, 250, 210, 248, -1, 247, -1, + 234, 249, 248, -1, 211, -1, 93, -1, 94, -1, + 96, -1, 95, -1, 102, -1, 97, -1, 98, -1, + 99, -1, 100, -1, 101, -1, 248, -1, 250, 196, + 248, -1, 247, -1, 253, 212, -1, 261, 212, -1, + 108, 276, 273, 212, -1, 254, 192, -1, 256, -1, + 255, -1, 256, 258, -1, 255, 196, 258, -1, 263, + 76, 191, -1, 272, 76, -1, 272, 76, 193, 251, + 194, -1, 269, 259, 257, -1, 259, 257, -1, 269, + 259, 260, -1, 259, 260, -1, -1, 33, -1, 34, + -1, 35, -1, 272, -1, 262, -1, 261, 196, 76, + -1, 261, 196, 76, 193, 194, -1, 261, 196, 76, + 193, 251, 194, -1, 261, 196, 76, 193, 194, 211, + 282, -1, 261, 196, 76, 193, 251, 194, 211, 282, + -1, 261, 196, 76, 211, 282, -1, 263, -1, 263, + 76, -1, 263, 76, 193, 194, -1, 263, 76, 193, + 251, 194, -1, 263, 76, 193, 194, 211, 282, -1, + 263, 76, 193, 251, 194, 211, 282, -1, 263, 76, + 211, 282, -1, 103, 76, -1, 272, -1, 270, 272, + -1, -1, 265, -1, 120, 191, 266, 192, -1, 267, + -1, 266, 196, 267, -1, 76, -1, 40, -1, 39, + -1, 38, -1, 4, -1, 271, -1, 268, 270, -1, + 103, 270, -1, 4, -1, 3, -1, 264, 37, -1, + 32, 37, -1, 264, 33, -1, 34, -1, 32, 33, + -1, 32, 34, -1, 36, -1, 273, -1, 276, 273, + -1, 274, -1, 274, 193, 194, -1, 274, 193, 251, + 194, -1, 275, -1, 277, -1, 76, -1, 74, -1, + 6, -1, 7, -1, 8, -1, 5, -1, 29, -1, + 30, -1, 31, -1, 20, -1, 21, -1, 22, -1, + 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, + 28, -1, 41, -1, 42, -1, 43, -1, 44, -1, + 45, -1, 46, -1, 47, -1, 48, -1, 49, -1, + 50, -1, 51, -1, 154, -1, 52, -1, 53, -1, + 54, -1, 55, -1, 156, -1, 56, -1, 57, -1, + 58, -1, 59, -1, 60, -1, 61, -1, 62, -1, + 63, -1, 64, -1, 65, -1, 66, -1, 67, -1, + 68, -1, 69, -1, 70, -1, 71, -1, 72, -1, + 106, -1, 105, -1, 104, -1, 73, 76, 213, 278, + 214, -1, 73, 213, 278, 214, -1, 279, -1, 278, + 279, -1, 272, 280, 212, -1, 281, -1, 280, 196, + 281, -1, 76, -1, 76, 193, 251, 194, -1, 248, + -1, 252, -1, 285, -1, 286, -1, 288, -1, 287, + -1, 294, -1, 283, -1, 292, -1, 293, -1, 296, + -1, 297, -1, 298, -1, 302, -1, 213, 214, -1, + 213, 291, 214, -1, 290, -1, 287, -1, 213, 214, + -1, 213, 291, 214, -1, 284, -1, 291, 284, -1, + 212, -1, 250, 212, -1, 14, 191, 250, 192, 285, + 12, 285, -1, 14, 191, 250, 192, 285, -1, 14, + 191, 250, 192, 286, -1, 14, 191, 250, 192, 285, + 12, 286, -1, 250, -1, 263, 76, 211, 282, -1, + 17, 191, 250, 192, 288, -1, 18, 250, 210, -1, + 19, 210, -1, 75, 191, 295, 192, 289, -1, 11, + 284, 75, 191, 250, 192, 212, -1, 13, 191, 299, + 301, 192, 289, -1, 292, -1, 283, -1, 295, -1, + -1, 300, 212, -1, 300, 212, 250, -1, 10, 212, + -1, 9, 212, -1, 16, 212, -1, 16, 250, 212, + -1, 15, 212, -1, 304, -1, 252, -1, 219, -1, + 253, 290, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 209, 209, 208, 217, 221, 239, 241, 245, 254, - 262, 273, 277, 284, 291, 298, 305, 312, 319, 320, - 326, 330, 337, 343, 352, 356, 360, 361, 370, 371, - 375, 376, 380, 386, 398, 402, 408, 415, 426, 427, - 433, 439, 449, 450, 451, 452, 456, 457, 463, 469, - 478, 479, 485, 494, 495, 501, 510, 511, 517, 523, - 529, 538, 539, 545, 554, 555, 564, 565, 574, 575, - 584, 585, 594, 595, 604, 605, 614, 615, 624, 625, - 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, - 644, 648, 652, 668, 672, 676, 680, 694, 698, 699, - 703, 708, 716, 727, 737, 752, 759, 764, 775, 787, - 788, 789, 790, 794, 798, 799, 808, 817, 826, 835, - 844, 857, 868, 877, 886, 895, 904, 913, 922, 936, - 943, 954, 955, 959, 966, 967, 974, 1008, 1009, 1010, - 1014, 1018, 1019, 1023, 1031, 1032, 1033, 1034, 1035, 1036, - 1037, 1038, 1039, 1043, 1044, 1052, 1053, 1059, 1068, 1074, - 1080, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, - 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, - 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, - 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, - 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, - 1138, 1139, 1143, 1154, 1165, 1179, 1185, 1194, 1199, 1207, - 1222, 1227, 1235, 1241, 1250, 1254, 1260, 1261, 1265, 1266, - 1270, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1284, 1290, - 1299, 1300, 1304, 1310, 1319, 1329, 1341, 1347, 1356, 1365, - 1371, 1377, 1386, 1390, 1404, 1408, 1409, 1413, 1420, 1427, - 1437, 1438, 1442, 1444, 1450, 1455, 1464, 1470, 1476, 1482, - 1488, 1497, 1498, 1502 + 0, 211, 211, 210, 219, 223, 242, 243, 244, 245, + 248, 250, 254, 263, 271, 282, 286, 293, 300, 307, + 314, 321, 328, 329, 335, 339, 346, 352, 361, 365, + 369, 370, 379, 380, 384, 385, 389, 395, 407, 411, + 417, 424, 435, 436, 442, 448, 458, 459, 460, 461, + 465, 466, 472, 478, 487, 488, 494, 503, 504, 510, + 519, 520, 526, 532, 538, 547, 548, 554, 563, 564, + 573, 574, 583, 584, 593, 594, 603, 604, 613, 614, + 623, 624, 633, 634, 643, 644, 645, 646, 647, 648, + 649, 650, 651, 652, 653, 657, 661, 677, 681, 685, + 689, 703, 707, 708, 712, 717, 725, 736, 746, 761, + 768, 773, 784, 796, 797, 798, 799, 803, 807, 808, + 817, 826, 835, 844, 853, 866, 877, 886, 895, 904, + 913, 922, 931, 945, 952, 963, 964, 968, 975, 976, + 983, 1017, 1018, 1019, 1023, 1027, 1028, 1032, 1040, 1041, + 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1052, 1053, 1061, + 1062, 1068, 1077, 1083, 1089, 1098, 1099, 1100, 1101, 1102, + 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, + 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, + 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, + 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, + 1143, 1144, 1145, 1146, 1147, 1148, 1152, 1163, 1174, 1188, + 1194, 1203, 1208, 1216, 1231, 1236, 1244, 1250, 1259, 1263, + 1269, 1270, 1274, 1275, 1279, 1283, 1284, 1285, 1286, 1287, + 1288, 1289, 1293, 1299, 1308, 1309, 1313, 1319, 1328, 1338, + 1350, 1356, 1365, 1374, 1380, 1386, 1395, 1399, 1413, 1417, + 1418, 1422, 1429, 1436, 1446, 1447, 1451, 1453, 1459, 1464, + 1473, 1479, 1485, 1491, 1497, 1506, 1507, 1508, 1512 }; #endif @@ -854,23 +860,25 @@ static const char *const yytname[] = "DIV_ASSIGN", "ADD_ASSIGN", "MOD_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN", "SUB_ASSIGN", "INVARIANT", "LOWP", "MEDIUMP", "HIGHP", "SUPERP", "PRECISION", "VERSION", - "EXTENSION", "LINE", "PRAGMA", "COLON", "EOL", "INTERFACE", "OUTPUT", - "LAYOUT_TOK", "ASM", "CLASS", "UNION", "ENUM", "TYPEDEF", "TEMPLATE", - "THIS", "PACKED_TOK", "GOTO", "INLINE_TOK", "NOINLINE", "VOLATILE", - "PUBLIC_TOK", "STATIC", "EXTERN", "EXTERNAL", "LONG_TOK", "SHORT_TOK", - "DOUBLE_TOK", "HALF", "FIXED_TOK", "UNSIGNED", "INPUT_TOK", "OUPTUT", - "HVEC2", "HVEC3", "HVEC4", "DVEC2", "DVEC3", "DVEC4", "FVEC2", "FVEC3", - "FVEC4", "SAMPLER2DRECT", "SAMPLER3DRECT", "SAMPLER2DRECTSHADOW", - "SIZEOF", "CAST", "NAMESPACE", "USING", "ERROR_TOK", "COMMON", - "PARTITION", "ACTIVE", "SAMPLERBUFFER", "FILTER", "IMAGE1D", "IMAGE2D", - "IMAGE3D", "IMAGECUBE", "IMAGE1DARRAY", "IMAGE2DARRAY", "IIMAGE1D", - "IIMAGE2D", "IIMAGE3D", "IIMAGECUBE", "IIMAGE1DARRAY", "IIMAGE2DARRAY", - "UIMAGE1D", "UIMAGE2D", "UIMAGE3D", "UIMAGECUBE", "UIMAGE1DARRAY", - "UIMAGE2DARRAY", "IMAGE1DSHADOW", "IMAGE2DSHADOW", "IMAGEBUFFER", - "IIMAGEBUFFER", "UIMAGEBUFFER", "ROW_MAJOR", "'('", "')'", "'['", "']'", - "'.'", "','", "'+'", "'-'", "'!'", "'~'", "'*'", "'/'", "'%'", "'<'", - "'>'", "'&'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'", "'}'", - "$accept", "translation_unit", "$@1", "version_statement", + "EXTENSION", "LINE", "COLON", "EOL", "INTERFACE", "OUTPUT", + "PRAGMA_DEBUG_ON", "PRAGMA_DEBUG_OFF", "PRAGMA_OPTIMIZE_ON", + "PRAGMA_OPTIMIZE_OFF", "LAYOUT_TOK", "ASM", "CLASS", "UNION", "ENUM", + "TYPEDEF", "TEMPLATE", "THIS", "PACKED_TOK", "GOTO", "INLINE_TOK", + "NOINLINE", "VOLATILE", "PUBLIC_TOK", "STATIC", "EXTERN", "EXTERNAL", + "LONG_TOK", "SHORT_TOK", "DOUBLE_TOK", "HALF", "FIXED_TOK", "UNSIGNED", + "INPUT_TOK", "OUPTUT", "HVEC2", "HVEC3", "HVEC4", "DVEC2", "DVEC3", + "DVEC4", "FVEC2", "FVEC3", "FVEC4", "SAMPLER2DRECT", "SAMPLER3DRECT", + "SAMPLER2DRECTSHADOW", "SIZEOF", "CAST", "NAMESPACE", "USING", + "ERROR_TOK", "COMMON", "PARTITION", "ACTIVE", "SAMPLERBUFFER", "FILTER", + "IMAGE1D", "IMAGE2D", "IMAGE3D", "IMAGECUBE", "IMAGE1DARRAY", + "IMAGE2DARRAY", "IIMAGE1D", "IIMAGE2D", "IIMAGE3D", "IIMAGECUBE", + "IIMAGE1DARRAY", "IIMAGE2DARRAY", "UIMAGE1D", "UIMAGE2D", "UIMAGE3D", + "UIMAGECUBE", "UIMAGE1DARRAY", "UIMAGE2DARRAY", "IMAGE1DSHADOW", + "IMAGE2DSHADOW", "IMAGEBUFFER", "IIMAGEBUFFER", "UIMAGEBUFFER", + "ROW_MAJOR", "'('", "')'", "'['", "']'", "'.'", "','", "'+'", "'-'", + "'!'", "'~'", "'*'", "'/'", "'%'", "'<'", "'>'", "'&'", "'^'", "'|'", + "'?'", "':'", "'='", "';'", "'{'", "'}'", "$accept", "translation_unit", + "$@1", "version_statement", "pragma_statement", "extension_statement_list", "extension_statement", "external_declaration_list", "variable_identifier", "primary_expression", "postfix_expression", "integer_expression", "function_call", @@ -930,77 +938,77 @@ static const yytype_uint16 yytoknum[] = 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 40, 41, - 91, 93, 46, 44, 43, 45, 33, 126, 42, 47, - 37, 60, 62, 38, 94, 124, 63, 58, 61, 59, - 123, 125 + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 40, 41, 91, 93, 46, 44, 43, 45, 33, + 126, 42, 47, 37, 60, 62, 38, 94, 124, 63, + 58, 61, 59, 123, 125 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 212, 214, 213, 215, 215, 216, 216, 217, 218, - 218, 219, 220, 220, 220, 220, 220, 220, 221, 221, - 221, 221, 221, 221, 222, 223, 224, 224, 225, 225, - 226, 226, 227, 227, 228, 229, 229, 229, 230, 230, - 230, 230, 231, 231, 231, 231, 232, 232, 232, 232, - 233, 233, 233, 234, 234, 234, 235, 235, 235, 235, - 235, 236, 236, 236, 237, 237, 238, 238, 239, 239, - 240, 240, 241, 241, 242, 242, 243, 243, 244, 244, - 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, - 245, 246, 246, 247, 248, 248, 248, 249, 250, 250, - 251, 251, 252, 253, 253, 254, 254, 254, 254, 255, - 255, 255, 255, 256, 257, 257, 257, 257, 257, 257, - 257, 258, 258, 258, 258, 258, 258, 258, 258, 259, - 259, 260, 260, 261, 262, 262, 263, 264, 264, 264, - 265, 266, 266, 266, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 268, 268, 269, 269, 269, 270, 270, - 270, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 272, 272, 272, 273, 273, 274, 274, 275, - 276, 276, 277, 277, 278, 279, 280, 280, 281, 281, - 282, 283, 283, 283, 283, 283, 283, 283, 284, 284, - 285, 285, 286, 286, 287, 287, 288, 288, 289, 290, - 290, 290, 291, 291, 292, 293, 293, 294, 294, 294, - 295, 295, 296, 296, 297, 297, 298, 298, 298, 298, - 298, 299, 299, 300 + 0, 215, 217, 216, 218, 218, 219, 219, 219, 219, + 220, 220, 221, 222, 222, 223, 224, 224, 224, 224, + 224, 224, 225, 225, 225, 225, 225, 225, 226, 227, + 228, 228, 229, 229, 230, 230, 231, 231, 232, 233, + 233, 233, 234, 234, 234, 234, 235, 235, 235, 235, + 236, 236, 236, 236, 237, 237, 237, 238, 238, 238, + 239, 239, 239, 239, 239, 240, 240, 240, 241, 241, + 242, 242, 243, 243, 244, 244, 245, 245, 246, 246, + 247, 247, 248, 248, 249, 249, 249, 249, 249, 249, + 249, 249, 249, 249, 249, 250, 250, 251, 252, 252, + 252, 253, 254, 254, 255, 255, 256, 257, 257, 258, + 258, 258, 258, 259, 259, 259, 259, 260, 261, 261, + 261, 261, 261, 261, 261, 262, 262, 262, 262, 262, + 262, 262, 262, 263, 263, 264, 264, 265, 266, 266, + 267, 268, 268, 268, 269, 270, 270, 270, 271, 271, + 271, 271, 271, 271, 271, 271, 271, 272, 272, 273, + 273, 273, 274, 274, 274, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 276, 276, 276, 277, + 277, 278, 278, 279, 280, 280, 281, 281, 282, 283, + 284, 284, 285, 285, 286, 287, 287, 287, 287, 287, + 287, 287, 288, 288, 289, 289, 290, 290, 291, 291, + 292, 292, 293, 294, 294, 294, 295, 295, 296, 297, + 297, 298, 298, 298, 299, 299, 300, 300, 301, 301, + 302, 302, 302, 302, 302, 303, 303, 303, 304 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ static const yytype_uint8 yyr2[] = { - 0, 2, 0, 4, 0, 3, 0, 2, 5, 1, - 2, 1, 1, 1, 1, 1, 1, 3, 1, 4, - 1, 3, 2, 2, 1, 1, 1, 3, 2, 2, - 2, 1, 2, 3, 2, 1, 1, 1, 1, 2, - 2, 2, 1, 1, 1, 1, 1, 3, 3, 3, - 1, 3, 3, 1, 3, 3, 1, 3, 3, 3, - 3, 1, 3, 3, 1, 3, 1, 3, 1, 3, - 1, 3, 1, 3, 1, 3, 1, 5, 1, 3, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 3, 1, 2, 2, 4, 2, 1, 1, - 2, 3, 3, 2, 5, 3, 2, 3, 2, 0, - 1, 1, 1, 1, 1, 3, 5, 6, 7, 8, - 5, 1, 2, 4, 5, 6, 7, 4, 2, 1, - 2, 0, 1, 4, 1, 3, 1, 1, 1, 1, - 1, 1, 2, 2, 1, 1, 2, 2, 2, 1, - 2, 2, 1, 1, 2, 1, 3, 4, 1, 1, + 0, 2, 0, 4, 0, 3, 2, 2, 2, 2, + 0, 2, 5, 1, 2, 1, 1, 1, 1, 1, + 1, 3, 1, 4, 1, 3, 2, 2, 1, 1, + 1, 3, 2, 2, 2, 1, 2, 3, 2, 1, + 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, + 1, 3, 3, 3, 1, 3, 3, 1, 3, 3, + 1, 3, 3, 3, 3, 1, 3, 3, 1, 3, + 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, + 1, 5, 1, 3, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 1, 2, 2, + 4, 2, 1, 1, 2, 3, 3, 2, 5, 3, + 2, 3, 2, 0, 1, 1, 1, 1, 1, 3, + 5, 6, 7, 8, 5, 1, 2, 4, 5, 6, + 7, 4, 2, 1, 2, 0, 1, 4, 1, 3, + 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, + 2, 2, 2, 1, 2, 2, 1, 1, 2, 1, + 3, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, + 4, 1, 2, 3, 1, 3, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 5, 4, 1, 2, 3, - 1, 3, 1, 4, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, - 1, 1, 2, 3, 1, 2, 1, 2, 7, 5, - 5, 7, 1, 4, 5, 3, 2, 5, 7, 6, - 1, 1, 1, 0, 2, 3, 2, 2, 2, 3, - 2, 1, 1, 2 + 1, 1, 2, 3, 1, 1, 2, 3, 1, 2, + 1, 2, 7, 5, 5, 7, 1, 4, 5, 3, + 2, 5, 7, 6, 1, 1, 1, 0, 2, 3, + 2, 2, 2, 3, 2, 1, 1, 1, 2 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1008,628 +1016,621 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 4, 0, 0, 6, 0, 1, 2, 5, 0, 131, - 7, 0, 145, 144, 165, 162, 163, 164, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 166, 167, 168, - 0, 149, 152, 139, 138, 137, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 190, 191, 192, - 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 0, 161, - 160, 131, 214, 213, 212, 0, 0, 189, 194, 131, - 272, 0, 0, 99, 109, 0, 114, 121, 0, 132, - 131, 0, 141, 129, 153, 155, 158, 0, 159, 9, - 271, 0, 150, 151, 147, 0, 0, 128, 131, 143, - 0, 0, 10, 94, 131, 273, 97, 109, 140, 110, - 111, 112, 100, 0, 109, 0, 95, 122, 148, 146, - 142, 130, 0, 154, 0, 0, 0, 0, 217, 0, - 136, 0, 134, 0, 0, 131, 0, 0, 0, 0, - 0, 0, 0, 0, 11, 15, 13, 14, 16, 37, - 0, 0, 0, 42, 43, 44, 45, 246, 131, 242, - 12, 18, 38, 20, 25, 26, 0, 0, 31, 0, - 46, 0, 50, 53, 56, 61, 64, 66, 68, 70, - 72, 74, 76, 78, 91, 0, 225, 0, 129, 231, - 244, 226, 227, 229, 228, 131, 232, 233, 230, 234, - 235, 236, 237, 101, 106, 108, 113, 0, 115, 102, - 0, 0, 156, 46, 93, 0, 35, 8, 0, 222, - 0, 220, 216, 218, 96, 133, 0, 267, 266, 0, - 131, 0, 270, 268, 0, 0, 0, 256, 131, 39, - 40, 0, 238, 131, 22, 23, 0, 0, 29, 28, - 0, 161, 32, 34, 81, 82, 84, 83, 86, 87, - 88, 89, 90, 85, 80, 0, 41, 0, 0, 0, + 4, 0, 0, 10, 0, 1, 2, 5, 0, 135, + 11, 0, 149, 148, 169, 166, 167, 168, 173, 174, + 175, 176, 177, 178, 179, 180, 181, 170, 171, 172, + 0, 153, 156, 143, 142, 141, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 194, 195, 196, + 197, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 215, 0, 165, + 164, 135, 218, 217, 216, 0, 0, 0, 0, 0, + 0, 193, 198, 277, 135, 276, 0, 0, 103, 113, + 0, 118, 125, 0, 136, 135, 0, 145, 133, 157, + 159, 162, 0, 163, 13, 275, 0, 154, 155, 151, + 0, 0, 132, 135, 147, 0, 6, 7, 8, 9, + 0, 14, 98, 135, 278, 101, 113, 144, 114, 115, + 116, 104, 0, 113, 0, 99, 126, 152, 150, 146, + 134, 0, 158, 0, 0, 0, 0, 221, 0, 140, + 0, 138, 0, 0, 135, 0, 0, 0, 0, 0, + 0, 0, 0, 15, 19, 17, 18, 20, 41, 0, + 0, 0, 46, 47, 48, 49, 250, 135, 246, 16, + 22, 42, 24, 29, 30, 0, 0, 35, 0, 50, + 0, 54, 57, 60, 65, 68, 70, 72, 74, 76, + 78, 80, 82, 95, 0, 229, 0, 133, 235, 248, + 230, 231, 233, 232, 135, 236, 237, 234, 238, 239, + 240, 241, 105, 110, 112, 117, 0, 119, 106, 0, + 0, 160, 50, 97, 0, 39, 12, 0, 226, 0, + 224, 220, 222, 100, 137, 0, 271, 270, 0, 135, + 0, 274, 272, 0, 0, 0, 260, 135, 43, 44, + 0, 242, 135, 26, 27, 0, 0, 33, 32, 0, + 165, 36, 38, 85, 86, 88, 87, 90, 91, 92, + 93, 94, 89, 84, 0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 247, 243, - 245, 103, 105, 107, 0, 0, 123, 0, 224, 127, - 157, 215, 0, 0, 219, 135, 0, 261, 260, 131, - 0, 269, 0, 255, 252, 0, 0, 17, 239, 0, - 24, 21, 27, 33, 79, 47, 48, 49, 51, 52, - 54, 55, 59, 60, 57, 58, 62, 63, 65, 67, - 69, 71, 73, 75, 0, 92, 0, 116, 0, 120, - 0, 124, 0, 221, 0, 262, 0, 0, 131, 0, - 0, 131, 19, 0, 0, 0, 117, 125, 0, 223, - 0, 264, 131, 249, 250, 254, 0, 0, 241, 257, - 240, 77, 104, 118, 0, 126, 0, 265, 259, 131, - 253, 0, 119, 258, 248, 251, 0, 131, 0, 131 + 0, 0, 0, 0, 0, 0, 0, 251, 247, 249, + 107, 109, 111, 0, 0, 127, 0, 228, 131, 161, + 219, 0, 0, 223, 139, 0, 265, 264, 135, 0, + 273, 0, 259, 256, 0, 0, 21, 243, 0, 28, + 25, 31, 37, 83, 51, 52, 53, 55, 56, 58, + 59, 63, 64, 61, 62, 66, 67, 69, 71, 73, + 75, 77, 79, 0, 96, 0, 120, 0, 124, 0, + 128, 0, 225, 0, 266, 0, 0, 135, 0, 0, + 135, 23, 0, 0, 0, 121, 129, 0, 227, 0, + 268, 135, 253, 254, 258, 0, 0, 245, 261, 244, + 81, 108, 122, 0, 130, 0, 269, 263, 135, 257, + 0, 123, 262, 252, 255, 0, 135, 0, 135 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 9, 3, 6, 10, 79, 170, 171, 172, - 329, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 275, 195, 225, 196, 197, 82, 83, - 84, 214, 122, 123, 215, 85, 86, 87, 88, 89, - 141, 142, 90, 124, 91, 92, 226, 94, 95, 96, - 97, 98, 137, 138, 230, 231, 309, 199, 200, 201, - 202, 203, 204, 389, 390, 205, 206, 207, 208, 326, - 209, 210, 211, 319, 366, 367, 212, 99, 100 + -1, 2, 9, 3, 83, 6, 10, 84, 179, 180, + 181, 338, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 284, 204, 234, 205, 206, 87, + 88, 89, 223, 131, 132, 224, 90, 91, 92, 93, + 94, 150, 151, 95, 133, 96, 97, 235, 99, 100, + 101, 102, 103, 146, 147, 239, 240, 318, 208, 209, + 210, 211, 212, 213, 398, 399, 214, 215, 216, 217, + 335, 218, 219, 220, 328, 375, 376, 221, 104, 105 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -345 +#define YYPACT_NINF -367 static const yytype_int16 yypact[] = { - -30, 29, 120, -345, 15, -345, 22, -345, 59, 3758, - -345, 25, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - 79, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -71, -345, - -345, 130, -345, -345, -345, -79, -42, -345, -345, 3642, - -345, -5, -38, -32, 4, -181, -345, 87, 62, -345, - 27, 3871, -345, -345, -345, -25, -345, 3943, -345, -345, - -345, 91, -345, -345, -345, -37, 3871, -345, 27, -345, - 3943, 95, -345, -345, 398, -345, -345, 19, -345, -345, - -345, -345, -345, 3871, 0, 119, -345, -128, -345, -345, - -345, -345, 2752, -345, 86, 3871, 131, 2153, -345, 11, - -345, -87, -345, 21, 23, 1234, 40, 50, 36, 2379, - 63, 3286, 43, 64, -73, -345, -345, -345, -345, -345, - 3286, 3286, 3286, -345, -345, -345, -345, -345, 607, -345, - -345, -345, -67, -345, -345, -345, 78, -62, 3464, 80, - -53, 3286, -1, 20, 140, -80, 136, 66, 67, 65, - 182, 181, -82, -345, -345, -173, -345, 103, 125, -345, - -345, -345, -345, -345, -345, 816, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, 198, 3871, -140, -345, - 2930, 3286, -345, -345, -345, 84, -345, -345, 2266, 124, - -137, -345, -345, -345, -345, -345, 95, -345, -345, 240, - 1845, 3286, -345, -345, -118, 3286, -120, -345, 2574, -345, - -345, -48, -345, 1025, -345, -345, 3286, 235, -345, -345, - 3286, 128, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, 3286, -345, 3286, 3286, 3286, - 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, - 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, -345, -345, - -345, 129, -345, -345, 3108, 3286, 110, 132, -345, -345, - -345, -345, 3286, 131, -345, -345, 133, -345, -345, 2040, - -46, -345, -36, -345, 127, 246, 135, -345, -345, 134, - 127, 138, -345, -345, -345, -345, -345, -345, -1, -1, - 20, 20, 140, 140, 140, 140, -80, -80, 136, 66, - 67, 65, 182, 181, -117, -345, 3286, 121, 137, -345, - 3286, 122, 141, -345, 3286, -345, 118, 142, 1234, 123, - 126, 1442, -345, 3286, 144, 3286, 139, -345, 3286, -345, - -35, 3286, 1442, 324, -345, -345, 3286, 149, -345, -345, - -345, -345, -345, -345, 3286, -345, 143, 127, -345, 1234, - -345, 3286, -345, -345, -345, -345, -33, 1650, 326, 1650 + -88, -21, 24, -367, -53, -367, -3, -367, 9, 3699, + -367, 0, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + 126, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -75, -367, + -367, 29, -367, -367, -367, 92, 4, 12, 20, 26, + -49, -367, -367, -367, 3580, -367, -197, -45, -46, 3, + -134, -367, 82, 71, -367, 52, 3887, -367, -367, -367, + -29, -367, 3959, -367, -367, -367, 97, -367, -367, -367, + -19, 3887, -367, 52, -367, 3959, -367, -367, -367, -367, + 130, -367, -367, 282, -367, -367, 47, -367, -367, -367, + -367, -367, 3887, 187, 139, -367, -162, -367, -367, -367, + -367, 2675, -367, 105, 3887, 154, 2064, -367, 23, -367, + -62, -367, 27, 31, 1130, 50, 53, 33, 2296, 55, + 3218, 37, 58, -67, -367, -367, -367, -367, -367, 3218, + 3218, 3218, -367, -367, -367, -367, -367, 494, -367, -367, + -367, -66, -367, -367, -367, 60, -56, 3399, 64, -54, + 3218, 22, 6, 118, -84, 120, 51, 54, 56, 168, + 167, -83, -367, -367, -103, -367, 48, 72, -367, -367, + -367, -367, -367, -367, 706, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, 186, 3887, -139, -367, 2856, + 3218, -367, -367, -367, 73, -367, -367, 2180, 75, -102, + -367, -367, -367, -367, -367, 130, -367, -367, 190, 1750, + 3218, -367, -367, -90, 3218, -146, -367, 2494, -367, -367, + -48, -367, 918, -367, -367, 3218, 3815, -367, -367, 3218, + 74, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, 3218, -367, 3218, 3218, 3218, 3218, + 3218, 3218, 3218, 3218, 3218, 3218, 3218, 3218, 3218, 3218, + 3218, 3218, 3218, 3218, 3218, 3218, 3218, -367, -367, -367, + 76, -367, -367, 3037, 3218, 59, 77, -367, -367, -367, + -367, 3218, 154, -367, -367, 81, -367, -367, 1948, -40, + -367, -27, -367, 78, 197, 83, -367, -367, 84, 78, + 85, -367, -367, -367, -367, -367, -367, 22, 22, 6, + 6, 118, 118, 118, 118, -84, -84, 120, 51, 54, + 56, 168, 167, -97, -367, 3218, 66, 86, -367, 3218, + 68, 87, -367, 3218, -367, 70, 91, 1130, 102, 106, + 1341, -367, 3218, 90, 3218, 153, -367, 3218, -367, -26, + 3218, 1341, 353, -367, -367, 3218, 103, -367, -367, -367, + -367, -367, -367, 3218, -367, 157, 78, -367, 1130, -367, + 3218, -367, -367, -367, -367, -25, 1552, 358, 1552 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, 85, -345, -345, -345, -345, -103, -345, - -54, -47, -74, -40, 53, 54, 52, 55, 56, 51, - -345, -110, -157, -345, -147, -219, 5, 7, -345, -345, - -345, 146, 232, 227, 147, -345, -345, -238, -345, -345, - -345, 117, -345, -345, -39, -345, -9, -14, -345, -345, - 279, -345, 220, -124, -345, 44, -286, 116, -134, -257, - -344, -294, -11, -22, 280, 197, 145, -345, -345, 47, - -345, -345, -345, -345, -345, -345, -345, 288, -345 + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, 107, -367, -367, -367, -367, -111, + -367, -63, -59, -82, -60, 79, 80, 88, 89, 69, + 93, -367, -114, -153, -367, -154, -224, 11, 14, -367, + -367, -367, 148, 249, 243, 151, -367, -367, -245, -367, + -367, -367, 134, -367, -367, -43, -367, -9, -89, -367, + -367, 306, -367, 239, -136, -367, 62, -241, 143, -143, + -342, -355, -366, 15, 5, 308, 218, 149, -367, -367, + 94, -367, -367, -367, -367, -367, -367, -367, 316, -367 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -264 +#define YYTABLE_NINF -268 static const yytype_int16 yytable[] = { - 93, 307, 244, -160, 246, 105, 284, 285, 118, 295, - 325, 239, 125, 233, 80, 251, 81, 254, 255, 359, - 297, 262, 224, 118, 384, 72, 73, 74, 126, 223, - 12, 13, 109, 119, 120, 121, 298, 119, 120, 121, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 304, 130, 119, 120, 121, 405, 313, 249, 250, 30, - 219, 31, 220, 32, 308, 33, 34, 35, 305, 109, - 93, 300, 314, 297, 377, 297, 297, 388, 276, 1, - 221, 325, 131, 133, 80, 358, 81, 323, 388, 393, - 373, 321, 395, 362, 320, 128, 139, 136, 322, 129, - 400, 324, 235, 333, 233, 198, 236, 4, 402, 330, - 224, 383, 102, 103, 216, -36, 104, 223, 334, 300, - 5, 286, 287, 256, 296, 257, 136, 259, 136, 7, - 108, 260, 8, 12, 13, 11, 198, 374, 101, 106, - 355, 327, 404, 368, 76, 297, 111, 297, 308, 354, - 408, 116, 404, 369, 396, 274, 407, 297, 297, 198, - 297, 117, 30, 127, 31, 132, 32, 134, 33, 34, - 35, 140, 324, 135, 335, 336, 337, 223, 223, 223, - 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, - 223, 223, 223, -98, 224, 218, 198, 277, 278, 279, - 227, 223, 224, 308, 113, 114, 107, 229, 216, 223, - 342, 343, 344, 345, 280, 281, 391, 380, 308, 136, - 234, 308, 282, 283, 288, 289, 338, 339, 240, 308, - 237, 198, 238, 108, 397, 340, 341, 308, 241, 198, - 14, 15, 16, 17, 198, 242, 224, 76, 346, 347, - 247, 245, 248, 223, 406, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 258, 263, 290, - 292, 291, 293, 294, 301, 310, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 198, 331, 113, -35, 312, 316, 159, -30, 360, 356, - 297, 364, 370, 361, 371, 372, -36, 381, 376, 375, - 378, 382, 379, 168, 386, 392, 399, 401, 409, 72, - 73, 74, 332, 348, 350, 349, 353, 394, 351, 213, - 352, 217, 403, 315, 110, 228, 317, 363, 385, 198, - 398, 115, 198, 302, 303, 253, 365, 112, 0, 0, - 0, 0, 0, 198, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 318, 77, 0, 78, 0, - 198, 0, 0, 0, 0, 0, 0, 0, 198, 0, - 198, 12, 13, 14, 15, 16, 17, 143, 144, 145, - 0, 146, 147, 148, 149, 150, 151, 152, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 153, 154, 155, 156, 157, 158, 159, - 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, - 0, 0, 0, 0, 0, 76, 0, 0, 0, 0, + 98, 110, 293, 294, 253, 316, 255, 127, 304, -164, + 242, 248, 334, 142, 397, 122, 123, 260, 263, 264, + 85, 1, 393, 86, 5, 397, 148, 233, 114, 228, + 232, 229, 12, 13, 271, 392, 128, 129, 130, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 230, + 306, 127, 139, 414, 313, 12, 13, 4, 258, 259, + 7, 30, 134, 31, 332, 32, 413, 33, 34, 35, + 114, 309, 314, 368, 417, 98, 413, 317, 135, 285, + 128, 129, 130, 334, 30, 11, 31, 140, 32, 367, + 33, 34, 35, 306, 322, 85, 329, 371, 86, 306, + 331, 242, 145, 333, 137, 112, 306, 8, 138, 307, + 323, 339, 106, 382, 207, 233, 342, 116, 232, 309, + 295, 296, 330, 225, -40, 117, 305, 265, 386, 266, + 244, 343, 113, 118, 245, 145, 268, 145, 111, 119, + 269, 383, 120, 402, 336, 207, 404, 125, 306, 80, + 126, 363, 377, 364, 409, 113, 306, 283, 136, 107, + 108, 317, 411, 109, 141, 378, 405, 416, 207, 306, + 306, 306, 80, 143, 333, 344, 345, 346, 232, 232, + 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, + 232, 232, 232, 232, 144, -102, 72, 73, 74, 233, + 291, 292, 232, 289, 290, 207, 149, 233, 297, 298, + 232, 351, 352, 353, 354, 227, 317, 225, 236, 389, + 128, 129, 130, 286, 287, 288, 347, 348, 145, 400, + 238, 317, 349, 350, 317, 243, 406, 355, 356, 246, + 207, 249, 317, 247, 250, 251, 254, 256, 207, 257, + 317, 233, 267, 207, 232, 272, 415, 299, 302, 303, + 122, 300, 310, -39, 301, 325, -34, 319, 321, 365, + 369, 370, 373, 379, 306, 380, -40, 384, 381, 387, + 385, 388, 390, 391, 401, 12, 13, 14, 15, 16, + 17, 152, 153, 154, 410, 155, 156, 157, 158, 159, + 160, 161, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 177, 31, 395, 32, 207, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 162, 163, 164, + 165, 166, 167, 168, 403, 408, 169, 170, 207, 412, + 418, 207, 361, 341, 311, 222, 226, 312, 357, 324, + 358, 115, 207, 237, 372, 71, 72, 73, 74, 359, + 75, 360, 326, 394, 124, 262, 407, 362, 327, 207, + 121, 0, 80, 0, 0, 0, 0, 207, 0, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 374, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, - 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 162, 0, 0, 0, - 0, 0, 163, 164, 165, 166, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 167, 168, 169, - 12, 13, 14, 15, 16, 17, 143, 144, 145, 0, - 146, 147, 148, 149, 150, 151, 152, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 153, 154, 155, 156, 157, 158, 159, 0, - 0, 160, 161, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 171, 0, 0, 0, 0, 0, 172, + 173, 174, 175, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 176, 177, 178, 12, 13, 14, + 15, 16, 17, 152, 153, 154, 0, 155, 156, 157, + 158, 159, 160, 161, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, + 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 162, + 163, 164, 165, 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 71, 72, 73, 74, 0, 75, 0, 0, 0, 0, - 0, 0, 0, 0, 76, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, + 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, - 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, + 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 162, 0, 0, 0, 0, - 0, 163, 164, 165, 166, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 167, 168, 252, 12, - 13, 14, 15, 16, 17, 143, 144, 145, 0, 146, - 147, 148, 149, 150, 151, 152, 18, 19, 20, 21, + 0, 0, 0, 0, 0, 171, 0, 0, 0, 0, + 0, 172, 173, 174, 175, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 176, 177, 261, 12, + 13, 14, 15, 16, 17, 152, 153, 154, 0, 155, + 156, 157, 158, 159, 160, 161, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 153, 154, 155, 156, 157, 158, 159, 0, 0, - 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, + 69, 162, 163, 164, 165, 166, 167, 168, 0, 0, + 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, 0, 0, - 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 162, 0, 0, 0, 0, 0, - 163, 164, 165, 166, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 167, 168, 299, 12, 13, - 14, 15, 16, 17, 143, 144, 145, 0, 146, 147, - 148, 149, 150, 151, 152, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, - 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 153, 154, 155, 156, 157, 158, 159, 0, 0, 160, - 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, - 73, 74, 0, 75, 0, 0, 0, 0, 0, 0, - 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 171, 0, 0, + 0, 0, 0, 172, 173, 174, 175, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 176, 177, + 308, 12, 13, 14, 15, 16, 17, 152, 153, 154, + 0, 155, 156, 157, 158, 159, 160, 161, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 162, 163, 164, 165, 166, 167, 168, + 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 162, 0, 0, 0, 0, 0, 163, - 164, 165, 166, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 167, 168, 328, 12, 13, 14, - 15, 16, 17, 143, 144, 145, 0, 146, 147, 148, - 149, 150, 151, 152, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, - 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 153, - 154, 155, 156, 157, 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, - 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, - 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 171, + 0, 0, 0, 0, 0, 172, 173, 174, 175, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 176, 177, 337, 12, 13, 14, 15, 16, 17, 152, + 153, 154, 0, 155, 156, 157, 158, 159, 160, 161, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 162, 163, 164, 165, 166, + 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 171, 0, 0, 0, 0, 0, 172, 173, 174, + 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 176, 177, 12, 13, 14, 15, 16, 17, + 152, 153, 154, 0, 155, 396, 157, 158, 159, 160, + 161, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 162, 163, 164, 165, + 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, + 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 162, 0, 0, 0, 0, 0, 163, 164, - 165, 166, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 167, 168, 12, 13, 14, 15, 16, - 17, 143, 144, 145, 0, 146, 387, 148, 149, 150, - 151, 152, 18, 19, 20, 21, 22, 23, 24, 25, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 171, 0, 0, 0, 0, 0, 172, 173, + 174, 175, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 176, 123, 12, 13, 14, 15, 16, + 17, 152, 153, 154, 0, 155, 396, 157, 158, 159, + 160, 161, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 153, 154, 155, - 156, 157, 158, 159, 0, 0, 160, 161, 0, 0, + 63, 64, 65, 66, 67, 68, 69, 162, 163, 164, + 165, 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, - 75, 0, 0, 0, 0, 0, 0, 0, 0, 76, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 162, 0, 0, 0, 0, 0, 163, 164, 165, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 167, 114, 12, 13, 14, 15, 16, 17, 143, - 144, 145, 0, 146, 387, 148, 149, 150, 151, 152, + 0, 0, 0, 171, 0, 0, 0, 0, 0, 172, + 173, 174, 175, 12, 13, 14, 15, 16, 17, 0, + 0, 0, 0, 0, 176, 177, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 153, 154, 155, 156, 157, - 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, + 65, 66, 67, 68, 69, 0, 163, 164, 165, 166, + 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, - 0, 0, 0, 0, 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 162, 0, - 0, 0, 0, 0, 163, 164, 165, 166, 12, 13, - 14, 15, 16, 17, 0, 0, 0, 0, 0, 167, - 168, 0, 0, 0, 0, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, - 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 0, 154, 155, 156, 157, 158, 159, 0, 0, 160, - 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, - 73, 74, 0, 75, 0, 0, 0, 0, 0, 0, - 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 77, 0, 78, 0, + 0, 171, 0, 0, 0, 0, 0, 172, 173, 174, + 175, 12, 13, 14, 15, 16, 17, 0, 0, 0, + 0, 0, 176, 0, 0, 0, 0, 0, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 0, 163, 164, 165, 166, 167, 168, + 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 113, 72, 73, 74, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 80, 14, + 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 0, 0, 0, 0, + 0, 0, 81, 0, 82, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 171, + 70, 0, 0, 0, 0, 172, 173, 174, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -267, 0, 0, 0, 0, 0, 0, 0, 72, 73, + 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 162, 0, 0, 0, 0, 0, 163, - 164, 165, 166, 12, 13, 14, 15, 16, 17, 0, - 0, 0, 0, 0, 167, 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 28, 29, 0, 0, 0, 0, 0, 0, 81, 0, + 82, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 0, 154, 155, 156, 157, - 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, + 65, 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 108, 72, 73, 74, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 76, 14, 15, - 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 0, 0, 0, 0, 0, - 0, 77, 0, 78, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 162, 70, - 0, 0, 0, 0, 163, 164, 165, 166, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, -263, - 0, 0, 0, 0, 0, 0, 0, 72, 73, 74, + 0, 0, 0, 0, 0, 0, 0, 0, 241, 0, + 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, - 0, 0, 0, 0, 77, 0, 78, 36, 37, 38, + 0, 0, 0, 0, 81, 0, 82, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 232, 0, 0, 0, 0, 0, + 69, 0, 163, 164, 165, 166, 167, 168, 0, 0, + 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 14, 15, 16, 17, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 0, 0, 0, 0, 0, 0, 77, 0, 78, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 0, 154, 155, 156, 157, 158, - 159, 0, 0, 160, 161, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 311, 0, 0, - 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, + 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 162, 0, 0, - 0, 0, 0, 163, 164, 165, 166, 12, 13, 14, - 15, 16, 17, 0, 0, 0, 0, 0, 243, 0, + 0, 0, 0, 0, 0, 0, 0, 171, 0, 0, + 0, 0, 0, 172, 173, 174, 175, 12, 13, 14, + 15, 16, 17, 0, 0, 0, 0, 0, 252, 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 0, - 154, 155, 156, 157, 158, 159, 0, 0, 160, 161, + 163, 164, 165, 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 108, 72, 73, + 0, 0, 0, 0, 0, 0, 0, 113, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, + 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 14, 15, 16, - 17, 0, 162, 0, 0, 0, 0, 0, 163, 164, - 165, 166, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 0, 154, 155, - 156, 157, 158, 159, 0, 0, 160, 161, 0, 0, + 14, 15, 16, 17, 0, 171, 0, 0, 0, 0, + 0, 172, 173, 174, 175, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 0, 163, 164, 165, 166, 167, 168, 0, 0, 169, + 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, + 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, + 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 14, 15, 16, 17, 0, 171, 0, 0, 231, + 0, 0, 172, 173, 174, 175, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 0, 163, 164, 165, 166, 167, 168, 0, 0, + 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 72, 73, 74, 0, + 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, + 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 14, 15, 16, 17, 0, - 162, 0, 0, 222, 0, 0, 163, 164, 165, 166, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 0, 154, 155, 156, 157, - 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, + 0, 0, 14, 15, 16, 17, 0, 171, 0, 0, + 315, 0, 0, 172, 173, 174, 175, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 0, 163, 164, 165, 166, 167, 168, 0, + 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, + 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, + 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 14, 15, 16, 17, 0, 162, 0, - 0, 306, 0, 0, 163, 164, 165, 166, 18, 19, + 0, 0, 0, 14, 15, 16, 17, 0, 171, 0, + 0, 366, 0, 0, 172, 173, 174, 175, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 0, 154, 155, 156, 157, 158, 159, - 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, + 67, 68, 69, 0, 163, 164, 165, 166, 167, 168, + 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, - 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 14, 15, 16, 17, 0, 162, 0, 0, 357, - 0, 0, 163, 164, 165, 166, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 0, 154, 155, 156, 157, 158, 159, 0, 0, - 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 14, 15, 16, 17, 0, 171, + 0, 0, 0, 0, 0, 172, 173, 174, 175, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 270, 0, 163, 164, 165, 166, 167, + 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 77, 0, 78, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, - 15, 16, 17, 0, 162, 0, 0, 0, 0, 0, - 163, 164, 165, 166, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 261, 0, - 154, 155, 156, 157, 158, 159, 0, 0, 160, 161, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, - 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, -3, 0, 0, 12, 13, 14, 15, 16, - 17, 0, 162, 0, 0, 0, 0, 0, 163, 164, - 165, 166, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -3, 0, 0, 12, 13, 14, 15, 16, 17, 0, + 171, 0, 0, 0, 0, 0, 172, 173, 174, 175, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, - 75, 0, 0, 0, 0, 0, 0, 0, 0, 76, - 0, 12, 13, 14, 15, 16, 17, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 0, 31, 77, 32, 78, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, + 0, 0, 0, 0, 0, 0, 76, 77, 78, 79, + 80, 0, 12, 13, 14, 15, 16, 17, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 0, 31, 81, 32, 82, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, - 0, 0, 0, 0, 0, 76, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 0, 0, 0, 0, 0, 0, 77, - 0, 78, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 0, 70, 14, 15, - 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 72, 73, 74, 0, 0, - 0, 0, 0, 0, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 0, 70, - 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, + 0, 0, 71, 72, 73, 74, 0, 75, 0, 0, + 0, 0, 0, 0, 0, 76, 77, 78, 79, 80, + 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 0, 0, 0, + 0, 0, 0, 81, 0, 82, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 0, 340, 14, 15, 16, 17, 168, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 72, + 73, 74, 0, 0, 0, 0, 0, 0, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 0, 70, 14, 15, 16, 17, 0, 81, + 0, 82, 0, 0, 0, 0, 0, 0, 0, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 72, 73, 74, 0, 0, 0, 0, 0, 0, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, + 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 77, 0, 78 + 0, 0, 0, 81, 0, 82 }; static const yytype_int16 yycheck[] = { - 9, 220, 149, 76, 151, 76, 86, 87, 4, 91, - 248, 145, 193, 137, 9, 162, 9, 84, 85, 305, - 193, 178, 132, 4, 368, 104, 105, 106, 209, 132, - 3, 4, 71, 33, 34, 35, 209, 33, 34, 35, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 190, 90, 33, 34, 35, 399, 193, 160, 161, 32, - 188, 34, 190, 36, 221, 38, 39, 40, 208, 108, - 79, 205, 209, 193, 360, 193, 193, 371, 181, 109, - 208, 319, 91, 97, 79, 304, 79, 207, 382, 375, - 207, 209, 378, 312, 241, 33, 110, 106, 245, 37, - 386, 248, 189, 260, 228, 114, 193, 78, 394, 256, - 220, 368, 33, 34, 123, 188, 37, 220, 275, 253, - 0, 201, 202, 190, 206, 192, 135, 189, 137, 114, - 103, 193, 110, 3, 4, 76, 145, 356, 113, 210, - 297, 189, 399, 189, 117, 193, 188, 193, 305, 296, - 407, 189, 409, 189, 189, 208, 189, 193, 193, 168, - 193, 193, 32, 76, 34, 190, 36, 76, 38, 39, - 40, 76, 319, 210, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 189, 304, 76, 205, 198, 199, 200, - 114, 304, 312, 360, 209, 210, 76, 76, 217, 312, - 284, 285, 286, 287, 194, 195, 373, 364, 375, 228, - 209, 378, 82, 83, 88, 89, 280, 281, 188, 386, - 209, 240, 209, 103, 381, 282, 283, 394, 188, 248, - 5, 6, 7, 8, 253, 209, 356, 117, 288, 289, - 207, 188, 188, 356, 401, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 189, 188, 203, - 205, 204, 90, 92, 76, 191, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 319, 76, 209, 188, 190, 75, 81, 189, 208, 190, - 193, 188, 76, 191, 189, 191, 188, 209, 191, 208, - 208, 189, 191, 210, 208, 191, 12, 188, 12, 104, - 105, 106, 257, 290, 292, 291, 295, 208, 293, 117, - 294, 124, 209, 236, 75, 135, 240, 313, 369, 368, - 382, 81, 371, 217, 217, 168, 319, 79, -1, -1, - -1, -1, -1, 382, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 240, 151, -1, 153, -1, - 399, -1, -1, -1, -1, -1, -1, -1, 407, -1, - 409, 3, 4, 5, 6, 7, 8, 9, 10, 11, - -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, - -1, -1, -1, -1, -1, 117, -1, -1, -1, -1, + 9, 76, 86, 87, 158, 229, 160, 4, 91, 76, + 146, 154, 257, 102, 380, 212, 213, 171, 84, 85, + 9, 109, 377, 9, 0, 391, 115, 141, 71, 191, + 141, 193, 3, 4, 187, 377, 33, 34, 35, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 211, + 196, 4, 95, 408, 193, 3, 4, 78, 169, 170, + 113, 32, 196, 34, 210, 36, 408, 38, 39, 40, + 113, 214, 211, 314, 416, 84, 418, 230, 212, 190, + 33, 34, 35, 328, 32, 76, 34, 96, 36, 313, + 38, 39, 40, 196, 196, 84, 250, 321, 84, 196, + 254, 237, 111, 257, 33, 76, 196, 110, 37, 212, + 212, 265, 112, 210, 123, 229, 269, 113, 229, 262, + 204, 205, 212, 132, 191, 113, 209, 193, 369, 195, + 192, 284, 103, 113, 196, 144, 192, 146, 213, 113, + 196, 365, 191, 384, 192, 154, 387, 192, 196, 120, + 196, 305, 192, 306, 395, 103, 196, 211, 76, 33, + 34, 314, 403, 37, 193, 192, 192, 192, 177, 196, + 196, 196, 120, 76, 328, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 303, 304, 213, 192, 104, 105, 106, 313, + 82, 83, 313, 197, 198, 214, 76, 321, 88, 89, + 321, 293, 294, 295, 296, 76, 369, 226, 113, 373, + 33, 34, 35, 201, 202, 203, 289, 290, 237, 382, + 76, 384, 291, 292, 387, 212, 390, 297, 298, 212, + 249, 191, 395, 212, 191, 212, 191, 210, 257, 191, + 403, 365, 192, 262, 365, 191, 410, 206, 90, 92, + 212, 207, 76, 191, 208, 75, 192, 194, 193, 193, + 211, 194, 191, 76, 196, 192, 191, 211, 194, 211, + 194, 194, 212, 192, 194, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 191, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 213, 34, 211, 36, 328, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 211, 12, 84, 85, 377, 212, + 12, 380, 303, 266, 226, 126, 133, 226, 299, 245, + 300, 75, 391, 144, 322, 103, 104, 105, 106, 301, + 108, 302, 249, 378, 86, 177, 391, 304, 249, 408, + 84, -1, 120, -1, -1, -1, -1, 416, -1, 418, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 328, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 151, - -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 188, -1, -1, -1, - -1, -1, 194, 195, 196, 197, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 209, 210, 211, - 3, 4, 5, 6, 7, 8, 9, 10, 11, -1, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - -1, 34, -1, 36, -1, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, -1, - -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 191, -1, -1, -1, -1, -1, 197, + 198, 199, 200, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 212, 213, 214, 3, 4, 5, + 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, + 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 103, 104, 105, 106, -1, 108, -1, -1, -1, -1, - -1, -1, -1, -1, 117, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, + 106, -1, 108, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 151, -1, - 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 154, -1, + 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, -1, -1, -1, - -1, 194, 195, 196, 197, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, 211, 3, + -1, -1, -1, -1, -1, 191, -1, -1, -1, -1, + -1, 197, 198, 199, 200, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 212, 213, 214, 3, 4, 5, 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, @@ -1641,58 +1642,80 @@ static const yytype_int16 yycheck[] = 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, -1, -1, - -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, -1, -1, -1, -1, - 194, 195, 196, 197, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, 211, 3, 4, - 5, 6, 7, 8, 9, 10, 11, -1, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, - -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, -1, -1, 84, - 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, - 105, 106, -1, 108, -1, -1, -1, -1, -1, -1, - -1, -1, 117, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 191, -1, -1, + -1, -1, -1, 197, 198, 199, 200, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 212, 213, + 214, 3, 4, 5, 6, 7, 8, 9, 10, 11, + -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 188, -1, -1, -1, -1, -1, 194, - 195, 196, 197, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 209, 210, 211, 3, 4, 5, - 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, - 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, - 106, -1, 108, -1, -1, -1, -1, -1, -1, -1, - -1, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 191, + -1, -1, -1, -1, -1, 197, 198, 199, 200, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 212, 213, 214, 3, 4, 5, 6, 7, 8, 9, + 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, + -1, 191, -1, -1, -1, -1, -1, 197, 198, 199, + 200, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 212, 213, 3, 4, 5, 6, 7, 8, + 9, 10, 11, -1, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, -1, 34, -1, 36, -1, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, -1, -1, 84, 85, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 103, 104, 105, 106, -1, 108, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 188, -1, -1, -1, -1, -1, 194, 195, - 196, 197, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 209, 210, 3, 4, 5, 6, 7, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 191, -1, -1, -1, -1, -1, 197, 198, + 199, 200, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 212, 213, 3, 4, 5, 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, @@ -1703,110 +1726,91 @@ static const yytype_int16 yycheck[] = 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, - 108, -1, -1, -1, -1, -1, -1, -1, -1, 117, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 108, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, -1, -1, -1, -1, 194, 195, 196, 197, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, 3, 4, 5, 6, 7, 8, 9, - 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, + -1, -1, -1, 191, -1, -1, -1, -1, -1, 197, + 198, 199, 200, 3, 4, 5, 6, 7, 8, -1, + -1, -1, -1, -1, 212, 213, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 70, 71, 72, 73, 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, - -1, -1, -1, -1, -1, -1, -1, 117, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, - -1, -1, -1, -1, 194, 195, 196, 197, 3, 4, - 5, 6, 7, 8, -1, -1, -1, -1, -1, 209, - 210, -1, -1, -1, -1, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, - -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - -1, 76, 77, 78, 79, 80, 81, -1, -1, 84, - 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, - 105, 106, -1, 108, -1, -1, -1, -1, -1, -1, - -1, -1, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 151, -1, 153, -1, + -1, 191, -1, -1, -1, -1, -1, 197, 198, 199, + 200, 3, 4, 5, 6, 7, 8, -1, -1, -1, + -1, -1, 212, -1, -1, -1, -1, -1, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, -1, 76, 77, 78, 79, 80, 81, + -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 103, 104, 105, 106, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 120, 5, + 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, + -1, -1, 154, -1, 156, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 191, + 76, -1, -1, -1, -1, 197, 198, 199, 200, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 212, -1, -1, -1, -1, -1, -1, -1, 104, 105, + 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 188, -1, -1, -1, -1, -1, 194, - 195, 196, 197, 3, 4, 5, 6, 7, 8, -1, - -1, -1, -1, -1, 209, -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 30, 31, -1, -1, -1, -1, -1, -1, 154, -1, + 156, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, -1, 76, 77, 78, 79, - 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, + 70, 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 103, 104, 105, 106, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 117, 5, 6, - 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, -1, -1, -1, -1, -1, - -1, 151, -1, 153, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 188, 76, - -1, -1, -1, -1, 194, 195, 196, 197, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, - -1, -1, -1, -1, -1, -1, -1, 104, 105, 106, + -1, -1, -1, -1, -1, -1, -1, -1, 214, -1, + -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, - -1, -1, -1, -1, 151, -1, 153, 41, 42, 43, + -1, -1, -1, -1, 154, -1, 156, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 211, -1, -1, -1, -1, -1, + 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, + 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 214, -1, -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5, 6, 7, 8, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, -1, -1, -1, -1, -1, -1, 151, -1, 153, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 73, 74, -1, 76, 77, 78, 79, 80, - 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 211, -1, -1, - -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, + 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 188, -1, -1, - -1, -1, -1, 194, 195, 196, 197, 3, 4, 5, - 6, 7, 8, -1, -1, -1, -1, -1, 209, -1, + -1, -1, -1, -1, -1, -1, -1, 191, -1, -1, + -1, -1, -1, 197, 198, 199, 200, 3, 4, 5, + 6, 7, 8, -1, -1, -1, -1, -1, 212, -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, @@ -1817,50 +1821,69 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 154, -1, + 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5, 6, 7, - 8, -1, 188, -1, -1, -1, -1, -1, 194, 195, - 196, 197, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, -1, 76, 77, - 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, + 5, 6, 7, 8, -1, 191, -1, -1, -1, -1, + -1, 197, 198, 199, 200, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + -1, 76, 77, 78, 79, 80, 81, -1, -1, 84, + 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 104, + 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 154, + -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, + -1, 5, 6, 7, 8, -1, 191, -1, -1, 194, + -1, -1, 197, 198, 199, 200, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, + 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5, 6, 7, 8, -1, - 188, -1, -1, 191, -1, -1, 194, 195, 196, 197, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, -1, 76, 77, 78, 79, - 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5, 6, 7, 8, -1, 191, -1, -1, + 194, -1, -1, 197, 198, 199, 200, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, -1, 76, 77, 78, 79, 80, 81, -1, + -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 5, 6, 7, 8, -1, 188, -1, - -1, 191, -1, -1, 194, 195, 196, 197, 20, 21, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5, 6, 7, 8, -1, 191, -1, + -1, 194, -1, -1, 197, 198, 199, 200, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, @@ -1873,138 +1896,130 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 151, - -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5, 6, 7, 8, -1, 188, -1, -1, 191, - -1, -1, 194, 195, 196, 197, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, - 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 151, -1, 153, + -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, - 6, 7, 8, -1, 188, -1, -1, -1, -1, -1, - 194, 195, 196, 197, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, -1, - 76, 77, 78, 79, 80, 81, -1, -1, 84, 85, + -1, -1, -1, -1, 5, 6, 7, 8, -1, 191, + -1, -1, -1, -1, -1, 197, 198, 199, 200, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, -1, 76, 77, 78, 79, 80, + 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 104, 105, - 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 0, -1, -1, 3, 4, 5, 6, 7, - 8, -1, 188, -1, -1, -1, -1, -1, 194, 195, - 196, 197, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 0, -1, -1, 3, 4, 5, 6, 7, 8, -1, + 191, -1, -1, -1, -1, -1, 197, 198, 199, 200, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, - 108, -1, -1, -1, -1, -1, -1, -1, -1, 117, - -1, 3, 4, 5, 6, 7, 8, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, -1, 34, 151, 36, 153, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, + -1, -1, -1, -1, -1, -1, 116, 117, 118, 119, + 120, -1, 3, 4, 5, 6, 7, 8, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, -1, 34, 154, 36, 156, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, - -1, -1, -1, -1, -1, 117, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, -1, -1, -1, -1, -1, -1, 151, - -1, 153, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, 74, -1, 76, 5, 6, - 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 104, 105, 106, -1, -1, - -1, -1, -1, -1, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, -1, 76, - -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, + -1, -1, 103, 104, 105, 106, -1, 108, -1, -1, + -1, -1, -1, -1, -1, 116, 117, 118, 119, 120, + 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, -1, -1, -1, + -1, -1, -1, 154, -1, 156, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + -1, 76, 5, 6, 7, 8, 81, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 104, + 105, 106, -1, -1, -1, -1, -1, -1, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, -1, 76, 5, 6, 7, 8, -1, 154, + -1, 156, -1, -1, -1, -1, -1, -1, -1, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 104, 105, 106, -1, -1, -1, -1, -1, -1, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, + -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 151, -1, 153 + -1, -1, -1, 154, -1, 156 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 109, 213, 215, 78, 0, 216, 114, 110, 214, - 217, 76, 3, 4, 5, 6, 7, 8, 20, 21, + 0, 109, 216, 218, 78, 0, 220, 113, 110, 217, + 221, 76, 3, 4, 5, 6, 7, 8, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 76, 103, 104, 105, 106, 108, 117, 151, 153, 218, - 248, 249, 250, 251, 252, 257, 258, 259, 260, 261, - 264, 266, 267, 268, 269, 270, 271, 272, 273, 299, - 300, 113, 33, 34, 37, 76, 210, 76, 103, 266, - 272, 188, 299, 209, 210, 286, 189, 193, 4, 33, - 34, 35, 254, 255, 265, 193, 209, 76, 33, 37, - 266, 268, 190, 269, 76, 210, 268, 274, 275, 269, - 76, 262, 263, 9, 10, 11, 13, 14, 15, 16, - 17, 18, 19, 75, 76, 77, 78, 79, 80, 81, - 84, 85, 188, 194, 195, 196, 197, 209, 210, 211, - 219, 220, 221, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 246, 248, 249, 268, 279, - 280, 281, 282, 283, 284, 287, 288, 289, 290, 292, - 293, 294, 298, 254, 253, 256, 268, 255, 76, 188, - 190, 208, 191, 230, 243, 247, 268, 114, 274, 76, - 276, 277, 211, 275, 209, 189, 193, 209, 209, 280, - 188, 188, 209, 209, 246, 188, 246, 207, 188, 230, - 230, 246, 211, 287, 84, 85, 190, 192, 189, 189, - 193, 74, 244, 188, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 208, 245, 230, 198, 199, 200, - 194, 195, 82, 83, 86, 87, 201, 202, 88, 89, - 203, 204, 205, 90, 92, 91, 206, 193, 209, 211, - 280, 76, 253, 256, 190, 208, 191, 247, 244, 278, - 191, 211, 190, 193, 209, 263, 75, 279, 288, 295, - 246, 209, 246, 207, 246, 259, 291, 189, 211, 222, - 246, 76, 225, 244, 244, 230, 230, 230, 232, 232, - 233, 233, 234, 234, 234, 234, 235, 235, 236, 237, - 238, 239, 240, 241, 246, 244, 190, 191, 247, 278, - 208, 191, 247, 277, 188, 291, 296, 297, 189, 189, - 76, 189, 191, 207, 247, 208, 191, 278, 208, 191, - 246, 209, 189, 281, 282, 284, 208, 14, 283, 285, - 286, 244, 191, 278, 208, 278, 189, 246, 285, 12, - 278, 188, 278, 209, 281, 282, 246, 189, 281, 12 + 76, 103, 104, 105, 106, 108, 116, 117, 118, 119, + 120, 154, 156, 219, 222, 252, 253, 254, 255, 256, + 261, 262, 263, 264, 265, 268, 270, 271, 272, 273, + 274, 275, 276, 277, 303, 304, 112, 33, 34, 37, + 76, 213, 76, 103, 270, 276, 113, 113, 113, 113, + 191, 303, 212, 213, 290, 192, 196, 4, 33, 34, + 35, 258, 259, 269, 196, 212, 76, 33, 37, 270, + 272, 193, 273, 76, 213, 272, 278, 279, 273, 76, + 266, 267, 9, 10, 11, 13, 14, 15, 16, 17, + 18, 19, 75, 76, 77, 78, 79, 80, 81, 84, + 85, 191, 197, 198, 199, 200, 212, 213, 214, 223, + 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 250, 252, 253, 272, 283, 284, + 285, 286, 287, 288, 291, 292, 293, 294, 296, 297, + 298, 302, 258, 257, 260, 272, 259, 76, 191, 193, + 211, 194, 234, 247, 251, 272, 113, 278, 76, 280, + 281, 214, 279, 212, 192, 196, 212, 212, 284, 191, + 191, 212, 212, 250, 191, 250, 210, 191, 234, 234, + 250, 214, 291, 84, 85, 193, 195, 192, 192, 196, + 74, 248, 191, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 211, 249, 234, 201, 202, 203, 197, + 198, 82, 83, 86, 87, 204, 205, 88, 89, 206, + 207, 208, 90, 92, 91, 209, 196, 212, 214, 284, + 76, 257, 260, 193, 211, 194, 251, 248, 282, 194, + 214, 193, 196, 212, 267, 75, 283, 292, 299, 250, + 212, 250, 210, 250, 263, 295, 192, 214, 226, 250, + 76, 229, 248, 248, 234, 234, 234, 236, 236, 237, + 237, 238, 238, 238, 238, 239, 239, 240, 241, 242, + 243, 244, 245, 250, 248, 193, 194, 251, 282, 211, + 194, 251, 281, 191, 295, 300, 301, 192, 192, 76, + 192, 194, 210, 251, 211, 194, 282, 211, 194, 250, + 212, 192, 285, 286, 288, 211, 14, 287, 289, 290, + 248, 194, 282, 211, 282, 192, 250, 289, 12, 282, + 191, 282, 212, 285, 286, 250, 192, 285, 12 }; #define yyerrok (yyerrstatus = 0) @@ -2019,18 +2034,9 @@ static const yytype_uint16 yystos[] = /* Like YYERROR except do call yyerror. This remains here temporarily to ease the transition to the new meaning of YYERROR, for GCC. - Once GCC version 2 has supplanted version 1, this can go. However, - YYFAIL appears to be in use. Nevertheless, it is formally deprecated - in Bison 2.4.2's NEWS entry, where a plan to phase it out is - discussed. */ + Once GCC version 2 has supplanted version 1, this can go. */ #define YYFAIL goto yyerrlab -#if defined YYFAIL - /* This is here to suppress warnings from the GCC cpp's - -Wunused-macros. Normally we don't worry about that warning, but - some users do, and we want to make it easy for users to remove - YYFAIL uses, which will produce warnings from Bison 2.5. */ -#endif #define YYRECOVERING() (!!yyerrstatus) @@ -2087,7 +2093,7 @@ while (YYID (0)) we won't break user code: when these are the locations we know. */ #ifndef YY_LOCATION_PRINT -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if YYLTYPE_IS_TRIVIAL # define YY_LOCATION_PRINT(File, Loc) \ fprintf (File, "%d.%d-%d.%d", \ (Loc).first_line, (Loc).first_column, \ @@ -2629,7 +2635,7 @@ YYLTYPE yylloc; YYLTYPE *yylsp; /* The locations where the error started and ended. */ - YYLTYPE yyerror_range[3]; + YYLTYPE yyerror_range[2]; YYSIZE_T yystacksize; @@ -2676,7 +2682,7 @@ YYLTYPE yylloc; yyvsp = yyvs; yylsp = yyls; -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +#if YYLTYPE_IS_TRIVIAL /* Initialize the default location before parsing starts. */ yylloc.first_line = yylloc.last_line = 1; yylloc.first_column = yylloc.last_column = 1; @@ -2684,7 +2690,7 @@ YYLTYPE yylloc; /* User initialization code. */ -/* Line 1251 of yacc.c */ +/* Line 1242 of yacc.c */ #line 41 "glsl_parser.ypp" { yylloc.first_line = 1; @@ -2694,8 +2700,8 @@ YYLTYPE yylloc; yylloc.source = 0; } -/* Line 1251 of yacc.c */ -#line 2699 "glsl_parser.cpp" +/* Line 1242 of yacc.c */ +#line 2705 "glsl_parser.cpp" yylsp[0] = yylloc; goto yysetstate; @@ -2882,8 +2888,8 @@ yyreduce: { case 2: -/* Line 1464 of yacc.c */ -#line 209 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 211 "glsl_parser.ypp" { _mesa_glsl_initialize_types(state); ;} @@ -2891,8 +2897,8 @@ yyreduce: case 4: -/* Line 1464 of yacc.c */ -#line 217 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 219 "glsl_parser.ypp" { state->language_version = 110; state->symbols->language_version = 110; @@ -2901,8 +2907,8 @@ yyreduce: case 5: -/* Line 1464 of yacc.c */ -#line 222 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 224 "glsl_parser.ypp" { switch ((yyvsp[(2) - (3)].n)) { case 110: @@ -2920,10 +2926,10 @@ yyreduce: ;} break; - case 8: + case 12: -/* Line 1464 of yacc.c */ -#line 246 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 255 "glsl_parser.ypp" { if (!_mesa_glsl_process_extension((yyvsp[(2) - (5)].identifier), & (yylsp[(2) - (5)]), (yyvsp[(4) - (5)].identifier), & (yylsp[(4) - (5)]), state)) { YYERROR; @@ -2931,10 +2937,10 @@ yyreduce: ;} break; - case 9: + case 13: -/* Line 1464 of yacc.c */ -#line 255 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 264 "glsl_parser.ypp" { /* FINISHME: The NULL test is only required because 'precision' * FINISHME: statements are not yet supported. @@ -2944,10 +2950,10 @@ yyreduce: ;} break; - case 10: + case 14: -/* Line 1464 of yacc.c */ -#line 263 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 272 "glsl_parser.ypp" { /* FINISHME: The NULL test is only required because 'precision' * FINISHME: statements are not yet supported. @@ -2957,10 +2963,10 @@ yyreduce: ;} break; - case 12: + case 16: -/* Line 1464 of yacc.c */ -#line 278 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 287 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_identifier, NULL, NULL, NULL); @@ -2969,10 +2975,10 @@ yyreduce: ;} break; - case 13: + case 17: -/* Line 1464 of yacc.c */ -#line 285 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 294 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_int_constant, NULL, NULL, NULL); @@ -2981,10 +2987,10 @@ yyreduce: ;} break; - case 14: + case 18: -/* Line 1464 of yacc.c */ -#line 292 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 301 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_uint_constant, NULL, NULL, NULL); @@ -2993,10 +2999,10 @@ yyreduce: ;} break; - case 15: + case 19: -/* Line 1464 of yacc.c */ -#line 299 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 308 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_float_constant, NULL, NULL, NULL); @@ -3005,10 +3011,10 @@ yyreduce: ;} break; - case 16: + case 20: -/* Line 1464 of yacc.c */ -#line 306 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 315 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_bool_constant, NULL, NULL, NULL); @@ -3017,19 +3023,19 @@ yyreduce: ;} break; - case 17: + case 21: -/* Line 1464 of yacc.c */ -#line 313 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 322 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(2) - (3)].expression); ;} break; - case 19: + case 23: -/* Line 1464 of yacc.c */ -#line 321 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 330 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_array_index, (yyvsp[(1) - (4)].expression), (yyvsp[(3) - (4)].expression), NULL); @@ -3037,19 +3043,19 @@ yyreduce: ;} break; - case 20: + case 24: -/* Line 1464 of yacc.c */ -#line 327 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 336 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (1)].expression); ;} break; - case 21: + case 25: -/* Line 1464 of yacc.c */ -#line 331 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 340 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_field_selection, (yyvsp[(1) - (3)].expression), NULL, NULL); @@ -3058,10 +3064,10 @@ yyreduce: ;} break; - case 22: + case 26: -/* Line 1464 of yacc.c */ -#line 338 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 347 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_post_inc, (yyvsp[(1) - (2)].expression), NULL, NULL); @@ -3069,10 +3075,10 @@ yyreduce: ;} break; - case 23: + case 27: -/* Line 1464 of yacc.c */ -#line 344 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 353 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_post_dec, (yyvsp[(1) - (2)].expression), NULL, NULL); @@ -3080,10 +3086,10 @@ yyreduce: ;} break; - case 27: + case 31: -/* Line 1464 of yacc.c */ -#line 362 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 371 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_field_selection, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression), NULL); @@ -3091,10 +3097,10 @@ yyreduce: ;} break; - case 32: + case 36: -/* Line 1464 of yacc.c */ -#line 381 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 390 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (2)].expression); (yyval.expression)->set_location(yylloc); @@ -3102,10 +3108,10 @@ yyreduce: ;} break; - case 33: + case 37: -/* Line 1464 of yacc.c */ -#line 387 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 396 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (3)].expression); (yyval.expression)->set_location(yylloc); @@ -3113,10 +3119,10 @@ yyreduce: ;} break; - case 35: + case 39: -/* Line 1464 of yacc.c */ -#line 403 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 412 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_function_expression((yyvsp[(1) - (1)].type_specifier)); @@ -3124,10 +3130,10 @@ yyreduce: ;} break; - case 36: + case 40: -/* Line 1464 of yacc.c */ -#line 409 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 418 "glsl_parser.ypp" { void *ctx = state; ast_expression *callee = new(ctx) ast_expression((yyvsp[(1) - (1)].identifier)); @@ -3136,10 +3142,10 @@ yyreduce: ;} break; - case 37: + case 41: -/* Line 1464 of yacc.c */ -#line 416 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 425 "glsl_parser.ypp" { void *ctx = state; ast_expression *callee = new(ctx) ast_expression((yyvsp[(1) - (1)].identifier)); @@ -3148,10 +3154,10 @@ yyreduce: ;} break; - case 39: + case 43: -/* Line 1464 of yacc.c */ -#line 428 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 437 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_pre_inc, (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3159,10 +3165,10 @@ yyreduce: ;} break; - case 40: + case 44: -/* Line 1464 of yacc.c */ -#line 434 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 443 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_pre_dec, (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3170,10 +3176,10 @@ yyreduce: ;} break; - case 41: + case 45: -/* Line 1464 of yacc.c */ -#line 440 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 449 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression((yyvsp[(1) - (2)].n), (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3181,38 +3187,38 @@ yyreduce: ;} break; - case 42: + case 46: -/* Line 1464 of yacc.c */ -#line 449 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 458 "glsl_parser.ypp" { (yyval.n) = ast_plus; ;} break; - case 43: + case 47: -/* Line 1464 of yacc.c */ -#line 450 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 459 "glsl_parser.ypp" { (yyval.n) = ast_neg; ;} break; - case 44: + case 48: -/* Line 1464 of yacc.c */ -#line 451 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 460 "glsl_parser.ypp" { (yyval.n) = ast_logic_not; ;} break; - case 45: + case 49: -/* Line 1464 of yacc.c */ -#line 452 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 461 "glsl_parser.ypp" { (yyval.n) = ast_bit_not; ;} break; - case 47: + case 51: -/* Line 1464 of yacc.c */ -#line 458 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 467 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_mul, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3220,10 +3226,10 @@ yyreduce: ;} break; - case 48: + case 52: -/* Line 1464 of yacc.c */ -#line 464 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 473 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_div, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3231,10 +3237,10 @@ yyreduce: ;} break; - case 49: + case 53: -/* Line 1464 of yacc.c */ -#line 470 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 479 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_mod, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3242,10 +3248,10 @@ yyreduce: ;} break; - case 51: + case 55: -/* Line 1464 of yacc.c */ -#line 480 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 489 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_add, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3253,10 +3259,10 @@ yyreduce: ;} break; - case 52: + case 56: -/* Line 1464 of yacc.c */ -#line 486 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 495 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_sub, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3264,10 +3270,10 @@ yyreduce: ;} break; - case 54: + case 58: -/* Line 1464 of yacc.c */ -#line 496 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 505 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_lshift, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3275,10 +3281,10 @@ yyreduce: ;} break; - case 55: + case 59: -/* Line 1464 of yacc.c */ -#line 502 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 511 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_rshift, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3286,10 +3292,10 @@ yyreduce: ;} break; - case 57: + case 61: -/* Line 1464 of yacc.c */ -#line 512 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 521 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_less, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3297,10 +3303,10 @@ yyreduce: ;} break; - case 58: + case 62: -/* Line 1464 of yacc.c */ -#line 518 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 527 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_greater, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3308,10 +3314,10 @@ yyreduce: ;} break; - case 59: + case 63: -/* Line 1464 of yacc.c */ -#line 524 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 533 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_lequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3319,10 +3325,10 @@ yyreduce: ;} break; - case 60: + case 64: -/* Line 1464 of yacc.c */ -#line 530 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 539 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_gequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3330,10 +3336,10 @@ yyreduce: ;} break; - case 62: + case 66: -/* Line 1464 of yacc.c */ -#line 540 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 549 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_equal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3341,10 +3347,10 @@ yyreduce: ;} break; - case 63: + case 67: -/* Line 1464 of yacc.c */ -#line 546 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 555 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_nequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3352,10 +3358,10 @@ yyreduce: ;} break; - case 65: + case 69: -/* Line 1464 of yacc.c */ -#line 556 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 565 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3363,10 +3369,10 @@ yyreduce: ;} break; - case 67: + case 71: -/* Line 1464 of yacc.c */ -#line 566 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 575 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_xor, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3374,10 +3380,10 @@ yyreduce: ;} break; - case 69: + case 73: -/* Line 1464 of yacc.c */ -#line 576 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 585 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3385,10 +3391,10 @@ yyreduce: ;} break; - case 71: + case 75: -/* Line 1464 of yacc.c */ -#line 586 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 595 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_and, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3396,10 +3402,10 @@ yyreduce: ;} break; - case 73: + case 77: -/* Line 1464 of yacc.c */ -#line 596 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 605 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_xor, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3407,10 +3413,10 @@ yyreduce: ;} break; - case 75: + case 79: -/* Line 1464 of yacc.c */ -#line 606 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 615 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3418,10 +3424,10 @@ yyreduce: ;} break; - case 77: + case 81: -/* Line 1464 of yacc.c */ -#line 616 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 625 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_conditional, (yyvsp[(1) - (5)].expression), (yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].expression)); @@ -3429,10 +3435,10 @@ yyreduce: ;} break; - case 79: + case 83: -/* Line 1464 of yacc.c */ -#line 626 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 635 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression((yyvsp[(2) - (3)].n), (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression), NULL); @@ -3440,96 +3446,96 @@ yyreduce: ;} break; - case 80: + case 84: -/* Line 1464 of yacc.c */ -#line 634 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 643 "glsl_parser.ypp" { (yyval.n) = ast_assign; ;} break; - case 81: + case 85: -/* Line 1464 of yacc.c */ -#line 635 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 644 "glsl_parser.ypp" { (yyval.n) = ast_mul_assign; ;} break; - case 82: + case 86: -/* Line 1464 of yacc.c */ -#line 636 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 645 "glsl_parser.ypp" { (yyval.n) = ast_div_assign; ;} break; - case 83: + case 87: -/* Line 1464 of yacc.c */ -#line 637 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 646 "glsl_parser.ypp" { (yyval.n) = ast_mod_assign; ;} break; - case 84: + case 88: -/* Line 1464 of yacc.c */ -#line 638 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 647 "glsl_parser.ypp" { (yyval.n) = ast_add_assign; ;} break; - case 85: + case 89: -/* Line 1464 of yacc.c */ -#line 639 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 648 "glsl_parser.ypp" { (yyval.n) = ast_sub_assign; ;} break; - case 86: + case 90: -/* Line 1464 of yacc.c */ -#line 640 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 649 "glsl_parser.ypp" { (yyval.n) = ast_ls_assign; ;} break; - case 87: + case 91: -/* Line 1464 of yacc.c */ -#line 641 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 650 "glsl_parser.ypp" { (yyval.n) = ast_rs_assign; ;} break; - case 88: + case 92: -/* Line 1464 of yacc.c */ -#line 642 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 651 "glsl_parser.ypp" { (yyval.n) = ast_and_assign; ;} break; - case 89: + case 93: -/* Line 1464 of yacc.c */ -#line 643 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 652 "glsl_parser.ypp" { (yyval.n) = ast_xor_assign; ;} break; - case 90: + case 94: -/* Line 1464 of yacc.c */ -#line 644 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 653 "glsl_parser.ypp" { (yyval.n) = ast_or_assign; ;} break; - case 91: + case 95: -/* Line 1464 of yacc.c */ -#line 649 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 658 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (1)].expression); ;} break; - case 92: + case 96: -/* Line 1464 of yacc.c */ -#line 653 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 662 "glsl_parser.ypp" { void *ctx = state; if ((yyvsp[(1) - (3)].expression)->oper != ast_sequence) { @@ -3544,28 +3550,28 @@ yyreduce: ;} break; - case 94: + case 98: -/* Line 1464 of yacc.c */ -#line 673 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 682 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (2)].function); ;} break; - case 95: + case 99: -/* Line 1464 of yacc.c */ -#line 677 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 686 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (2)].declarator_list); ;} break; - case 96: + case 100: -/* Line 1464 of yacc.c */ -#line 681 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 690 "glsl_parser.ypp" { if (((yyvsp[(3) - (4)].type_specifier)->type_specifier != ast_float) && ((yyvsp[(3) - (4)].type_specifier)->type_specifier != ast_int)) { @@ -3578,30 +3584,30 @@ yyreduce: ;} break; - case 100: + case 104: -/* Line 1464 of yacc.c */ -#line 704 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 713 "glsl_parser.ypp" { (yyval.function) = (yyvsp[(1) - (2)].function); (yyval.function)->parameters.push_tail(& (yyvsp[(2) - (2)].parameter_declarator)->link); ;} break; - case 101: + case 105: -/* Line 1464 of yacc.c */ -#line 709 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 718 "glsl_parser.ypp" { (yyval.function) = (yyvsp[(1) - (3)].function); (yyval.function)->parameters.push_tail(& (yyvsp[(3) - (3)].parameter_declarator)->link); ;} break; - case 102: + case 106: -/* Line 1464 of yacc.c */ -#line 717 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 726 "glsl_parser.ypp" { void *ctx = state; (yyval.function) = new(ctx) ast_function(); @@ -3611,10 +3617,10 @@ yyreduce: ;} break; - case 103: + case 107: -/* Line 1464 of yacc.c */ -#line 728 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 737 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3626,10 +3632,10 @@ yyreduce: ;} break; - case 104: + case 108: -/* Line 1464 of yacc.c */ -#line 738 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 747 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3643,10 +3649,10 @@ yyreduce: ;} break; - case 105: + case 109: -/* Line 1464 of yacc.c */ -#line 753 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 762 "glsl_parser.ypp" { (yyvsp[(1) - (3)].type_qualifier).i |= (yyvsp[(2) - (3)].type_qualifier).i; @@ -3655,20 +3661,20 @@ yyreduce: ;} break; - case 106: + case 110: -/* Line 1464 of yacc.c */ -#line 760 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 769 "glsl_parser.ypp" { (yyval.parameter_declarator) = (yyvsp[(2) - (2)].parameter_declarator); (yyval.parameter_declarator)->type->qualifier = (yyvsp[(1) - (2)].type_qualifier).q; ;} break; - case 107: + case 111: -/* Line 1464 of yacc.c */ -#line 765 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 774 "glsl_parser.ypp" { void *ctx = state; (yyvsp[(1) - (3)].type_qualifier).i |= (yyvsp[(2) - (3)].type_qualifier).i; @@ -3681,10 +3687,10 @@ yyreduce: ;} break; - case 108: + case 112: -/* Line 1464 of yacc.c */ -#line 776 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 785 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3695,38 +3701,38 @@ yyreduce: ;} break; - case 109: + case 113: -/* Line 1464 of yacc.c */ -#line 787 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 796 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; ;} break; - case 110: + case 114: -/* Line 1464 of yacc.c */ -#line 788 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 797 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; ;} break; - case 111: + case 115: -/* Line 1464 of yacc.c */ -#line 789 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 798 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.out = 1; ;} break; - case 112: + case 116: -/* Line 1464 of yacc.c */ -#line 790 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 799 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; (yyval.type_qualifier).q.out = 1; ;} break; - case 115: + case 119: -/* Line 1464 of yacc.c */ -#line 800 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 809 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (3)].identifier), false, NULL, NULL); @@ -3737,10 +3743,10 @@ yyreduce: ;} break; - case 116: + case 120: -/* Line 1464 of yacc.c */ -#line 809 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 818 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (5)].identifier), true, NULL, NULL); @@ -3751,10 +3757,10 @@ yyreduce: ;} break; - case 117: + case 121: -/* Line 1464 of yacc.c */ -#line 818 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 827 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (6)].identifier), true, (yyvsp[(5) - (6)].expression), NULL); @@ -3765,10 +3771,10 @@ yyreduce: ;} break; - case 118: + case 122: -/* Line 1464 of yacc.c */ -#line 827 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 836 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (7)].identifier), true, NULL, (yyvsp[(7) - (7)].expression)); @@ -3779,10 +3785,10 @@ yyreduce: ;} break; - case 119: + case 123: -/* Line 1464 of yacc.c */ -#line 836 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 845 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (8)].identifier), true, (yyvsp[(5) - (8)].expression), (yyvsp[(8) - (8)].expression)); @@ -3793,10 +3799,10 @@ yyreduce: ;} break; - case 120: + case 124: -/* Line 1464 of yacc.c */ -#line 845 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 854 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (5)].identifier), false, NULL, (yyvsp[(5) - (5)].expression)); @@ -3807,10 +3813,10 @@ yyreduce: ;} break; - case 121: + case 125: -/* Line 1464 of yacc.c */ -#line 858 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 867 "glsl_parser.ypp" { void *ctx = state; if ((yyvsp[(1) - (1)].fully_specified_type)->specifier->type_specifier != ast_struct) { @@ -3823,10 +3829,10 @@ yyreduce: ;} break; - case 122: + case 126: -/* Line 1464 of yacc.c */ -#line 869 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 878 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (2)].identifier), false, NULL, NULL); @@ -3837,10 +3843,10 @@ yyreduce: ;} break; - case 123: + case 127: -/* Line 1464 of yacc.c */ -#line 878 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 887 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), true, NULL, NULL); @@ -3851,10 +3857,10 @@ yyreduce: ;} break; - case 124: + case 128: -/* Line 1464 of yacc.c */ -#line 887 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 896 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (5)].identifier), true, (yyvsp[(4) - (5)].expression), NULL); @@ -3865,10 +3871,10 @@ yyreduce: ;} break; - case 125: + case 129: -/* Line 1464 of yacc.c */ -#line 896 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 905 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (6)].identifier), true, NULL, (yyvsp[(6) - (6)].expression)); @@ -3879,10 +3885,10 @@ yyreduce: ;} break; - case 126: + case 130: -/* Line 1464 of yacc.c */ -#line 905 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 914 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (7)].identifier), true, (yyvsp[(4) - (7)].expression), (yyvsp[(7) - (7)].expression)); @@ -3893,10 +3899,10 @@ yyreduce: ;} break; - case 127: + case 131: -/* Line 1464 of yacc.c */ -#line 914 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 923 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), false, NULL, (yyvsp[(4) - (4)].expression)); @@ -3907,10 +3913,10 @@ yyreduce: ;} break; - case 128: + case 132: -/* Line 1464 of yacc.c */ -#line 923 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 932 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (2)].identifier), false, NULL, NULL); @@ -3923,10 +3929,10 @@ yyreduce: ;} break; - case 129: + case 133: -/* Line 1464 of yacc.c */ -#line 937 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 946 "glsl_parser.ypp" { void *ctx = state; (yyval.fully_specified_type) = new(ctx) ast_fully_specified_type(); @@ -3935,10 +3941,10 @@ yyreduce: ;} break; - case 130: + case 134: -/* Line 1464 of yacc.c */ -#line 944 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 953 "glsl_parser.ypp" { void *ctx = state; (yyval.fully_specified_type) = new(ctx) ast_fully_specified_type(); @@ -3948,35 +3954,35 @@ yyreduce: ;} break; - case 131: + case 135: -/* Line 1464 of yacc.c */ -#line 954 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 963 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; ;} break; - case 133: + case 137: -/* Line 1464 of yacc.c */ -#line 960 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 969 "glsl_parser.ypp" { (yyval.type_qualifier) = (yyvsp[(3) - (4)].type_qualifier); ;} break; - case 135: + case 139: -/* Line 1464 of yacc.c */ -#line 968 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 977 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (3)].type_qualifier).i | (yyvsp[(3) - (3)].type_qualifier).i; ;} break; - case 136: + case 140: -/* Line 1464 of yacc.c */ -#line 975 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 984 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; @@ -4009,130 +4015,130 @@ yyreduce: ;} break; - case 137: + case 141: -/* Line 1464 of yacc.c */ -#line 1008 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1017 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.smooth = 1; ;} break; - case 138: + case 142: -/* Line 1464 of yacc.c */ -#line 1009 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1018 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.flat = 1; ;} break; - case 139: + case 143: -/* Line 1464 of yacc.c */ -#line 1010 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1019 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.noperspective = 1; ;} break; - case 140: + case 144: -/* Line 1464 of yacc.c */ -#line 1014 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1023 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.constant = 1; ;} break; - case 142: + case 146: -/* Line 1464 of yacc.c */ -#line 1020 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1029 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (2)].type_qualifier).i | (yyvsp[(2) - (2)].type_qualifier).i; ;} break; - case 143: + case 147: -/* Line 1464 of yacc.c */ -#line 1024 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1033 "glsl_parser.ypp" { (yyval.type_qualifier) = (yyvsp[(2) - (2)].type_qualifier); (yyval.type_qualifier).q.invariant = 1; ;} break; - case 144: + case 148: -/* Line 1464 of yacc.c */ -#line 1031 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1040 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.constant = 1; ;} break; - case 145: + case 149: -/* Line 1464 of yacc.c */ -#line 1032 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1041 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.attribute = 1; ;} break; - case 146: + case 150: -/* Line 1464 of yacc.c */ -#line 1033 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1042 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (2)].type_qualifier).i; (yyval.type_qualifier).q.varying = 1; ;} break; - case 147: + case 151: -/* Line 1464 of yacc.c */ -#line 1034 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1043 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.varying = 1; ;} break; - case 148: + case 152: -/* Line 1464 of yacc.c */ -#line 1035 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1044 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; ;} break; - case 149: + case 153: -/* Line 1464 of yacc.c */ -#line 1036 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1045 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.out = 1; ;} break; - case 150: + case 154: -/* Line 1464 of yacc.c */ -#line 1037 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1046 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.in = 1; ;} break; - case 151: + case 155: -/* Line 1464 of yacc.c */ -#line 1038 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1047 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.out = 1; ;} break; - case 152: + case 156: -/* Line 1464 of yacc.c */ -#line 1039 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1048 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.uniform = 1; ;} break; - case 154: + case 158: -/* Line 1464 of yacc.c */ -#line 1045 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1054 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(2) - (2)].type_specifier); (yyval.type_specifier)->precision = (yyvsp[(1) - (2)].n); ;} break; - case 156: + case 160: -/* Line 1464 of yacc.c */ -#line 1054 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1063 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(1) - (3)].type_specifier); (yyval.type_specifier)->is_array = true; @@ -4140,10 +4146,10 @@ yyreduce: ;} break; - case 157: + case 161: -/* Line 1464 of yacc.c */ -#line 1060 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1069 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(1) - (4)].type_specifier); (yyval.type_specifier)->is_array = true; @@ -4151,10 +4157,10 @@ yyreduce: ;} break; - case 158: + case 162: -/* Line 1464 of yacc.c */ -#line 1069 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1078 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].n)); @@ -4162,10 +4168,10 @@ yyreduce: ;} break; - case 159: + case 163: -/* Line 1464 of yacc.c */ -#line 1075 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1084 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].struct_specifier)); @@ -4173,10 +4179,10 @@ yyreduce: ;} break; - case 160: + case 164: -/* Line 1464 of yacc.c */ -#line 1081 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1090 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].identifier)); @@ -4184,367 +4190,367 @@ yyreduce: ;} break; - case 161: + case 165: -/* Line 1464 of yacc.c */ -#line 1089 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1098 "glsl_parser.ypp" { (yyval.n) = ast_void; ;} break; - case 162: + case 166: -/* Line 1464 of yacc.c */ -#line 1090 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1099 "glsl_parser.ypp" { (yyval.n) = ast_float; ;} break; - case 163: + case 167: -/* Line 1464 of yacc.c */ -#line 1091 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1100 "glsl_parser.ypp" { (yyval.n) = ast_int; ;} break; - case 164: + case 168: -/* Line 1464 of yacc.c */ -#line 1092 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1101 "glsl_parser.ypp" { (yyval.n) = ast_uint; ;} break; - case 165: + case 169: -/* Line 1464 of yacc.c */ -#line 1093 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1102 "glsl_parser.ypp" { (yyval.n) = ast_bool; ;} break; - case 166: + case 170: -/* Line 1464 of yacc.c */ -#line 1094 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1103 "glsl_parser.ypp" { (yyval.n) = ast_vec2; ;} break; - case 167: + case 171: -/* Line 1464 of yacc.c */ -#line 1095 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1104 "glsl_parser.ypp" { (yyval.n) = ast_vec3; ;} break; - case 168: + case 172: -/* Line 1464 of yacc.c */ -#line 1096 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1105 "glsl_parser.ypp" { (yyval.n) = ast_vec4; ;} break; - case 169: + case 173: -/* Line 1464 of yacc.c */ -#line 1097 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1106 "glsl_parser.ypp" { (yyval.n) = ast_bvec2; ;} break; - case 170: + case 174: -/* Line 1464 of yacc.c */ -#line 1098 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1107 "glsl_parser.ypp" { (yyval.n) = ast_bvec3; ;} break; - case 171: + case 175: -/* Line 1464 of yacc.c */ -#line 1099 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1108 "glsl_parser.ypp" { (yyval.n) = ast_bvec4; ;} break; - case 172: + case 176: -/* Line 1464 of yacc.c */ -#line 1100 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1109 "glsl_parser.ypp" { (yyval.n) = ast_ivec2; ;} break; - case 173: + case 177: -/* Line 1464 of yacc.c */ -#line 1101 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1110 "glsl_parser.ypp" { (yyval.n) = ast_ivec3; ;} break; - case 174: + case 178: -/* Line 1464 of yacc.c */ -#line 1102 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1111 "glsl_parser.ypp" { (yyval.n) = ast_ivec4; ;} break; - case 175: + case 179: -/* Line 1464 of yacc.c */ -#line 1103 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1112 "glsl_parser.ypp" { (yyval.n) = ast_uvec2; ;} break; - case 176: + case 180: -/* Line 1464 of yacc.c */ -#line 1104 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1113 "glsl_parser.ypp" { (yyval.n) = ast_uvec3; ;} break; - case 177: + case 181: -/* Line 1464 of yacc.c */ -#line 1105 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1114 "glsl_parser.ypp" { (yyval.n) = ast_uvec4; ;} break; - case 178: + case 182: -/* Line 1464 of yacc.c */ -#line 1106 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1115 "glsl_parser.ypp" { (yyval.n) = ast_mat2; ;} break; - case 179: + case 183: -/* Line 1464 of yacc.c */ -#line 1107 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1116 "glsl_parser.ypp" { (yyval.n) = ast_mat2x3; ;} break; - case 180: + case 184: -/* Line 1464 of yacc.c */ -#line 1108 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1117 "glsl_parser.ypp" { (yyval.n) = ast_mat2x4; ;} break; - case 181: + case 185: -/* Line 1464 of yacc.c */ -#line 1109 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1118 "glsl_parser.ypp" { (yyval.n) = ast_mat3x2; ;} break; - case 182: + case 186: -/* Line 1464 of yacc.c */ -#line 1110 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1119 "glsl_parser.ypp" { (yyval.n) = ast_mat3; ;} break; - case 183: + case 187: -/* Line 1464 of yacc.c */ -#line 1111 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1120 "glsl_parser.ypp" { (yyval.n) = ast_mat3x4; ;} break; - case 184: + case 188: -/* Line 1464 of yacc.c */ -#line 1112 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1121 "glsl_parser.ypp" { (yyval.n) = ast_mat4x2; ;} break; - case 185: + case 189: -/* Line 1464 of yacc.c */ -#line 1113 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1122 "glsl_parser.ypp" { (yyval.n) = ast_mat4x3; ;} break; - case 186: + case 190: -/* Line 1464 of yacc.c */ -#line 1114 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1123 "glsl_parser.ypp" { (yyval.n) = ast_mat4; ;} break; - case 187: + case 191: -/* Line 1464 of yacc.c */ -#line 1115 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1124 "glsl_parser.ypp" { (yyval.n) = ast_sampler1d; ;} break; - case 188: + case 192: -/* Line 1464 of yacc.c */ -#line 1116 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1125 "glsl_parser.ypp" { (yyval.n) = ast_sampler2d; ;} break; - case 189: + case 193: -/* Line 1464 of yacc.c */ -#line 1117 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1126 "glsl_parser.ypp" { (yyval.n) = ast_sampler2drect; ;} break; - case 190: + case 194: -/* Line 1464 of yacc.c */ -#line 1118 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1127 "glsl_parser.ypp" { (yyval.n) = ast_sampler3d; ;} break; - case 191: + case 195: -/* Line 1464 of yacc.c */ -#line 1119 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1128 "glsl_parser.ypp" { (yyval.n) = ast_samplercube; ;} break; - case 192: + case 196: -/* Line 1464 of yacc.c */ -#line 1120 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1129 "glsl_parser.ypp" { (yyval.n) = ast_sampler1dshadow; ;} break; - case 193: + case 197: -/* Line 1464 of yacc.c */ -#line 1121 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1130 "glsl_parser.ypp" { (yyval.n) = ast_sampler2dshadow; ;} break; - case 194: + case 198: -/* Line 1464 of yacc.c */ -#line 1122 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1131 "glsl_parser.ypp" { (yyval.n) = ast_sampler2drectshadow; ;} break; - case 195: + case 199: -/* Line 1464 of yacc.c */ -#line 1123 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1132 "glsl_parser.ypp" { (yyval.n) = ast_samplercubeshadow; ;} break; - case 196: + case 200: -/* Line 1464 of yacc.c */ -#line 1124 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1133 "glsl_parser.ypp" { (yyval.n) = ast_sampler1darray; ;} break; - case 197: + case 201: -/* Line 1464 of yacc.c */ -#line 1125 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1134 "glsl_parser.ypp" { (yyval.n) = ast_sampler2darray; ;} break; - case 198: + case 202: -/* Line 1464 of yacc.c */ -#line 1126 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1135 "glsl_parser.ypp" { (yyval.n) = ast_sampler1darrayshadow; ;} break; - case 199: + case 203: -/* Line 1464 of yacc.c */ -#line 1127 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1136 "glsl_parser.ypp" { (yyval.n) = ast_sampler2darrayshadow; ;} break; - case 200: + case 204: -/* Line 1464 of yacc.c */ -#line 1128 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1137 "glsl_parser.ypp" { (yyval.n) = ast_isampler1d; ;} break; - case 201: + case 205: -/* Line 1464 of yacc.c */ -#line 1129 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1138 "glsl_parser.ypp" { (yyval.n) = ast_isampler2d; ;} break; - case 202: + case 206: -/* Line 1464 of yacc.c */ -#line 1130 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1139 "glsl_parser.ypp" { (yyval.n) = ast_isampler3d; ;} break; - case 203: + case 207: -/* Line 1464 of yacc.c */ -#line 1131 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1140 "glsl_parser.ypp" { (yyval.n) = ast_isamplercube; ;} break; - case 204: + case 208: -/* Line 1464 of yacc.c */ -#line 1132 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1141 "glsl_parser.ypp" { (yyval.n) = ast_isampler1darray; ;} break; - case 205: + case 209: -/* Line 1464 of yacc.c */ -#line 1133 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1142 "glsl_parser.ypp" { (yyval.n) = ast_isampler2darray; ;} break; - case 206: + case 210: -/* Line 1464 of yacc.c */ -#line 1134 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1143 "glsl_parser.ypp" { (yyval.n) = ast_usampler1d; ;} break; - case 207: + case 211: -/* Line 1464 of yacc.c */ -#line 1135 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1144 "glsl_parser.ypp" { (yyval.n) = ast_usampler2d; ;} break; - case 208: + case 212: -/* Line 1464 of yacc.c */ -#line 1136 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1145 "glsl_parser.ypp" { (yyval.n) = ast_usampler3d; ;} break; - case 209: + case 213: -/* Line 1464 of yacc.c */ -#line 1137 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1146 "glsl_parser.ypp" { (yyval.n) = ast_usamplercube; ;} break; - case 210: + case 214: -/* Line 1464 of yacc.c */ -#line 1138 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1147 "glsl_parser.ypp" { (yyval.n) = ast_usampler1darray; ;} break; - case 211: + case 215: -/* Line 1464 of yacc.c */ -#line 1139 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1148 "glsl_parser.ypp" { (yyval.n) = ast_usampler2darray; ;} break; - case 212: + case 216: -/* Line 1464 of yacc.c */ -#line 1143 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1152 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4558,10 +4564,10 @@ yyreduce: ;} break; - case 213: + case 217: -/* Line 1464 of yacc.c */ -#line 1154 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1163 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4575,10 +4581,10 @@ yyreduce: ;} break; - case 214: + case 218: -/* Line 1464 of yacc.c */ -#line 1165 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1174 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4592,10 +4598,10 @@ yyreduce: ;} break; - case 215: + case 219: -/* Line 1464 of yacc.c */ -#line 1180 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1189 "glsl_parser.ypp" { void *ctx = state; (yyval.struct_specifier) = new(ctx) ast_struct_specifier((yyvsp[(2) - (5)].identifier), (yyvsp[(4) - (5)].node)); @@ -4603,10 +4609,10 @@ yyreduce: ;} break; - case 216: + case 220: -/* Line 1464 of yacc.c */ -#line 1186 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1195 "glsl_parser.ypp" { void *ctx = state; (yyval.struct_specifier) = new(ctx) ast_struct_specifier(NULL, (yyvsp[(3) - (4)].node)); @@ -4614,30 +4620,30 @@ yyreduce: ;} break; - case 217: + case 221: -/* Line 1464 of yacc.c */ -#line 1195 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1204 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].declarator_list); (yyvsp[(1) - (1)].declarator_list)->link.self_link(); ;} break; - case 218: + case 222: -/* Line 1464 of yacc.c */ -#line 1200 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1209 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (2)].node); (yyval.node)->link.insert_before(& (yyvsp[(2) - (2)].declarator_list)->link); ;} break; - case 219: + case 223: -/* Line 1464 of yacc.c */ -#line 1208 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1217 "glsl_parser.ypp" { void *ctx = state; ast_fully_specified_type *type = new(ctx) ast_fully_specified_type(); @@ -4651,30 +4657,30 @@ yyreduce: ;} break; - case 220: + case 224: -/* Line 1464 of yacc.c */ -#line 1223 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1232 "glsl_parser.ypp" { (yyval.declaration) = (yyvsp[(1) - (1)].declaration); (yyvsp[(1) - (1)].declaration)->link.self_link(); ;} break; - case 221: + case 225: -/* Line 1464 of yacc.c */ -#line 1228 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1237 "glsl_parser.ypp" { (yyval.declaration) = (yyvsp[(1) - (3)].declaration); (yyval.declaration)->link.insert_before(& (yyvsp[(3) - (3)].declaration)->link); ;} break; - case 222: + case 226: -/* Line 1464 of yacc.c */ -#line 1236 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1245 "glsl_parser.ypp" { void *ctx = state; (yyval.declaration) = new(ctx) ast_declaration((yyvsp[(1) - (1)].identifier), false, NULL, NULL); @@ -4682,10 +4688,10 @@ yyreduce: ;} break; - case 223: + case 227: -/* Line 1464 of yacc.c */ -#line 1242 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1251 "glsl_parser.ypp" { void *ctx = state; (yyval.declaration) = new(ctx) ast_declaration((yyvsp[(1) - (4)].identifier), true, (yyvsp[(3) - (4)].expression), NULL); @@ -4693,31 +4699,31 @@ yyreduce: ;} break; - case 228: + case 232: -/* Line 1464 of yacc.c */ -#line 1265 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1274 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].compound_statement); ;} break; - case 234: + case 238: -/* Line 1464 of yacc.c */ -#line 1277 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1286 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; - case 235: + case 239: -/* Line 1464 of yacc.c */ -#line 1278 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1287 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; - case 238: + case 242: -/* Line 1464 of yacc.c */ -#line 1285 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1294 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(true, NULL); @@ -4725,10 +4731,10 @@ yyreduce: ;} break; - case 239: + case 243: -/* Line 1464 of yacc.c */ -#line 1291 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1300 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(true, (yyvsp[(2) - (3)].node)); @@ -4736,17 +4742,17 @@ yyreduce: ;} break; - case 240: + case 244: -/* Line 1464 of yacc.c */ -#line 1299 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1308 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].compound_statement); ;} break; - case 242: + case 246: -/* Line 1464 of yacc.c */ -#line 1305 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1314 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(false, NULL); @@ -4754,10 +4760,10 @@ yyreduce: ;} break; - case 243: + case 247: -/* Line 1464 of yacc.c */ -#line 1311 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1320 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(false, (yyvsp[(2) - (3)].node)); @@ -4765,10 +4771,10 @@ yyreduce: ;} break; - case 244: + case 248: -/* Line 1464 of yacc.c */ -#line 1320 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1329 "glsl_parser.ypp" { if ((yyvsp[(1) - (1)].node) == NULL) { _mesa_glsl_error(& (yylsp[(1) - (1)]), state, "<nil> statement\n"); @@ -4780,10 +4786,10 @@ yyreduce: ;} break; - case 245: + case 249: -/* Line 1464 of yacc.c */ -#line 1330 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1339 "glsl_parser.ypp" { if ((yyvsp[(2) - (2)].node) == NULL) { _mesa_glsl_error(& (yylsp[(2) - (2)]), state, "<nil> statement\n"); @@ -4794,10 +4800,10 @@ yyreduce: ;} break; - case 246: + case 250: -/* Line 1464 of yacc.c */ -#line 1342 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1351 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_expression_statement(NULL); @@ -4805,10 +4811,10 @@ yyreduce: ;} break; - case 247: + case 251: -/* Line 1464 of yacc.c */ -#line 1348 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1357 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_expression_statement((yyvsp[(1) - (2)].expression)); @@ -4816,10 +4822,10 @@ yyreduce: ;} break; - case 248: + case 252: -/* Line 1464 of yacc.c */ -#line 1357 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1366 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (7)].expression), (yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)); @@ -4827,10 +4833,10 @@ yyreduce: ;} break; - case 249: + case 253: -/* Line 1464 of yacc.c */ -#line 1366 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1375 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].node), NULL); @@ -4838,10 +4844,10 @@ yyreduce: ;} break; - case 250: + case 254: -/* Line 1464 of yacc.c */ -#line 1372 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1381 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].node), NULL); @@ -4849,10 +4855,10 @@ yyreduce: ;} break; - case 251: + case 255: -/* Line 1464 of yacc.c */ -#line 1378 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1387 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (7)].expression), (yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)); @@ -4860,19 +4866,19 @@ yyreduce: ;} break; - case 252: + case 256: -/* Line 1464 of yacc.c */ -#line 1387 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1396 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].expression); ;} break; - case 253: + case 257: -/* Line 1464 of yacc.c */ -#line 1391 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1400 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), false, NULL, (yyvsp[(4) - (4)].expression)); @@ -4885,10 +4891,10 @@ yyreduce: ;} break; - case 257: + case 261: -/* Line 1464 of yacc.c */ -#line 1414 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1423 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_while, @@ -4897,10 +4903,10 @@ yyreduce: ;} break; - case 258: + case 262: -/* Line 1464 of yacc.c */ -#line 1421 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1430 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_do_while, @@ -4909,10 +4915,10 @@ yyreduce: ;} break; - case 259: + case 263: -/* Line 1464 of yacc.c */ -#line 1428 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1437 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_for, @@ -4921,39 +4927,39 @@ yyreduce: ;} break; - case 263: + case 267: -/* Line 1464 of yacc.c */ -#line 1444 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1453 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; - case 264: + case 268: -/* Line 1464 of yacc.c */ -#line 1451 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1460 "glsl_parser.ypp" { (yyval.for_rest_statement).cond = (yyvsp[(1) - (2)].node); (yyval.for_rest_statement).rest = NULL; ;} break; - case 265: + case 269: -/* Line 1464 of yacc.c */ -#line 1456 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1465 "glsl_parser.ypp" { (yyval.for_rest_statement).cond = (yyvsp[(1) - (3)].node); (yyval.for_rest_statement).rest = (yyvsp[(3) - (3)].expression); ;} break; - case 266: + case 270: -/* Line 1464 of yacc.c */ -#line 1465 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1474 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_continue, NULL); @@ -4961,10 +4967,10 @@ yyreduce: ;} break; - case 267: + case 271: -/* Line 1464 of yacc.c */ -#line 1471 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1480 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_break, NULL); @@ -4972,10 +4978,10 @@ yyreduce: ;} break; - case 268: + case 272: -/* Line 1464 of yacc.c */ -#line 1477 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1486 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_return, NULL); @@ -4983,10 +4989,10 @@ yyreduce: ;} break; - case 269: + case 273: -/* Line 1464 of yacc.c */ -#line 1483 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1492 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_return, (yyvsp[(2) - (3)].expression)); @@ -4994,10 +5000,10 @@ yyreduce: ;} break; - case 270: + case 274: -/* Line 1464 of yacc.c */ -#line 1489 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1498 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_discard, NULL); @@ -5005,24 +5011,31 @@ yyreduce: ;} break; - case 271: + case 275: -/* Line 1464 of yacc.c */ -#line 1497 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1506 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (1)].function_definition); ;} break; - case 272: + case 276: -/* Line 1464 of yacc.c */ -#line 1498 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1507 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 273: + case 277: -/* Line 1464 of yacc.c */ -#line 1503 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1508 "glsl_parser.ypp" + { (yyval.node) = NULL; ;} + break; + + case 278: + +/* Line 1455 of yacc.c */ +#line 1513 "glsl_parser.ypp" { void *ctx = state; (yyval.function_definition) = new(ctx) ast_function_definition(); @@ -5034,8 +5047,8 @@ yyreduce: -/* Line 1464 of yacc.c */ -#line 5039 "glsl_parser.cpp" +/* Line 1455 of yacc.c */ +#line 5052 "glsl_parser.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -5107,7 +5120,7 @@ yyerrlab: #endif } - yyerror_range[1] = yylloc; + yyerror_range[0] = yylloc; if (yyerrstatus == 3) { @@ -5144,7 +5157,7 @@ yyerrorlab: if (/*CONSTCOND*/ 0) goto yyerrorlab; - yyerror_range[1] = yylsp[1-yylen]; + yyerror_range[0] = yylsp[1-yylen]; /* Do not reclaim the symbols of the rule which action triggered this YYERROR. */ YYPOPSTACK (yylen); @@ -5178,7 +5191,7 @@ yyerrlab1: if (yyssp == yyss) YYABORT; - yyerror_range[1] = *yylsp; + yyerror_range[0] = *yylsp; yydestruct ("Error: popping", yystos[yystate], yyvsp, yylsp, state); YYPOPSTACK (1); @@ -5188,10 +5201,10 @@ yyerrlab1: *++yyvsp = yylval; - yyerror_range[2] = yylloc; + yyerror_range[1] = yylloc; /* Using YYLLOC is tempting, but would change the location of the lookahead. YYLOC is available though. */ - YYLLOC_DEFAULT (yyloc, yyerror_range, 2); + YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2); *++yylsp = yyloc; /* Shift the error token. */ diff --git a/src/glsl/glsl_parser.h b/src/glsl/glsl_parser.h index 96f9df1129..3ed90853ad 100644 --- a/src/glsl/glsl_parser.h +++ b/src/glsl/glsl_parser.h @@ -1,9 +1,10 @@ -/* A Bison parser, made by GNU Bison 2.4.3. */ + +/* A Bison parser, made by GNU Bison 2.4.1. */ /* Skeleton interface for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -147,82 +148,85 @@ VERSION = 364, EXTENSION = 365, LINE = 366, - PRAGMA = 367, - COLON = 368, - EOL = 369, - INTERFACE = 370, - OUTPUT = 371, - LAYOUT_TOK = 372, - ASM = 373, - CLASS = 374, - UNION = 375, - ENUM = 376, - TYPEDEF = 377, - TEMPLATE = 378, - THIS = 379, - PACKED_TOK = 380, - GOTO = 381, - INLINE_TOK = 382, - NOINLINE = 383, - VOLATILE = 384, - PUBLIC_TOK = 385, - STATIC = 386, - EXTERN = 387, - EXTERNAL = 388, - LONG_TOK = 389, - SHORT_TOK = 390, - DOUBLE_TOK = 391, - HALF = 392, - FIXED_TOK = 393, - UNSIGNED = 394, - INPUT_TOK = 395, - OUPTUT = 396, - HVEC2 = 397, - HVEC3 = 398, - HVEC4 = 399, - DVEC2 = 400, - DVEC3 = 401, - DVEC4 = 402, - FVEC2 = 403, - FVEC3 = 404, - FVEC4 = 405, - SAMPLER2DRECT = 406, - SAMPLER3DRECT = 407, - SAMPLER2DRECTSHADOW = 408, - SIZEOF = 409, - CAST = 410, - NAMESPACE = 411, - USING = 412, - ERROR_TOK = 413, - COMMON = 414, - PARTITION = 415, - ACTIVE = 416, - SAMPLERBUFFER = 417, - FILTER = 418, - IMAGE1D = 419, - IMAGE2D = 420, - IMAGE3D = 421, - IMAGECUBE = 422, - IMAGE1DARRAY = 423, - IMAGE2DARRAY = 424, - IIMAGE1D = 425, - IIMAGE2D = 426, - IIMAGE3D = 427, - IIMAGECUBE = 428, - IIMAGE1DARRAY = 429, - IIMAGE2DARRAY = 430, - UIMAGE1D = 431, - UIMAGE2D = 432, - UIMAGE3D = 433, - UIMAGECUBE = 434, - UIMAGE1DARRAY = 435, - UIMAGE2DARRAY = 436, - IMAGE1DSHADOW = 437, - IMAGE2DSHADOW = 438, - IMAGEBUFFER = 439, - IIMAGEBUFFER = 440, - UIMAGEBUFFER = 441, - ROW_MAJOR = 442 + COLON = 367, + EOL = 368, + INTERFACE = 369, + OUTPUT = 370, + PRAGMA_DEBUG_ON = 371, + PRAGMA_DEBUG_OFF = 372, + PRAGMA_OPTIMIZE_ON = 373, + PRAGMA_OPTIMIZE_OFF = 374, + LAYOUT_TOK = 375, + ASM = 376, + CLASS = 377, + UNION = 378, + ENUM = 379, + TYPEDEF = 380, + TEMPLATE = 381, + THIS = 382, + PACKED_TOK = 383, + GOTO = 384, + INLINE_TOK = 385, + NOINLINE = 386, + VOLATILE = 387, + PUBLIC_TOK = 388, + STATIC = 389, + EXTERN = 390, + EXTERNAL = 391, + LONG_TOK = 392, + SHORT_TOK = 393, + DOUBLE_TOK = 394, + HALF = 395, + FIXED_TOK = 396, + UNSIGNED = 397, + INPUT_TOK = 398, + OUPTUT = 399, + HVEC2 = 400, + HVEC3 = 401, + HVEC4 = 402, + DVEC2 = 403, + DVEC3 = 404, + DVEC4 = 405, + FVEC2 = 406, + FVEC3 = 407, + FVEC4 = 408, + SAMPLER2DRECT = 409, + SAMPLER3DRECT = 410, + SAMPLER2DRECTSHADOW = 411, + SIZEOF = 412, + CAST = 413, + NAMESPACE = 414, + USING = 415, + ERROR_TOK = 416, + COMMON = 417, + PARTITION = 418, + ACTIVE = 419, + SAMPLERBUFFER = 420, + FILTER = 421, + IMAGE1D = 422, + IMAGE2D = 423, + IMAGE3D = 424, + IMAGECUBE = 425, + IMAGE1DARRAY = 426, + IMAGE2DARRAY = 427, + IIMAGE1D = 428, + IIMAGE2D = 429, + IIMAGE3D = 430, + IIMAGECUBE = 431, + IIMAGE1DARRAY = 432, + IIMAGE2DARRAY = 433, + UIMAGE1D = 434, + UIMAGE2D = 435, + UIMAGE3D = 436, + UIMAGECUBE = 437, + UIMAGE1DARRAY = 438, + UIMAGE2DARRAY = 439, + IMAGE1DSHADOW = 440, + IMAGE2DSHADOW = 441, + IMAGEBUFFER = 442, + IIMAGEBUFFER = 443, + UIMAGEBUFFER = 444, + ROW_MAJOR = 445 }; #endif @@ -232,7 +236,7 @@ typedef union YYSTYPE { -/* Line 1685 of yacc.c */ +/* Line 1676 of yacc.c */ #line 52 "glsl_parser.ypp" int n; @@ -263,8 +267,8 @@ typedef union YYSTYPE -/* Line 1685 of yacc.c */ -#line 268 "glsl_parser.h" +/* Line 1676 of yacc.c */ +#line 272 "glsl_parser.h" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ |