From b7e63c34e74ecfb1c4af8132471ca9cb70d28d1f Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Sat, 7 Aug 2010 00:50:08 -0700 Subject: [PATCH] glsl2: Add the 1.30 reserved keywords. --- src/glsl/glsl_lexer.cpp | 1043 +++++++++------ src/glsl/glsl_lexer.lpp | 32 + src/glsl/glsl_parser.cpp | 2645 ++++++++++++++++++++------------------ src/glsl/glsl_parser.h | 143 ++- src/glsl/glsl_parser.ypp | 9 +- 5 files changed, 2162 insertions(+), 1710 deletions(-) diff --git a/src/glsl/glsl_lexer.cpp b/src/glsl/glsl_lexer.cpp index 43be3170ba8..672b0b13599 100644 --- a/src/glsl/glsl_lexer.cpp +++ b/src/glsl/glsl_lexer.cpp @@ -54,6 +54,7 @@ typedef int flex_int32_t; typedef unsigned char flex_uint8_t; typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; +#endif /* ! C99 */ /* Limits of integral types. */ #ifndef INT8_MIN @@ -84,8 +85,6 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif -#endif /* ! C99 */ - #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -159,15 +158,7 @@ typedef void* yyscan_t; /* Size of default input buffer. */ #ifndef YY_BUF_SIZE -#ifdef __ia64__ -/* On IA-64, the buffer size is 16k, not 8k. - * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. - * Ditto for the __ia64__ case accordingly. - */ -#define YY_BUF_SIZE 32768 -#else #define YY_BUF_SIZE 16384 -#endif /* __ia64__ */ #endif /* The state buf must be large enough to hold one state per character in the main buffer. @@ -358,8 +349,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 147 -#define YY_END_OF_BUFFER 148 +#define YY_NUM_RULES 177 +#define YY_END_OF_BUFFER 178 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -367,66 +358,81 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[525] = +static yyconst flex_int16_t yy_accept[668] = { 0, - 0, 0, 9, 9, 148, 146, 1, 14, 146, 146, - 146, 146, 146, 146, 146, 146, 90, 88, 146, 146, - 146, 145, 146, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 146, 1, 146, 85, 147, 9, 13, - 147, 12, 10, 11, 1, 74, 81, 75, 84, 78, + 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, 145, 77, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 22, 145, 145, 145, 145, 145, 145, 145, 145, - - 145, 145, 145, 145, 145, 26, 50, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 86, 76, 1, 0, 0, - 2, 0, 0, 0, 0, 9, 8, 12, 11, 0, - 92, 91, 0, 93, 0, 94, 89, 82, 83, 98, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 25, - 145, 145, 145, 145, 145, 145, 145, 145, 19, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 51, - - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 0, 0, 0, 0, 8, 0, 92, - 0, 91, 0, 93, 94, 145, 17, 145, 145, 138, - 145, 145, 145, 145, 145, 145, 145, 145, 24, 101, - 145, 145, 145, 57, 145, 145, 106, 120, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 117, 141, 38, - 39, 40, 145, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 104, - 96, 145, 145, 145, 145, 145, 145, 35, 36, 37, - - 67, 145, 145, 0, 0, 0, 0, 0, 91, 145, - 20, 29, 30, 31, 145, 99, 16, 145, 145, 145, - 145, 128, 129, 130, 145, 97, 121, 18, 131, 132, - 133, 143, 125, 126, 127, 145, 52, 123, 145, 145, - 32, 33, 34, 145, 145, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 118, 145, 145, - 145, 145, 145, 145, 145, 145, 100, 145, 140, 145, - 145, 23, 0, 0, 0, 0, 145, 145, 145, 145, - 145, 119, 114, 109, 145, 145, 68, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 145, 145, 145, 145, - - 124, 105, 145, 112, 28, 145, 137, 58, 113, 66, - 107, 145, 145, 145, 145, 145, 145, 0, 0, 0, - 0, 145, 145, 145, 108, 27, 145, 145, 145, 142, - 145, 145, 145, 145, 145, 145, 102, 53, 145, 54, - 145, 0, 0, 0, 7, 0, 145, 55, 21, 115, - 145, 145, 145, 110, 145, 145, 145, 145, 145, 145, - 103, 122, 111, 0, 0, 6, 0, 0, 0, 3, - 15, 116, 56, 139, 145, 144, 60, 61, 62, 145, - 0, 0, 0, 0, 145, 145, 145, 145, 145, 145, - 4, 0, 5, 0, 0, 0, 145, 145, 145, 145, - - 145, 63, 0, 145, 145, 145, 145, 145, 59, 145, - 134, 145, 135, 145, 145, 145, 64, 145, 65, 145, - 145, 145, 136, 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 } ; static yyconst flex_int32_t yy_ec[256] = @@ -437,14 +443,14 @@ static yyconst flex_int32_t yy_ec[256] = 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, 25, 26, 27, 28, 29, - 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, - 30, 31, 32, 30, 30, 30, 30, 33, 30, 30, - 1, 1, 1, 34, 30, 1, 35, 36, 37, 38, - - 39, 40, 41, 42, 43, 30, 44, 45, 46, 47, - 48, 49, 30, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 1, 59, 1, 1, 1, 1, 1, 1, + 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -461,342 +467,415 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[60] = +static yyconst flex_int32_t yy_meta[63] = { 0, - 1, 2, 3, 1, 1, 1, 1, 1, 1, 4, - 4, 1, 1, 5, 5, 5, 5, 5, 5, 6, - 1, 1, 1, 1, 7, 7, 7, 8, 8, 9, - 9, 9, 10, 1, 7, 7, 7, 7, 8, 8, - 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, - 9, 9, 9, 9, 9, 10, 9, 9, 1 + 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 } ; -static yyconst flex_int16_t yy_base[542] = +static yyconst flex_int16_t yy_base[678] = { 0, - 0, 58, 81, 0, 814, 815, 59, 815, 790, 789, - 54, 788, 55, 56, 54, 787, 129, 174, 53, 786, - 127, 0, 774, 101, 106, 126, 116, 128, 152, 759, - 161, 158, 128, 142, 131, 753, 166, 766, 175, 181, - 131, 187, 762, 149, 205, 222, 780, 815, 230, 815, - 789, 225, 815, 0, 244, 815, 815, 815, 815, 815, - 815, 815, 815, 815, 223, 815, 225, 200, 265, 218, - 815, 0, 0, 778, 815, 815, 815, 777, 0, 815, - 753, 746, 749, 757, 756, 743, 746, 757, 744, 750, - 738, 735, 748, 735, 732, 732, 738, 726, 132, 731, - - 741, 727, 733, 736, 737, 0, 221, 736, 717, 200, - 721, 734, 725, 225, 718, 732, 729, 731, 714, 719, - 716, 705, 714, 222, 718, 714, 716, 705, 708, 207, - 713, 705, 717, 243, 710, 815, 815, 285, 257, 295, - 815, 696, 708, 700, 710, 288, 0, 298, 0, 226, - 815, 280, 289, 815, 307, 318, 0, 815, 815, 0, - 698, 702, 711, 708, 692, 691, 691, 279, 706, 703, - 703, 701, 698, 690, 696, 683, 694, 680, 696, 0, - 693, 681, 688, 685, 689, 682, 671, 670, 683, 686, - 683, 671, 677, 668, 319, 673, 676, 667, 674, 663, - - 667, 673, 664, 655, 658, 656, 666, 656, 651, 649, - 649, 651, 648, 659, 658, 255, 653, 648, 637, 325, - 655, 657, 646, 638, 642, 653, 637, 0, 336, 328, - 322, 815, 345, 356, 815, 643, 0, 641, 353, 0, - 634, 632, 630, 638, 627, 644, 633, 356, 0, 0, - 627, 637, 637, 0, 622, 359, 0, 0, 624, 362, - 625, 619, 618, 619, 618, 365, 614, 0, 0, 610, - 609, 608, 610, 611, 616, 610, 606, 619, 614, 613, - 605, 609, 601, 604, 599, 607, 612, 611, 602, 0, - 0, 608, 597, 597, 602, 601, 598, 0, 0, 0, - - 0, 588, 600, 599, 598, 595, 584, 372, 383, 598, - 0, 0, 0, 0, 585, 0, 0, 585, 586, 580, - 590, 0, 0, 0, 581, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 588, 0, 0, 586, 582, - 0, 0, 0, 572, 381, 384, 387, 577, 573, 578, - 569, 567, 580, 566, 579, 568, 575, 0, 573, 570, - 574, 558, 567, 573, 568, 556, 0, 558, 0, 557, - 560, 0, 555, 599, 554, 556, 545, 554, 543, 543, - 556, 0, 558, 0, 557, 556, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 541, 554, 541, 538, - - 0, 0, 543, 0, 0, 535, 0, 0, 0, 0, - 0, 532, 543, 536, 542, 539, 534, 527, 411, 542, - 522, 514, 527, 525, 0, 0, 518, 524, 505, 0, - 510, 504, 503, 493, 391, 501, 0, 0, 500, 0, - 480, 465, 407, 343, 815, 457, 449, 0, 0, 0, - 448, 434, 446, 0, 447, 436, 455, 454, 453, 426, - 0, 0, 0, 430, 418, 815, 431, 0, 412, 815, - 0, 0, 0, 0, 425, 0, 444, 387, 444, 438, - 426, 433, 435, 439, 422, 422, 423, 419, 421, 420, - 815, 441, 815, 453, 0, 449, 404, 422, 402, 389, - - 385, 0, 451, 377, 373, 343, 346, 296, 0, 262, - 275, 253, 0, 223, 207, 144, 0, 148, 0, 104, - 32, 11, 0, 815, 485, 491, 497, 501, 506, 508, - 516, 523, 526, 529, 534, 543, 548, 550, 557, 566, - 568 + 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 } ; -static yyconst flex_int16_t yy_def[542] = +static yyconst flex_int16_t yy_def[678] = { 0, - 524, 1, 524, 3, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 525, 524, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 526, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 527, 524, 528, 17, 524, 529, - 524, 530, 18, 524, 524, 524, 524, 524, 525, 524, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 531, 524, 526, 532, - 524, 528, 533, 524, 524, 529, 530, 524, 524, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 524, 524, 524, 524, 531, 524, 532, - 534, 524, 524, 533, 524, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - - 525, 525, 525, 524, 524, 524, 524, 524, 534, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 524, 524, 524, 524, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 524, 524, 524, - 524, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 524, 535, 536, 524, 524, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 524, 537, 524, 524, 538, 536, 524, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 524, 539, 540, 538, 525, 525, 525, 525, 525, 525, - 524, 524, 524, 524, 541, 540, 525, 525, 525, 525, - - 525, 525, 541, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 0, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524 + 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 } ; -static yyconst flex_int16_t yy_nxt[875] = +static yyconst flex_int16_t yy_nxt[1076] = { 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, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 22, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 22, 22, 22, 44, 45, - 55, 58, 55, 46, 61, 523, 63, 65, 65, 65, - 65, 65, 65, 65, 74, 75, 59, 62, 64, 522, - 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, 48, 54, 54, 54, 54, 54, + 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, 48, - 67, 521, 68, 68, 68, 68, 68, 68, 69, 77, - 78, 81, 82, 83, 90, 84, 70, 71, 91, 85, - 86, 72, 109, 92, 87, 113, 178, 70, 71, 93, - 88, 136, 94, 89, 95, 110, 111, 130, 114, 179, - 112, 131, 520, 96, 72, 67, 97, 73, 73, 73, - 73, 73, 73, 73, 98, 103, 99, 106, 519, 100, - - 116, 70, 71, 104, 107, 101, 138, 137, 55, 120, - 139, 108, 70, 71, 105, 117, 121, 122, 118, 126, - 123, 132, 127, 140, 141, 133, 124, 155, 155, 125, - 128, 146, 524, 146, 134, 229, 229, 129, 148, 148, - 148, 148, 148, 148, 148, 55, 193, 55, 518, 216, - 150, 151, 153, 154, 194, 524, 209, 217, 140, 141, - 142, 150, 151, 153, 154, 186, 143, 198, 187, 188, - 144, 210, 189, 199, 190, 145, 67, 517, 69, 69, - 69, 69, 69, 69, 69, 221, 138, 222, 55, 146, - 139, 146, 70, 71, 293, 142, 140, 141, 233, 233, - - 516, 143, 294, 70, 71, 144, 515, 231, 232, 514, - 145, 148, 148, 148, 148, 148, 148, 148, 231, 232, - 156, 156, 156, 156, 156, 156, 156, 524, 524, 243, - 244, 308, 308, 142, 270, 271, 272, 524, 524, 143, - 298, 299, 300, 144, 465, 466, 235, 513, 145, 230, - 230, 230, 230, 230, 230, 230, 151, 235, 234, 234, - 234, 234, 234, 234, 234, 524, 524, 151, 312, 313, - 314, 322, 323, 324, 329, 330, 331, 333, 334, 335, - 341, 342, 343, 512, 154, 309, 309, 309, 309, 309, - 309, 309, 524, 524, 511, 154, 388, 389, 390, 391, - - 392, 393, 394, 395, 396, 457, 458, 459, 465, 466, - 510, 232, 419, 465, 466, 509, 460, 487, 488, 465, - 466, 508, 232, 507, 443, 444, 444, 444, 444, 444, - 444, 482, 465, 466, 492, 493, 492, 493, 506, 468, - 465, 466, 492, 493, 467, 467, 467, 467, 467, 467, - 492, 493, 492, 493, 492, 493, 505, 504, 502, 501, - 500, 499, 468, 498, 497, 495, 494, 494, 494, 494, - 494, 494, 491, 490, 489, 486, 485, 481, 480, 479, - 478, 477, 476, 475, 474, 473, 472, 471, 495, 79, - 79, 79, 79, 79, 79, 149, 149, 149, 149, 149, - - 149, 65, 65, 470, 65, 152, 152, 464, 152, 156, - 156, 156, 157, 157, 157, 157, 228, 228, 463, 228, - 228, 228, 228, 228, 228, 228, 230, 230, 230, 234, - 234, 234, 309, 309, 309, 467, 467, 462, 467, 461, - 456, 455, 454, 467, 469, 469, 453, 469, 469, 483, - 483, 452, 483, 483, 484, 484, 484, 484, 494, 494, - 451, 494, 450, 449, 448, 447, 494, 496, 496, 446, - 496, 496, 503, 503, 503, 503, 445, 442, 441, 440, - 439, 438, 437, 436, 435, 434, 433, 432, 431, 430, - 429, 428, 427, 426, 425, 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, 387, 386, 385, 384, 383, 382, 381, - 380, 379, 378, 377, 376, 375, 374, 373, 372, 371, - 370, 369, 368, 367, 366, 365, 364, 363, 362, 361, - 360, 359, 358, 357, 356, 355, 354, 353, 352, 351, - 350, 349, 348, 347, 346, 345, 344, 340, 339, 338, - 337, 336, 332, 328, 327, 326, 325, 321, 320, 319, - 318, 317, 316, 315, 311, 310, 307, 306, 305, 304, - 303, 302, 301, 297, 296, 295, 292, 291, 290, 289, - - 288, 287, 286, 285, 284, 283, 282, 281, 280, 279, - 278, 277, 276, 275, 274, 273, 269, 268, 267, 266, - 265, 264, 263, 262, 261, 260, 259, 258, 257, 256, - 255, 254, 253, 252, 251, 250, 249, 248, 247, 246, - 245, 242, 241, 240, 239, 238, 237, 236, 227, 226, - 225, 224, 223, 220, 219, 218, 215, 214, 213, 212, - 211, 208, 207, 206, 205, 204, 203, 202, 201, 200, - 197, 196, 195, 192, 191, 185, 184, 183, 182, 181, - 180, 177, 176, 175, 174, 173, 172, 171, 170, 169, - 168, 167, 166, 165, 164, 163, 162, 161, 160, 159, - - 158, 147, 76, 135, 119, 115, 102, 80, 76, 66, - 60, 57, 56, 524, 5, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524 + 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 } ; -static yyconst flex_int16_t yy_chk[875] = +static yyconst flex_int16_t yy_chk[1076] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 522, 14, 15, 15, 15, - 15, 15, 15, 15, 19, 19, 11, 13, 14, 521, - 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 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, 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, 520, 17, 17, 17, 17, 17, 17, 17, 21, - 21, 24, 24, 25, 27, 25, 17, 17, 27, 25, - 26, 17, 33, 27, 26, 35, 99, 17, 17, 27, - 26, 44, 28, 26, 28, 33, 34, 41, 35, 99, - 34, 41, 518, 28, 17, 18, 29, 18, 18, 18, - 18, 18, 18, 18, 29, 31, 29, 32, 516, 29, - - 37, 18, 18, 31, 32, 29, 45, 44, 45, 39, - 45, 32, 18, 18, 31, 37, 39, 39, 37, 40, - 39, 42, 40, 46, 46, 42, 39, 70, 70, 39, - 40, 49, 68, 49, 42, 150, 150, 40, 52, 52, - 52, 52, 52, 52, 52, 55, 110, 55, 515, 130, - 65, 65, 67, 67, 110, 68, 124, 130, 139, 139, - 46, 65, 65, 67, 67, 107, 46, 114, 107, 107, - 46, 124, 107, 114, 107, 46, 69, 514, 69, 69, - 69, 69, 69, 69, 69, 134, 138, 134, 138, 146, - 138, 146, 69, 69, 216, 139, 140, 140, 153, 153, - - 512, 139, 216, 69, 69, 139, 511, 152, 152, 510, - 139, 148, 148, 148, 148, 148, 148, 148, 152, 152, - 155, 155, 155, 155, 155, 155, 155, 156, 156, 168, - 168, 231, 231, 140, 195, 195, 195, 230, 230, 140, - 220, 220, 220, 140, 444, 444, 156, 508, 140, 229, - 229, 229, 229, 229, 229, 229, 230, 156, 233, 233, - 233, 233, 233, 233, 233, 234, 234, 230, 239, 239, - 239, 248, 248, 248, 256, 256, 256, 260, 260, 260, - 266, 266, 266, 507, 234, 308, 308, 308, 308, 308, - 308, 308, 309, 309, 506, 234, 345, 345, 345, 346, - - 346, 346, 347, 347, 347, 435, 435, 435, 443, 443, - 505, 309, 419, 469, 469, 504, 435, 478, 478, 465, - 465, 501, 309, 500, 419, 419, 419, 419, 419, 419, - 419, 465, 467, 467, 482, 482, 483, 483, 499, 443, - 484, 484, 492, 492, 467, 467, 467, 467, 467, 467, - 496, 496, 503, 503, 494, 494, 498, 497, 490, 489, - 488, 487, 443, 486, 485, 482, 494, 494, 494, 494, - 494, 494, 481, 480, 479, 477, 475, 464, 460, 459, - 458, 457, 456, 455, 453, 452, 451, 447, 482, 525, - 525, 525, 525, 525, 525, 526, 526, 526, 526, 526, - - 526, 527, 527, 446, 527, 528, 528, 442, 528, 529, - 529, 529, 530, 530, 530, 530, 531, 531, 441, 531, - 531, 531, 531, 531, 531, 531, 532, 532, 532, 533, - 533, 533, 534, 534, 534, 535, 535, 439, 535, 436, - 434, 433, 432, 535, 536, 536, 431, 536, 536, 537, - 537, 429, 537, 537, 538, 538, 538, 538, 539, 539, - 428, 539, 427, 424, 423, 422, 539, 540, 540, 421, - 540, 540, 541, 541, 541, 541, 420, 418, 417, 416, - 415, 414, 413, 412, 406, 403, 400, 399, 398, 397, - 386, 385, 383, 381, 380, 379, 378, 377, 376, 375, - - 374, 373, 371, 370, 368, 366, 365, 364, 363, 362, - 361, 360, 359, 357, 356, 355, 354, 353, 352, 351, - 350, 349, 348, 344, 340, 339, 336, 325, 321, 320, - 319, 318, 315, 310, 307, 306, 305, 304, 303, 302, - 297, 296, 295, 294, 293, 292, 289, 288, 287, 286, - 285, 284, 283, 282, 281, 280, 279, 278, 277, 276, - 275, 274, 273, 272, 271, 270, 267, 265, 264, 263, - 262, 261, 259, 255, 253, 252, 251, 247, 246, 245, - 244, 243, 242, 241, 238, 236, 227, 226, 225, 224, - 223, 222, 221, 219, 218, 217, 215, 214, 213, 212, - - 211, 210, 209, 208, 207, 206, 205, 204, 203, 202, - 201, 200, 199, 198, 197, 196, 194, 193, 192, 191, - 190, 189, 188, 187, 186, 185, 184, 183, 182, 181, - 179, 178, 177, 176, 175, 174, 173, 172, 171, 170, - 169, 167, 166, 165, 164, 163, 162, 161, 145, 144, - 143, 142, 135, 133, 132, 131, 129, 128, 127, 126, - 125, 123, 122, 121, 120, 119, 118, 117, 116, 115, - 113, 112, 111, 109, 108, 105, 104, 103, 102, 101, - 100, 98, 97, 96, 95, 94, 93, 92, 91, 90, - 89, 88, 87, 86, 85, 84, 83, 82, 81, 78, - - 74, 51, 47, 43, 38, 36, 30, 23, 20, 16, - 12, 10, 9, 5, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524 + 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 } ; /* The intent behind this definition is that it'll catch @@ -856,7 +935,7 @@ static yyconst flex_int16_t yy_chk[875] = } while (0) -#line 860 "glsl_lexer.cpp" +#line 939 "glsl_lexer.cpp" #define INITIAL 0 #define PP 1 @@ -990,12 +1069,7 @@ static int input (yyscan_t yyscanner ); /* Amount of stuff to slurp up with each read. */ #ifndef YY_READ_BUF_SIZE -#ifdef __ia64__ -/* On IA-64, the buffer size is 16k, not 8k */ -#define YY_READ_BUF_SIZE 16384 -#else #define YY_READ_BUF_SIZE 8192 -#endif /* __ia64__ */ #endif /* Copy whatever the last rule matched to the standard output. */ @@ -1003,7 +1077,7 @@ static int input (yyscan_t yyscanner ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) +#define ECHO fwrite( yytext, yyleng, 1, yyout ) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1014,7 +1088,7 @@ static int input (yyscan_t yyscanner ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - size_t n; \ + int n; \ for ( n = 0; n < max_size && \ (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -1105,7 +1179,7 @@ YY_DECL #line 66 "glsl_lexer.lpp" -#line 1109 "glsl_lexer.cpp" +#line 1183 "glsl_lexer.cpp" yylval = yylval_param; @@ -1163,13 +1237,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 >= 525 ) + if ( yy_current_state >= 668 ) 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 != 524 ); + while ( yy_current_state != 667 ); yy_cp = yyg->yy_last_accepting_cpos; yy_current_state = yyg->yy_last_accepting_state; @@ -1994,9 +2068,160 @@ YY_RULE_SETUP #line 303 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, PRECISION); YY_BREAK +/* Additional reserved words in GLSL 1.30. */ case 145: YY_RULE_SETUP -#line 305 "glsl_lexer.lpp" +#line 306 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, COMMON); + YY_BREAK +case 146: +YY_RULE_SETUP +#line 307 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, PARTITION); + YY_BREAK +case 147: +YY_RULE_SETUP +#line 308 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, ACTIVE); + YY_BREAK +case 148: +YY_RULE_SETUP +#line 309 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, SUPERP); + YY_BREAK +case 149: +YY_RULE_SETUP +#line 310 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, SAMPLERBUFFER); + YY_BREAK +case 150: +YY_RULE_SETUP +#line 311 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, FILTER); + YY_BREAK +case 151: +YY_RULE_SETUP +#line 312 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGE1D); + YY_BREAK +case 152: +YY_RULE_SETUP +#line 313 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGE2D); + YY_BREAK +case 153: +YY_RULE_SETUP +#line 314 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGE3D); + YY_BREAK +case 154: +YY_RULE_SETUP +#line 315 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGECUBE); + YY_BREAK +case 155: +YY_RULE_SETUP +#line 316 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IIMAGE1D); + YY_BREAK +case 156: +YY_RULE_SETUP +#line 317 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IIMAGE2D); + YY_BREAK +case 157: +YY_RULE_SETUP +#line 318 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IIMAGE3D); + YY_BREAK +case 158: +YY_RULE_SETUP +#line 319 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IIMAGECUBE); + YY_BREAK +case 159: +YY_RULE_SETUP +#line 320 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, UIMAGE1D); + YY_BREAK +case 160: +YY_RULE_SETUP +#line 321 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, UIMAGE2D); + YY_BREAK +case 161: +YY_RULE_SETUP +#line 322 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, UIMAGE3D); + YY_BREAK +case 162: +YY_RULE_SETUP +#line 323 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, UIMAGECUBE); + YY_BREAK +case 163: +YY_RULE_SETUP +#line 324 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGE1DARRAY); + YY_BREAK +case 164: +YY_RULE_SETUP +#line 325 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGE2DARRAY); + YY_BREAK +case 165: +YY_RULE_SETUP +#line 326 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IIMAGE1DARRAY); + YY_BREAK +case 166: +YY_RULE_SETUP +#line 327 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IIMAGE2DARRAY); + YY_BREAK +case 167: +YY_RULE_SETUP +#line 328 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, UIMAGE1DARRAY); + YY_BREAK +case 168: +YY_RULE_SETUP +#line 329 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, UIMAGE2DARRAY); + YY_BREAK +case 169: +YY_RULE_SETUP +#line 330 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGE1DSHADOW); + YY_BREAK +case 170: +YY_RULE_SETUP +#line 331 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGE2DSHADOW); + YY_BREAK +case 171: +YY_RULE_SETUP +#line 332 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IMAGEBUFFER); + YY_BREAK +case 172: +YY_RULE_SETUP +#line 333 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, IIMAGEBUFFER); + YY_BREAK +case 173: +YY_RULE_SETUP +#line 334 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, UIMAGEBUFFER); + YY_BREAK +case 174: +YY_RULE_SETUP +#line 335 "glsl_lexer.lpp" +TOKEN_OR_IDENTIFIER(130, ROW_MAJOR); + YY_BREAK +case 175: +YY_RULE_SETUP +#line 337 "glsl_lexer.lpp" { struct _mesa_glsl_parse_state *state = yyextra; void *ctx = state; @@ -2004,17 +2229,17 @@ YY_RULE_SETUP return IDENTIFIER; } YY_BREAK -case 146: +case 176: YY_RULE_SETUP -#line 312 "glsl_lexer.lpp" +#line 344 "glsl_lexer.lpp" { return yytext[0]; } YY_BREAK -case 147: +case 177: YY_RULE_SETUP -#line 314 "glsl_lexer.lpp" +#line 346 "glsl_lexer.lpp" ECHO; YY_BREAK -#line 2018 "glsl_lexer.cpp" +#line 2243 "glsl_lexer.cpp" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(PP): yyterminate(); @@ -2311,7 +2536,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 >= 525 ) + if ( yy_current_state >= 668 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2340,11 +2565,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 >= 525 ) + if ( yy_current_state >= 668 ) 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 == 524); + yy_is_jam = (yy_current_state == 667); return yy_is_jam ? 0 : yy_current_state; } @@ -2749,8 +2974,8 @@ YY_BUFFER_STATE _mesa_glsl__scan_string (yyconst char * yystr , yyscan_t yyscann /** Setup the input buffer state to scan the given bytes. The next call to _mesa_glsl_lex() will * scan from a @e copy of @a bytes. - * @param yybytes the byte buffer to scan - * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. + * @param bytes the byte buffer to scan + * @param len the number of bytes in the buffer pointed to by @a bytes. * @param yyscanner The scanner object. * @return the newly allocated buffer state object. */ @@ -3156,7 +3381,7 @@ void _mesa_glsl_free (void * ptr , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#line 314 "glsl_lexer.lpp" +#line 346 "glsl_lexer.lpp" diff --git a/src/glsl/glsl_lexer.lpp b/src/glsl/glsl_lexer.lpp index 9fd9b53c5c6..b78df5d84ff 100644 --- a/src/glsl/glsl_lexer.lpp +++ b/src/glsl/glsl_lexer.lpp @@ -302,6 +302,38 @@ mediump TOKEN_OR_IDENTIFIER(120, MEDIUMP); highp TOKEN_OR_IDENTIFIER(120, HIGHP); precision TOKEN_OR_IDENTIFIER(120, PRECISION); + /* Additional reserved words in GLSL 1.30. */ +common TOKEN_OR_IDENTIFIER(130, COMMON); +partition TOKEN_OR_IDENTIFIER(130, PARTITION); +active TOKEN_OR_IDENTIFIER(130, ACTIVE); +superp TOKEN_OR_IDENTIFIER(130, SUPERP); +samplerBuffer TOKEN_OR_IDENTIFIER(130, SAMPLERBUFFER); +filter TOKEN_OR_IDENTIFIER(130, FILTER); +image1D TOKEN_OR_IDENTIFIER(130, IMAGE1D); +image2D TOKEN_OR_IDENTIFIER(130, IMAGE2D); +image3D TOKEN_OR_IDENTIFIER(130, IMAGE3D); +imageCube TOKEN_OR_IDENTIFIER(130, IMAGECUBE); +iimage1D TOKEN_OR_IDENTIFIER(130, IIMAGE1D); +iimage2D TOKEN_OR_IDENTIFIER(130, IIMAGE2D); +iimage3D TOKEN_OR_IDENTIFIER(130, IIMAGE3D); +iimageCube TOKEN_OR_IDENTIFIER(130, IIMAGECUBE); +uimage1D TOKEN_OR_IDENTIFIER(130, UIMAGE1D); +uimage2D TOKEN_OR_IDENTIFIER(130, UIMAGE2D); +uimage3D TOKEN_OR_IDENTIFIER(130, UIMAGE3D); +uimageCube TOKEN_OR_IDENTIFIER(130, UIMAGECUBE); +image1DArray TOKEN_OR_IDENTIFIER(130, IMAGE1DARRAY); +image2DArray TOKEN_OR_IDENTIFIER(130, IMAGE2DARRAY); +iimage1DArray TOKEN_OR_IDENTIFIER(130, IIMAGE1DARRAY); +iimage2DArray TOKEN_OR_IDENTIFIER(130, IIMAGE2DARRAY); +uimage1DArray TOKEN_OR_IDENTIFIER(130, UIMAGE1DARRAY); +uimage2DArray TOKEN_OR_IDENTIFIER(130, UIMAGE2DARRAY); +image1DShadow TOKEN_OR_IDENTIFIER(130, IMAGE1DSHADOW); +image2DShadow TOKEN_OR_IDENTIFIER(130, IMAGE2DSHADOW); +imageBuffer TOKEN_OR_IDENTIFIER(130, IMAGEBUFFER); +iimageBuffer TOKEN_OR_IDENTIFIER(130, IIMAGEBUFFER); +uimageBuffer TOKEN_OR_IDENTIFIER(130, UIMAGEBUFFER); +row_major TOKEN_OR_IDENTIFIER(130, ROW_MAJOR); + [_a-zA-Z][_a-zA-Z0-9]* { struct _mesa_glsl_parse_state *state = yyextra; void *ctx = state; diff --git a/src/glsl/glsl_parser.cpp b/src/glsl/glsl_parser.cpp index bf83b81603f..4b5e3614df6 100644 --- a/src/glsl/glsl_parser.cpp +++ b/src/glsl/glsl_parser.cpp @@ -1,10 +1,9 @@ - -/* A Bison parser, made by GNU Bison 2.4.1. */ +/* A Bison parser, made by GNU Bison 2.4.2. */ /* Skeleton implementation for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2006, 2009-2010 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 @@ -46,7 +45,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.1" +#define YYBISON_VERSION "2.4.2" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -114,7 +113,7 @@ /* Line 189 of yacc.c */ -#line 118 "glsl_parser.cpp" +#line 117 "glsl_parser.cpp" /* Enabling traces. */ #ifndef YYDEBUG @@ -248,56 +247,86 @@ LOWP = 362, MEDIUMP = 363, HIGHP = 364, - PRECISION = 365, - VERSION = 366, - EXTENSION = 367, - LINE = 368, - PRAGMA = 369, - COLON = 370, - EOL = 371, - INTERFACE = 372, - OUTPUT = 373, - LAYOUT_TOK = 374, - ASM = 375, - CLASS = 376, - UNION = 377, - ENUM = 378, - TYPEDEF = 379, - TEMPLATE = 380, - THIS = 381, - PACKED = 382, - GOTO = 383, - INLINE_TOK = 384, - NOINLINE = 385, - VOLATILE = 386, - PUBLIC_TOK = 387, - STATIC = 388, - EXTERN = 389, - EXTERNAL = 390, - LONG = 391, - SHORT = 392, - DOUBLE = 393, - HALF = 394, - FIXED = 395, - UNSIGNED = 396, - INPUT = 397, - OUPTUT = 398, - HVEC2 = 399, - HVEC3 = 400, - HVEC4 = 401, - DVEC2 = 402, - DVEC3 = 403, - DVEC4 = 404, - FVEC2 = 405, - FVEC3 = 406, - FVEC4 = 407, - SAMPLER2DRECT = 408, - SAMPLER3DRECT = 409, - SAMPLER2DRECTSHADOW = 410, - SIZEOF = 411, - CAST = 412, - NAMESPACE = 413, - USING = 414 + SUPERP = 365, + PRECISION = 366, + VERSION = 367, + EXTENSION = 368, + LINE = 369, + PRAGMA = 370, + COLON = 371, + EOL = 372, + INTERFACE = 373, + OUTPUT = 374, + LAYOUT_TOK = 375, + ASM = 376, + CLASS = 377, + UNION = 378, + ENUM = 379, + TYPEDEF = 380, + TEMPLATE = 381, + THIS = 382, + PACKED = 383, + GOTO = 384, + INLINE_TOK = 385, + NOINLINE = 386, + VOLATILE = 387, + PUBLIC_TOK = 388, + STATIC = 389, + EXTERN = 390, + EXTERNAL = 391, + LONG = 392, + SHORT = 393, + DOUBLE = 394, + HALF = 395, + FIXED = 396, + UNSIGNED = 397, + INPUT = 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, + COMMON = 416, + PARTITION = 417, + ACTIVE = 418, + SAMPLERBUFFER = 419, + FILTER = 420, + IMAGE1D = 421, + IMAGE2D = 422, + IMAGE3D = 423, + IMAGECUBE = 424, + IMAGE1DARRAY = 425, + IMAGE2DARRAY = 426, + IIMAGE1D = 427, + IIMAGE2D = 428, + IIMAGE3D = 429, + IIMAGECUBE = 430, + IIMAGE1DARRAY = 431, + IIMAGE2DARRAY = 432, + UIMAGE1D = 433, + UIMAGE2D = 434, + UIMAGE3D = 435, + UIMAGECUBE = 436, + UIMAGE1DARRAY = 437, + UIMAGE2DARRAY = 438, + IMAGE1DSHADOW = 439, + IMAGE2DSHADOW = 440, + IMAGEBUFFER = 441, + IIMAGEBUFFER = 442, + UIMAGEBUFFER = 443, + ROW_MAJOR = 444 }; #endif @@ -339,7 +368,7 @@ typedef union YYSTYPE /* Line 214 of yacc.c */ -#line 343 "glsl_parser.cpp" +#line 372 "glsl_parser.cpp" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -364,7 +393,7 @@ typedef struct YYLTYPE /* Line 264 of yacc.c */ -#line 368 "glsl_parser.cpp" +#line 397 "glsl_parser.cpp" #ifdef short # undef short @@ -414,7 +443,7 @@ typedef short int yytype_int16; #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #ifndef YY_ -# if YYENABLE_NLS +# if defined YYENABLE_NLS && YYENABLE_NLS # if ENABLE_NLS # include /* INFRINGES ON USER NAME SPACE */ # define YY_(msgid) dgettext ("bison-runtime", msgid) @@ -581,10 +610,10 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 3839 +#define YYLAST 4373 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 184 +#define YYNTOKENS 214 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 89 /* YYNRULES -- Number of rules. */ @@ -594,7 +623,7 @@ union yyalloc /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 414 +#define YYMAXUTOK 444 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -605,16 +634,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, 168, 2, 2, 2, 172, 175, 2, - 160, 161, 170, 166, 165, 167, 164, 171, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 179, 181, - 173, 180, 174, 178, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 198, 2, 2, 2, 202, 205, 2, + 190, 191, 200, 196, 195, 197, 194, 201, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 209, 211, + 203, 210, 204, 208, 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, 162, 2, 163, 176, 2, 2, 2, 2, 2, + 2, 192, 2, 193, 206, 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, 182, 177, 183, 169, 2, 2, 2, + 2, 2, 2, 212, 207, 213, 199, 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, @@ -643,7 +672,10 @@ static const yytype_uint8 yytranslate[] = 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, - 155, 156, 157, 158, 159 + 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, 188, 189 }; #if YYDEBUG @@ -684,119 +716,119 @@ static const yytype_uint16 yyprhs[] = /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 185, 0, -1, -1, 187, 188, 186, 190, -1, -1, - 111, 81, 116, -1, -1, 188, 189, -1, 112, 79, - 115, 79, 116, -1, 271, -1, 190, 271, -1, 79, - -1, 191, -1, 81, -1, 82, -1, 80, -1, 83, - -1, 160, 218, 161, -1, 192, -1, 193, 162, 194, - 163, -1, 195, -1, 193, 164, 79, -1, 193, 87, - -1, 193, 88, -1, 218, -1, 196, -1, 197, -1, - 193, 164, 197, -1, 199, 161, -1, 198, 161, -1, - 200, 77, -1, 200, -1, 200, 216, -1, 199, 165, - 216, -1, 201, 160, -1, 240, -1, 79, -1, 84, - -1, 193, -1, 87, 202, -1, 88, 202, -1, 203, - 202, -1, 166, -1, 167, -1, 168, -1, 169, -1, - 202, -1, 204, 170, 202, -1, 204, 171, 202, -1, - 204, 172, 202, -1, 204, -1, 205, 166, 204, -1, - 205, 167, 204, -1, 205, -1, 206, 85, 205, -1, - 206, 86, 205, -1, 206, -1, 207, 173, 206, -1, - 207, 174, 206, -1, 207, 89, 206, -1, 207, 90, - 206, -1, 207, -1, 208, 91, 207, -1, 208, 92, - 207, -1, 208, -1, 209, 175, 208, -1, 209, -1, - 210, 176, 209, -1, 210, -1, 211, 177, 210, -1, - 211, -1, 212, 93, 211, -1, 212, -1, 213, 95, - 212, -1, 213, -1, 214, 94, 213, -1, 214, -1, - 214, 178, 218, 179, 216, -1, 215, -1, 202, 217, - 216, -1, 180, -1, 96, -1, 97, -1, 99, -1, + 215, 0, -1, -1, 217, 218, 216, 220, -1, -1, + 112, 81, 117, -1, -1, 218, 219, -1, 113, 79, + 116, 79, 117, -1, 301, -1, 220, 301, -1, 79, + -1, 221, -1, 81, -1, 82, -1, 80, -1, 83, + -1, 190, 248, 191, -1, 222, -1, 223, 192, 224, + 193, -1, 225, -1, 223, 194, 79, -1, 223, 87, + -1, 223, 88, -1, 248, -1, 226, -1, 227, -1, + 223, 194, 227, -1, 229, 191, -1, 228, 191, -1, + 230, 77, -1, 230, -1, 230, 246, -1, 229, 195, + 246, -1, 231, 190, -1, 270, -1, 79, -1, 84, + -1, 223, -1, 87, 232, -1, 88, 232, -1, 233, + 232, -1, 196, -1, 197, -1, 198, -1, 199, -1, + 232, -1, 234, 200, 232, -1, 234, 201, 232, -1, + 234, 202, 232, -1, 234, -1, 235, 196, 234, -1, + 235, 197, 234, -1, 235, -1, 236, 85, 235, -1, + 236, 86, 235, -1, 236, -1, 237, 203, 236, -1, + 237, 204, 236, -1, 237, 89, 236, -1, 237, 90, + 236, -1, 237, -1, 238, 91, 237, -1, 238, 92, + 237, -1, 238, -1, 239, 205, 238, -1, 239, -1, + 240, 206, 239, -1, 240, -1, 241, 207, 240, -1, + 241, -1, 242, 93, 241, -1, 242, -1, 243, 95, + 242, -1, 243, -1, 244, 94, 243, -1, 244, -1, + 244, 208, 248, 209, 246, -1, 245, -1, 232, 247, + 246, -1, 210, -1, 96, -1, 97, -1, 99, -1, 98, -1, 105, -1, 100, -1, 101, -1, 102, -1, - 103, -1, 104, -1, 216, -1, 218, 165, 216, -1, - 215, -1, 221, 181, -1, 229, 181, -1, 110, 244, - 241, 181, -1, 222, 161, -1, 224, -1, 223, -1, - 224, 226, -1, 223, 165, 226, -1, 231, 79, 160, - -1, 240, 79, -1, 240, 79, 162, 219, 163, -1, - 237, 227, 225, -1, 227, 225, -1, 237, 227, 228, - -1, 227, 228, -1, -1, 36, -1, 37, -1, 38, - -1, 240, -1, 230, -1, 229, 165, 79, -1, 229, - 165, 79, 162, 163, -1, 229, 165, 79, 162, 219, - 163, -1, 229, 165, 79, 162, 163, 180, 250, -1, - 229, 165, 79, 162, 219, 163, 180, 250, -1, 229, - 165, 79, 180, 250, -1, 231, -1, 231, 79, -1, - 231, 79, 162, 163, -1, 231, 79, 162, 219, 163, - -1, 231, 79, 162, 163, 180, 250, -1, 231, 79, - 162, 219, 163, 180, 250, -1, 231, 79, 180, 250, - -1, 106, 79, -1, 240, -1, 238, 240, -1, -1, - 233, -1, 119, 160, 234, 161, -1, 235, -1, 234, - 165, 235, -1, 79, -1, 43, -1, 42, -1, 41, - -1, 4, -1, 239, -1, 236, 238, -1, 106, 238, - -1, 4, -1, 3, -1, 232, 40, -1, 35, 40, - -1, 232, 36, -1, 37, -1, 35, 36, -1, 35, - 37, -1, 39, -1, 241, -1, 244, 241, -1, 242, - -1, 242, 162, 163, -1, 242, 162, 219, 163, -1, - 243, -1, 245, -1, 79, -1, 77, -1, 6, -1, + 103, -1, 104, -1, 246, -1, 248, 195, 246, -1, + 245, -1, 251, 211, -1, 259, 211, -1, 111, 274, + 271, 211, -1, 252, 191, -1, 254, -1, 253, -1, + 254, 256, -1, 253, 195, 256, -1, 261, 79, 190, + -1, 270, 79, -1, 270, 79, 192, 249, 193, -1, + 267, 257, 255, -1, 257, 255, -1, 267, 257, 258, + -1, 257, 258, -1, -1, 36, -1, 37, -1, 38, + -1, 270, -1, 260, -1, 259, 195, 79, -1, 259, + 195, 79, 192, 193, -1, 259, 195, 79, 192, 249, + 193, -1, 259, 195, 79, 192, 193, 210, 280, -1, + 259, 195, 79, 192, 249, 193, 210, 280, -1, 259, + 195, 79, 210, 280, -1, 261, -1, 261, 79, -1, + 261, 79, 192, 193, -1, 261, 79, 192, 249, 193, + -1, 261, 79, 192, 193, 210, 280, -1, 261, 79, + 192, 249, 193, 210, 280, -1, 261, 79, 210, 280, + -1, 106, 79, -1, 270, -1, 268, 270, -1, -1, + 263, -1, 120, 190, 264, 191, -1, 265, -1, 264, + 195, 265, -1, 79, -1, 43, -1, 42, -1, 41, + -1, 4, -1, 269, -1, 266, 268, -1, 106, 268, + -1, 4, -1, 3, -1, 262, 40, -1, 35, 40, + -1, 262, 36, -1, 37, -1, 35, 36, -1, 35, + 37, -1, 39, -1, 271, -1, 274, 271, -1, 272, + -1, 272, 192, 193, -1, 272, 192, 249, 193, -1, + 273, -1, 275, -1, 79, -1, 77, -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, 32, -1, 33, -1, 34, -1, 44, -1, 45, -1, 46, -1, 47, -1, 48, -1, 49, -1, 50, -1, - 51, -1, 52, -1, 53, -1, 54, -1, 153, -1, - 55, -1, 56, -1, 57, -1, 58, -1, 155, -1, + 51, -1, 52, -1, 53, -1, 54, -1, 154, -1, + 55, -1, 56, -1, 57, -1, 58, -1, 156, -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, 73, -1, 74, -1, 75, -1, 109, -1, 108, -1, 107, -1, - 76, 79, 182, 246, 183, -1, 76, 182, 246, 183, - -1, 247, -1, 246, 247, -1, 240, 248, 181, -1, - 249, -1, 248, 165, 249, -1, 79, -1, 79, 162, - 219, 163, -1, 216, -1, 220, -1, 253, -1, 254, - -1, 256, -1, 255, -1, 262, -1, 251, -1, 260, - -1, 261, -1, 264, -1, 265, -1, 266, -1, 270, - -1, 182, 183, -1, 182, 259, 183, -1, 258, -1, - 255, -1, 182, 183, -1, 182, 259, 183, -1, 252, - -1, 259, 252, -1, 181, -1, 218, 181, -1, 14, - 160, 218, 161, 253, 12, 253, -1, 14, 160, 218, - 161, 253, -1, 14, 160, 218, 161, 254, -1, 14, - 160, 218, 161, 253, 12, 254, -1, 218, -1, 231, - 79, 180, 250, -1, 17, 160, 218, 161, 256, -1, - 18, 218, 179, -1, 19, 179, -1, 78, 160, 263, - 161, 257, -1, 11, 252, 78, 160, 218, 161, 181, - -1, 13, 160, 267, 269, 161, 257, -1, 260, -1, - 251, -1, 263, -1, -1, 268, 181, -1, 268, 181, - 218, -1, 10, 181, -1, 9, 181, -1, 16, 181, - -1, 16, 218, 181, -1, 15, 181, -1, 272, -1, - 220, -1, 221, 258, -1 + 76, 79, 212, 276, 213, -1, 76, 212, 276, 213, + -1, 277, -1, 276, 277, -1, 270, 278, 211, -1, + 279, -1, 278, 195, 279, -1, 79, -1, 79, 192, + 249, 193, -1, 246, -1, 250, -1, 283, -1, 284, + -1, 286, -1, 285, -1, 292, -1, 281, -1, 290, + -1, 291, -1, 294, -1, 295, -1, 296, -1, 300, + -1, 212, 213, -1, 212, 289, 213, -1, 288, -1, + 285, -1, 212, 213, -1, 212, 289, 213, -1, 282, + -1, 289, 282, -1, 211, -1, 248, 211, -1, 14, + 190, 248, 191, 283, 12, 283, -1, 14, 190, 248, + 191, 283, -1, 14, 190, 248, 191, 284, -1, 14, + 190, 248, 191, 283, 12, 284, -1, 248, -1, 261, + 79, 210, 280, -1, 17, 190, 248, 191, 286, -1, + 18, 248, 209, -1, 19, 209, -1, 78, 190, 293, + 191, 287, -1, 11, 282, 78, 190, 248, 191, 211, + -1, 13, 190, 297, 299, 191, 287, -1, 290, -1, + 281, -1, 293, -1, -1, 298, 211, -1, 298, 211, + 248, -1, 10, 211, -1, 9, 211, -1, 16, 211, + -1, 16, 248, 211, -1, 15, 211, -1, 302, -1, + 250, -1, 251, 288, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 193, 193, 192, 201, 204, 221, 223, 227, 236, - 244, 255, 259, 266, 273, 280, 287, 294, 301, 302, - 308, 312, 319, 325, 334, 338, 342, 343, 352, 353, - 357, 358, 362, 368, 380, 384, 390, 397, 408, 409, - 415, 421, 431, 432, 433, 434, 438, 439, 445, 451, - 460, 461, 467, 476, 477, 483, 492, 493, 499, 505, - 511, 520, 521, 527, 536, 537, 546, 547, 556, 557, - 566, 567, 576, 577, 586, 587, 596, 597, 606, 607, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, - 626, 630, 634, 650, 654, 658, 662, 676, 680, 681, - 685, 690, 698, 709, 719, 734, 741, 746, 757, 769, - 770, 771, 772, 776, 780, 781, 790, 799, 808, 817, - 826, 839, 850, 859, 868, 877, 886, 895, 904, 918, - 925, 936, 937, 941, 948, 949, 956, 990, 991, 992, - 996, 1000, 1001, 1005, 1013, 1014, 1015, 1016, 1017, 1018, - 1019, 1020, 1021, 1025, 1026, 1034, 1035, 1041, 1050, 1056, - 1062, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, - 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 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, 1128, 1139, 1150, 1164, 1170, - 1179, 1184, 1192, 1207, 1212, 1220, 1226, 1235, 1239, 1245, - 1246, 1250, 1251, 1255, 1259, 1260, 1261, 1262, 1263, 1264, - 1265, 1269, 1275, 1284, 1285, 1289, 1295, 1304, 1314, 1326, - 1332, 1341, 1350, 1356, 1362, 1371, 1375, 1389, 1393, 1394, - 1398, 1405, 1412, 1422, 1423, 1427, 1429, 1435, 1440, 1449, - 1455, 1461, 1467, 1473, 1482, 1483, 1487 + 0, 200, 200, 199, 208, 211, 228, 230, 234, 243, + 251, 262, 266, 273, 280, 287, 294, 301, 308, 309, + 315, 319, 326, 332, 341, 345, 349, 350, 359, 360, + 364, 365, 369, 375, 387, 391, 397, 404, 415, 416, + 422, 428, 438, 439, 440, 441, 445, 446, 452, 458, + 467, 468, 474, 483, 484, 490, 499, 500, 506, 512, + 518, 527, 528, 534, 543, 544, 553, 554, 563, 564, + 573, 574, 583, 584, 593, 594, 603, 604, 613, 614, + 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, + 633, 637, 641, 657, 661, 665, 669, 683, 687, 688, + 692, 697, 705, 716, 726, 741, 748, 753, 764, 776, + 777, 778, 779, 783, 787, 788, 797, 806, 815, 824, + 833, 846, 857, 866, 875, 884, 893, 902, 911, 925, + 932, 943, 944, 948, 955, 956, 963, 997, 998, 999, + 1003, 1007, 1008, 1012, 1020, 1021, 1022, 1023, 1024, 1025, + 1026, 1027, 1028, 1032, 1033, 1041, 1042, 1048, 1057, 1063, + 1069, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, + 1087, 1088, 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, 1135, 1146, 1157, 1171, 1177, + 1186, 1191, 1199, 1214, 1219, 1227, 1233, 1242, 1246, 1252, + 1253, 1257, 1258, 1262, 1266, 1267, 1268, 1269, 1270, 1271, + 1272, 1276, 1282, 1291, 1292, 1296, 1302, 1311, 1321, 1333, + 1339, 1348, 1357, 1363, 1369, 1378, 1382, 1396, 1400, 1401, + 1405, 1412, 1419, 1429, 1430, 1434, 1436, 1442, 1447, 1456, + 1462, 1468, 1474, 1480, 1489, 1490, 1494 }; #endif @@ -824,18 +856,25 @@ static const char *const yytname[] = "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP", "XOR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "ADD_ASSIGN", "MOD_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN", "SUB_ASSIGN", "INVARIANT", - "LOWP", "MEDIUMP", "HIGHP", "PRECISION", "VERSION", "EXTENSION", "LINE", - "PRAGMA", "COLON", "EOL", "INTERFACE", "OUTPUT", "LAYOUT_TOK", "ASM", - "CLASS", "UNION", "ENUM", "TYPEDEF", "TEMPLATE", "THIS", "PACKED", - "GOTO", "INLINE_TOK", "NOINLINE", "VOLATILE", "PUBLIC_TOK", "STATIC", - "EXTERN", "EXTERNAL", "LONG", "SHORT", "DOUBLE", "HALF", "FIXED", - "UNSIGNED", "INPUT", "OUPTUT", "HVEC2", "HVEC3", "HVEC4", "DVEC2", - "DVEC3", "DVEC4", "FVEC2", "FVEC3", "FVEC4", "SAMPLER2DRECT", - "SAMPLER3DRECT", "SAMPLER2DRECTSHADOW", "SIZEOF", "CAST", "NAMESPACE", - "USING", "'('", "')'", "'['", "']'", "'.'", "','", "'+'", "'-'", "'!'", - "'~'", "'*'", "'/'", "'%'", "'<'", "'>'", "'&'", "'^'", "'|'", "'?'", - "':'", "'='", "';'", "'{'", "'}'", "$accept", "translation_unit", "$@1", - "version_statement", "extension_statement_list", "extension_statement", + "LOWP", "MEDIUMP", "HIGHP", "SUPERP", "PRECISION", "VERSION", + "EXTENSION", "LINE", "PRAGMA", "COLON", "EOL", "INTERFACE", "OUTPUT", + "LAYOUT_TOK", "ASM", "CLASS", "UNION", "ENUM", "TYPEDEF", "TEMPLATE", + "THIS", "PACKED", "GOTO", "INLINE_TOK", "NOINLINE", "VOLATILE", + "PUBLIC_TOK", "STATIC", "EXTERN", "EXTERNAL", "LONG", "SHORT", "DOUBLE", + "HALF", "FIXED", "UNSIGNED", "INPUT", "OUPTUT", "HVEC2", "HVEC3", + "HVEC4", "DVEC2", "DVEC3", "DVEC4", "FVEC2", "FVEC3", "FVEC4", + "SAMPLER2DRECT", "SAMPLER3DRECT", "SAMPLER2DRECTSHADOW", "SIZEOF", + "CAST", "NAMESPACE", "USING", "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_statement_list", "extension_statement", "external_declaration_list", "variable_identifier", "primary_expression", "postfix_expression", "integer_expression", "function_call", "function_call_or_method", "function_call_generic", @@ -892,6 +931,9 @@ static const yytype_uint16 yytoknum[] = 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 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, 443, 444, 40, 41, 91, 93, 46, 44, 43, 45, 33, 126, 42, 47, 37, 60, 62, 38, 94, 124, 63, 58, 61, 59, 123, 125 @@ -901,34 +943,34 @@ static const yytype_uint16 yytoknum[] = /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 184, 186, 185, 187, 187, 188, 188, 189, 190, - 190, 191, 192, 192, 192, 192, 192, 192, 193, 193, - 193, 193, 193, 193, 194, 195, 196, 196, 197, 197, - 198, 198, 199, 199, 200, 201, 201, 201, 202, 202, - 202, 202, 203, 203, 203, 203, 204, 204, 204, 204, - 205, 205, 205, 206, 206, 206, 207, 207, 207, 207, - 207, 208, 208, 208, 209, 209, 210, 210, 211, 211, - 212, 212, 213, 213, 214, 214, 215, 215, 216, 216, - 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, - 217, 218, 218, 219, 220, 220, 220, 221, 222, 222, - 223, 223, 224, 225, 225, 226, 226, 226, 226, 227, - 227, 227, 227, 228, 229, 229, 229, 229, 229, 229, - 229, 230, 230, 230, 230, 230, 230, 230, 230, 231, - 231, 232, 232, 233, 234, 234, 235, 236, 236, 236, - 237, 238, 238, 238, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 240, 240, 241, 241, 241, 242, 242, - 242, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 244, 244, 244, 245, 245, - 246, 246, 247, 248, 248, 249, 249, 250, 251, 252, - 252, 253, 253, 254, 255, 255, 255, 255, 255, 255, - 255, 256, 256, 257, 257, 258, 258, 259, 259, 260, - 260, 261, 262, 262, 262, 263, 263, 264, 265, 265, - 266, 266, 266, 267, 267, 268, 268, 269, 269, 270, - 270, 270, 270, 270, 271, 271, 272 + 0, 214, 216, 215, 217, 217, 218, 218, 219, 220, + 220, 221, 222, 222, 222, 222, 222, 222, 223, 223, + 223, 223, 223, 223, 224, 225, 226, 226, 227, 227, + 228, 228, 229, 229, 230, 231, 231, 231, 232, 232, + 232, 232, 233, 233, 233, 233, 234, 234, 234, 234, + 235, 235, 235, 236, 236, 236, 237, 237, 237, 237, + 237, 238, 238, 238, 239, 239, 240, 240, 241, 241, + 242, 242, 243, 243, 244, 244, 245, 245, 246, 246, + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, + 247, 248, 248, 249, 250, 250, 250, 251, 252, 252, + 253, 253, 254, 255, 255, 256, 256, 256, 256, 257, + 257, 257, 257, 258, 259, 259, 259, 259, 259, 259, + 259, 260, 260, 260, 260, 260, 260, 260, 260, 261, + 261, 262, 262, 263, 264, 264, 265, 266, 266, 266, + 267, 268, 268, 268, 269, 269, 269, 269, 269, 269, + 269, 269, 269, 270, 270, 271, 271, 271, 272, 272, + 272, 273, 273, 273, 273, 273, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 274, 274, 274, 275, 275, + 276, 276, 277, 278, 278, 279, 279, 280, 281, 282, + 282, 283, 283, 284, 285, 285, 285, 285, 285, 285, + 285, 286, 286, 287, 287, 288, 288, 289, 289, 290, + 290, 291, 292, 292, 292, 293, 293, 294, 295, 295, + 296, 296, 296, 297, 297, 298, 298, 299, 299, 300, + 300, 300, 300, 300, 301, 301, 302 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1029,65 +1071,65 @@ static const yytype_int16 yydefgoto[] = /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -353 +#define YYPACT_NINF -351 static const yytype_int16 yypact[] = { - -96, -61, 22, -353, -89, -353, -75, -353, -25, 3345, - -353, -48, -353, -353, -353, -353, -353, -353, -353, -353, - -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, - -353, -353, -353, 106, -353, -353, -353, -353, -353, -353, - -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, - -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, - -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, - -353, -78, -353, -353, 3, -353, -353, -353, 63, -80, - -353, -353, 3228, -353, -55, -92, -54, -2, -133, -353, - -5, 50, -353, 14, 3572, -353, -353, -353, -56, -353, - 3684, -353, -353, -353, 34, -353, -353, -353, -44, 3572, - -353, 14, -353, 3684, 62, -353, -353, 273, -353, -353, - 87, -353, -353, -353, -353, -353, 3572, 176, 85, -353, - -137, -353, -353, -353, -353, 2454, -353, 33, 3572, 89, - 1856, -353, -15, -353, -33, -353, 28, 42, 997, 43, - 64, 44, 2136, 66, 2907, 48, 69, -68, -353, -353, - -353, -353, -353, 2907, 2907, 2907, -353, -353, -353, -353, - -353, 454, -353, -353, -353, -59, -353, -353, -353, 13, - -17, 3058, 71, 270, 2907, 49, -31, 70, -76, 103, - 57, 60, 61, 144, 145, -85, -353, -353, -104, -353, - 58, 83, -353, -353, -353, -353, -353, -353, 635, -353, - -353, -353, -353, -353, -353, -353, -353, -353, -353, 165, - 3572, -102, -353, 2605, 2907, -353, -353, -353, 82, -353, - -353, 1996, 84, -100, -353, -353, -353, -353, -353, 62, - -353, -353, 172, 1524, 2907, -353, -353, -94, 2907, -90, - -353, 2303, -353, -353, -14, -353, 816, -353, -353, 2907, - 3460, -353, -353, 2907, 90, -353, -353, -353, -353, -353, - -353, -353, -353, -353, -353, -353, -353, -353, 2907, -353, - 2907, 2907, 2907, 2907, 2907, 2907, 2907, 2907, 2907, 2907, - 2907, 2907, 2907, 2907, 2907, 2907, 2907, 2907, 2907, 2907, - 2907, -353, -353, -353, 91, -353, -353, 2756, 2907, 72, - 93, -353, -353, -353, -353, 2907, 89, -353, -353, 97, - -353, -353, 1691, -7, -353, -4, -353, 94, 179, 99, - -353, -353, 98, 94, 102, -353, -353, -353, -353, -353, - -353, 49, 49, -31, -31, 70, 70, 70, 70, -76, - -76, 103, 57, 60, 61, 144, 145, -58, -353, 2907, - 86, 100, -353, 2907, 88, 101, -353, 2907, -353, 92, - 104, 997, 127, 95, 1177, -353, 2907, 107, 2907, 105, - -353, 2907, -353, 2, 2907, 1177, 255, -353, -353, 2907, - 109, -353, -353, -353, -353, -353, -353, 2907, -353, 130, - 94, -353, 997, -353, 2907, -353, -353, -353, -353, 4, - 1357, 259, 1357 + -85, -52, 36, -351, -60, -351, -30, -351, -31, 3875, + -351, -27, -351, -351, -351, -351, -351, -351, -351, -351, + -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, + -351, -351, -351, 69, -351, -351, -351, -351, -351, -351, + -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, + -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, + -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, + -351, -78, -351, -351, 8, -351, -351, -351, 50, -83, + -351, -351, 3757, -351, -63, 4, -44, 3, -169, -351, + 82, -5, -351, 166, 4104, -351, -351, -351, 14, -351, + 4217, -351, -351, -351, 135, -351, -351, -351, -12, 4104, + -351, 166, -351, 4217, 142, -351, -351, 401, -351, -351, + 18, -351, -351, -351, -351, -351, 4104, 127, 144, -351, + -112, -351, -351, -351, -351, 2857, -351, 107, 4104, 146, + 2254, -351, 20, -351, -99, -351, 21, 25, 1245, 39, + 47, 27, 2480, 49, 3397, 31, 53, -69, -351, -351, + -351, -351, -351, 3397, 3397, 3397, -351, -351, -351, -351, + -351, 612, -351, -351, -351, -68, -351, -351, -351, 54, + -59, 3577, 56, -36, 3397, -34, -25, 112, -81, 121, + 45, 38, 44, 159, 158, -88, -351, -351, -167, -351, + 46, 66, -351, -351, -351, -351, -351, -351, 823, -351, + -351, -351, -351, -351, -351, -351, -351, -351, -351, 179, + 4104, -178, -351, 3037, 3397, -351, -351, -351, 67, -351, + -351, 2367, 70, -121, -351, -351, -351, -351, -351, 142, + -351, -351, 181, 1862, 3397, -351, -351, -114, 3397, -172, + -351, 2677, -351, -351, -58, -351, 1034, -351, -351, 3397, + 3991, -351, -351, 3397, 72, -351, -351, -351, -351, -351, + -351, -351, -351, -351, -351, -351, -351, -351, 3397, -351, + 3397, 3397, 3397, 3397, 3397, 3397, 3397, 3397, 3397, 3397, + 3397, 3397, 3397, 3397, 3397, 3397, 3397, 3397, 3397, 3397, + 3397, -351, -351, -351, 73, -351, -351, 3217, 3397, 51, + 71, -351, -351, -351, -351, 3397, 146, -351, -351, 76, + -351, -351, 2059, -51, -351, -50, -351, 74, 188, 77, + -351, -351, 78, 74, 80, -351, -351, -351, -351, -351, + -351, -34, -34, -25, -25, 112, 112, 112, 112, -81, + -81, 121, 45, 38, 44, 159, 158, -125, -351, 3397, + 63, 81, -351, 3397, 65, 83, -351, 3397, -351, 68, + 86, 1245, 75, 79, 1455, -351, 3397, 85, 3397, 84, + -351, 3397, -351, -49, 3397, 1455, 268, -351, -351, 3397, + 91, -351, -351, -351, -351, -351, -351, 3397, -351, 87, + 74, -351, 1245, -351, 3397, -351, -351, -351, -351, -48, + 1665, 270, 1665 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, - -353, -353, -353, 117, -353, -353, -353, -353, -105, -353, - -86, -69, -82, -91, -21, -20, 68, 108, 67, 80, - -353, -111, -148, -353, -149, -219, 12, 32, -353, -353, - -353, 138, 239, 257, 166, -353, -353, -239, -353, -353, - -353, 146, -353, -353, -27, -353, -9, -74, -353, -353, - 309, -353, 250, -130, -353, 73, -244, 147, -140, -340, - -352, -322, 19, 9, 311, 225, 154, -353, -353, 76, - -353, -353, -353, -353, -353, -353, -353, 317, -353 + -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, + -351, -351, -351, 23, -351, -351, -351, -351, -105, -351, + -67, -66, -134, -65, -8, -10, -7, -6, -4, -3, + -351, -111, -148, -351, -149, -221, 6, 9, -351, -351, + -351, 88, 171, 165, 89, -351, -351, -247, -351, -351, + -351, 57, -351, -351, -40, -351, -9, -75, -351, -351, + 219, -351, 161, -127, -351, -16, -262, 58, -131, -299, + -350, -292, -70, -82, 220, 134, 64, -351, -351, -11, + -351, -351, -351, -351, -351, -351, -351, 224, -351 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1097,52 +1139,110 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -267 static const yytype_int16 yytable[] = { - 96, 108, 121, 247, 310, 249, 12, 13, 242, 298, - 236, -160, 328, 287, 288, 1, 254, 12, 13, 387, - 4, 83, 5, 222, 227, 223, 136, 7, 257, 258, - 226, 386, 128, 265, 122, 123, 124, 8, 33, 142, - 34, 84, 35, 224, 36, 37, 38, 112, 129, 33, - 408, 34, 391, 35, 11, 36, 37, 38, 252, 253, - 307, 300, 407, 391, 362, 316, 133, 104, 303, 119, - 411, 300, 407, 96, 130, 300, 311, 301, 308, 279, - 114, 317, 110, 328, 112, 134, 131, 324, 361, 326, - 132, 121, -36, 299, 83, 323, 365, 289, 290, 325, - 139, 236, 327, 259, 109, 260, 135, 300, 201, 111, - 333, 120, 227, 137, 84, 336, 303, 219, 226, 380, - 111, 376, 79, 122, 123, 124, 116, 117, 238, 139, - 337, 139, 239, 79, 396, 283, 284, 398, 138, 201, - 377, 143, 105, 106, 262, 403, 107, 330, 263, 230, - 357, 300, 358, 405, 371, 285, 286, 372, 300, -98, - 311, 300, 201, 399, 221, 410, 237, 300, 232, 300, - 75, 76, 77, 327, 261, 338, 339, 340, 226, 226, + 96, 108, 310, 247, 328, 249, 298, 121, 287, 288, + -160, 12, 13, 236, 307, 83, 254, 242, 84, 257, + 258, 387, 121, 300, 227, 136, 128, 1, 300, 4, + 226, 131, 308, 265, 112, 132, 5, 326, 142, 122, + 123, 124, 129, 33, 301, 34, 362, 35, 11, 36, + 37, 38, 408, 133, 122, 123, 124, 7, 252, 253, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 300, 112, 386, 96, 316, 328, 311, 303, 222, 279, + 223, 300, 391, 8, 376, 134, 361, 110, 83, 104, + 317, 84, 238, 391, 365, 323, 239, 324, 224, 325, + 139, 380, 327, 407, 236, 105, 106, 114, 201, 107, + 333, 411, 227, 407, 111, 336, 396, 219, 226, 398, + 299, -36, 289, 290, 259, 303, 260, 403, 79, 139, + 337, 139, 262, 330, 109, 405, 263, 300, 377, 201, + 371, 372, 399, 410, 300, 300, 300, 300, 116, 117, + 357, 120, 358, 345, 346, 347, 348, 75, 76, 77, + 311, 130, 201, 122, 123, 124, 280, 281, 282, 12, + 13, 283, 284, 327, 277, 338, 339, 340, 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, - 226, 226, 226, 226, 291, 292, 227, 341, 342, 201, - 349, 350, 226, 243, 227, 345, 346, 347, 348, 240, - 226, 219, 122, 123, 124, 311, 343, 344, 383, 280, - 281, 282, 139, 241, 244, 245, 248, 250, 394, 251, - 311, 266, 293, 311, 201, 400, 294, 296, 295, 116, - 297, 311, 201, -35, 304, 313, 315, 201, 227, 311, - 319, -30, 363, 359, 226, 409, 364, 367, 373, 300, - 374, 375, -36, 379, 382, 385, 378, 402, 381, 404, - 395, 412, 351, 384, 352, 389, 12, 13, 14, 15, - 16, 17, 146, 147, 148, 397, 149, 150, 151, 152, + 226, 226, 226, 226, -98, 119, 227, 285, 286, 201, + 138, 33, 226, 34, 227, 35, 135, 36, 37, 38, + 226, 219, 291, 292, 137, 311, 341, 342, 383, 343, + 344, 143, 139, 221, 230, 232, 349, 350, 394, 243, + 311, 237, 240, 311, 201, 400, 241, 244, 245, 248, + 250, 311, 201, 251, 294, 261, 266, 201, 227, 311, + 293, 295, 296, 297, 226, 409, -35, 116, 304, 319, + 313, 363, 315, -30, 364, 359, 367, 373, 374, 300, + -36, 375, 111, 378, 379, 381, 382, 385, 395, 384, + 402, 404, 412, 335, 352, 351, 79, 171, 353, 389, + 354, 216, 220, 355, 397, 356, 318, 113, 406, 231, + 366, 320, 388, 401, 118, 256, 115, 321, 305, 306, + 0, 368, 0, 201, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 201, 0, 0, 201, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 201, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 201, 0, 0, 0, 0, 0, 0, + 0, 201, 0, 201, 12, 13, 14, 15, 16, 17, + 146, 147, 148, 0, 149, 150, 151, 152, 153, 154, + 155, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 0, 34, 0, + 35, 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, 70, 71, 72, 156, + 157, 158, 159, 160, 161, 162, 0, 0, 163, 164, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 74, 75, 76, + 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, + 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 80, 0, 81, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 165, 0, 0, 0, 0, 0, 166, 167, 168, + 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 170, 171, 172, 12, 13, 14, 15, 16, + 17, 146, 147, 148, 0, 149, 150, 151, 152, 153, + 154, 155, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 0, 34, + 0, 35, 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, 70, 71, 72, + 156, 157, 158, 159, 160, 161, 162, 0, 0, 163, + 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 74, 75, + 76, 77, 0, 78, 0, 0, 0, 0, 0, 0, + 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 80, 0, 81, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 165, 0, 0, 0, 0, 0, 166, 167, + 168, 169, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 170, 171, 255, 12, 13, 14, 15, + 16, 17, 146, 147, 148, 0, 149, 150, 151, 152, 153, 154, 155, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 171, - 34, 406, 35, 201, 36, 37, 38, 39, 40, 41, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 0, + 34, 0, 35, 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, 70, 71, - 72, 156, 157, 158, 159, 160, 161, 162, 305, 216, - 163, 164, 201, 353, 355, 201, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 201, 335, 356, 74, - 75, 76, 77, 78, 220, 318, 306, 113, 231, 366, - 320, 388, 79, 201, 401, 118, 256, 321, 368, 115, - 0, 201, 0, 201, 354, 0, 0, 0, 0, 0, + 72, 156, 157, 158, 159, 160, 161, 162, 0, 0, + 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 74, + 75, 76, 77, 0, 78, 0, 0, 0, 0, 0, + 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 80, 0, 81, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 80, 0, 81, 0, 0, 0, 0, 165, 0, 0, 0, 0, 0, 166, 167, 168, 169, 0, 0, 0, 0, 0, 0, 0, - 277, 0, 0, 0, 170, 171, 172, 12, 13, 14, + 0, 0, 0, 0, 170, 171, 302, 12, 13, 14, 15, 16, 17, 146, 147, 148, 0, 149, 150, 151, 152, 153, 154, 155, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, @@ -1153,14 +1253,17 @@ static const yytype_int16 yytable[] = 71, 72, 156, 157, 158, 159, 160, 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 74, 75, 76, 77, 78, 0, 0, 0, 0, 0, - 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, + 74, 75, 76, 77, 0, 78, 0, 0, 0, 0, + 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, + 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 80, 0, 81, 0, 0, 0, 0, 165, 0, 0, 0, 0, 0, 166, 167, 168, 169, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 170, 171, 255, 12, 13, + 0, 0, 0, 0, 0, 170, 171, 331, 12, 13, 14, 15, 16, 17, 146, 147, 148, 0, 149, 150, 151, 152, 153, 154, 155, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, @@ -1171,225 +1274,213 @@ static const yytype_int16 yytable[] = 70, 71, 72, 156, 157, 158, 159, 160, 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 74, 75, 76, 77, 78, 0, 0, 0, 0, - 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, + 0, 74, 75, 76, 77, 0, 78, 0, 0, 0, + 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, - 81, 0, 0, 0, 0, 165, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, + 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 165, 0, 0, 0, 0, 0, 166, 167, 168, 169, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 170, 171, 302, 12, - 13, 14, 15, 16, 17, 146, 147, 148, 0, 149, - 150, 151, 152, 153, 154, 155, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 156, 157, 158, 159, 160, 161, - 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 170, 171, 12, 13, + 14, 15, 16, 17, 146, 147, 148, 0, 149, 390, + 151, 152, 153, 154, 155, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 0, 34, 0, 35, 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, + 70, 71, 72, 156, 157, 158, 159, 160, 161, 162, + 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 74, 75, 76, 77, 78, 0, 0, 0, + 0, 74, 75, 76, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, - 0, 81, 0, 0, 0, 0, 165, 0, 0, 0, - 0, 0, 166, 167, 168, 169, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 170, 171, 331, - 12, 13, 14, 15, 16, 17, 146, 147, 148, 0, - 149, 150, 151, 152, 153, 154, 155, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 156, 157, 158, 159, 160, - 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, + 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 74, 75, 76, 77, 78, 0, 0, - 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 165, 0, 0, 0, 0, + 0, 166, 167, 168, 169, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 170, 117, 12, 13, + 14, 15, 16, 17, 146, 147, 148, 0, 149, 390, + 151, 152, 153, 154, 155, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 0, 34, 0, 35, 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, + 70, 71, 72, 156, 157, 158, 159, 160, 161, 162, + 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 74, 75, 76, 77, 0, 78, 0, 0, 0, + 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 80, 0, 81, 0, 0, 0, 0, 165, 0, 0, - 0, 0, 0, 166, 167, 168, 169, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 170, 171, - 12, 13, 14, 15, 16, 17, 146, 147, 148, 0, - 149, 390, 151, 152, 153, 154, 155, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 156, 157, 158, 159, 160, - 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 74, 75, 76, 77, 78, 0, 0, - 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, + 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 165, 0, 0, 0, 0, + 0, 166, 167, 168, 169, 12, 13, 14, 15, 16, + 17, 0, 0, 0, 0, 0, 170, 171, 0, 0, + 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 0, 34, + 0, 35, 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, 70, 71, 72, + 0, 157, 158, 159, 160, 161, 162, 0, 0, 163, + 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 74, 75, + 76, 77, 0, 78, 0, 0, 0, 0, 0, 0, + 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 80, 0, 81, 0, 0, 0, 0, 165, 0, 0, - 0, 0, 0, 166, 167, 168, 169, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 170, 117, - 12, 13, 14, 15, 16, 17, 146, 147, 148, 0, - 149, 390, 151, 152, 153, 154, 155, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 156, 157, 158, 159, 160, - 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 74, 75, 76, 77, 78, 0, 0, - 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 80, 0, 81, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 165, 0, 0, 0, 0, 0, 166, 167, + 168, 169, 12, 13, 14, 15, 16, 17, 0, 0, + 0, 0, 0, 170, 0, 0, 0, 0, 0, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 0, 157, 158, + 159, 160, 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 80, 0, 81, 0, 0, 0, 0, 165, 0, 0, - 0, 0, 0, 166, 167, 168, 169, 12, 13, 14, - 15, 16, 17, 0, 0, 0, 0, 0, 170, 171, - 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 0, 34, 0, 35, 0, 36, 37, 38, 39, 40, + 0, 0, 0, 0, 0, 111, 75, 76, 77, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 80, 0, 81, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 165, + 0, 0, 0, 0, 0, 166, 167, 168, 169, 14, + 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, + -266, 0, 0, 0, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 157, 158, 159, 160, 161, 162, 0, - 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, + 71, 72, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 74, 75, 76, 77, 78, 0, 0, 0, 0, 0, - 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 75, 76, 77, 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, 30, + 31, 32, 0, 0, 0, 0, 0, 0, 80, 0, + 81, 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, 0, 73, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, + 0, 0, 0, 0, 75, 76, 77, 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, 30, 31, 32, 0, 0, 0, 0, 0, + 0, 80, 0, 81, 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, 0, 157, + 158, 159, 160, 161, 162, 0, 0, 163, 164, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 314, 0, 0, 0, 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 80, 0, 81, - 0, 0, 0, 0, 165, 0, 0, 0, 0, 0, - 166, 167, 168, 169, 12, 13, 14, 15, 16, 17, - 0, 0, 0, 0, 0, 170, 0, 0, 0, 0, - 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 0, 34, 0, - 35, 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, 70, 71, 72, 0, - 157, 158, 159, 160, 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 111, 75, 76, - 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 81, 0, 0, 0, - 0, 165, 0, 0, 0, 0, 0, 166, 167, 168, - 169, 14, 15, 16, 17, 0, 0, 0, 0, 0, - 0, 0, -266, 0, 0, 0, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 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, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 165, 0, 0, 0, 0, 0, 166, 167, 168, 169, + 12, 13, 14, 15, 16, 17, 0, 0, 0, 0, + 0, 246, 0, 0, 0, 0, 0, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 0, 157, 158, 159, 160, + 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 111, 75, 76, 77, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 14, 15, 16, 17, 0, 0, 0, 0, 80, - 0, 81, 0, 0, 0, 0, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 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, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, + 0, 80, 0, 81, 0, 0, 0, 0, 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, 165, 0, 0, + 0, 0, 0, 166, 167, 168, 169, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 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, 0, 157, 158, 159, 160, + 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 14, 15, 16, 17, 0, 0, 0, 0, 80, - 0, 81, 0, 0, 0, 0, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 0, 0, 0, 0, 0, 0, 0, 0, 314, - 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, 0, 157, 158, 159, 160, 161, - 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, - 0, 81, 0, 0, 0, 0, 165, 0, 0, 0, - 0, 0, 166, 167, 168, 169, 12, 13, 14, 15, - 16, 17, 0, 0, 0, 0, 0, 246, 0, 0, - 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 0, - 34, 0, 35, 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, 70, 71, - 72, 0, 157, 158, 159, 160, 161, 162, 0, 0, - 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, - 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, + 0, 80, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 80, 0, 81, 14, - 15, 16, 17, 165, 0, 0, 0, 0, 0, 166, - 167, 168, 169, 0, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 157, 158, 159, 160, 161, 162, 0, - 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 14, 15, 16, 17, 0, 165, 0, 0, + 225, 0, 0, 166, 167, 168, 169, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 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, 0, 157, 158, 159, 160, + 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 80, 0, 81, - 14, 15, 16, 17, 165, 0, 0, 225, 0, 0, - 166, 167, 168, 169, 0, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 157, 158, 159, 160, 161, 162, - 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, + 0, 80, 0, 81, 0, 0, 0, 0, 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, 165, 0, 0, + 309, 0, 0, 166, 167, 168, 169, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 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, 0, 157, 158, 159, 160, + 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, - 81, 14, 15, 16, 17, 165, 0, 0, 309, 0, - 0, 166, 167, 168, 169, 0, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 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, 0, 157, 158, 159, 160, 161, - 162, 0, 0, 163, 164, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, - 0, 81, 14, 15, 16, 17, 165, 0, 0, 360, - 0, 0, 166, 167, 168, 169, 0, 18, 19, 20, + 0, 80, 0, 81, 0, 0, 0, 0, 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, 165, 0, 0, + 360, 0, 0, 166, 167, 168, 169, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, @@ -1403,34 +1494,38 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 80, 0, 81, 14, 15, 16, 17, 165, 0, 0, - 0, 0, 0, 166, 167, 168, 169, 0, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 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, 264, 0, 157, 158, 159, - 160, 161, 162, 0, 0, 163, 164, 0, 0, 0, + 0, 80, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 14, 15, 16, 17, 0, 165, 0, 0, + 0, 0, 0, 166, 167, 168, 169, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 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, 264, 0, 157, 158, 159, 160, + 161, 162, 0, 0, 163, 164, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 75, 76, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 80, 0, 81, 0, 0, 0, 0, 165, 0, - 0, 0, 0, 0, 166, 167, 168, 169, -3, 0, - 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, 31, 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 80, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 74, 75, 76, 77, 78, 0, + 0, 0, 0, 0, 0, 0, 0, -3, 0, 0, + 12, 13, 14, 15, 16, 17, 0, 165, 0, 0, + 0, 0, 0, 166, 167, 168, 169, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 0, 34, 0, 35, 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, 70, 71, 72, 0, 73, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 74, 75, 76, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 79, 12, 13, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, @@ -1442,30 +1537,19 @@ static const yytype_int16 yytable[] = 70, 71, 72, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 74, 75, 76, 77, 78, 0, 0, 0, 0, - 0, 0, 0, 0, 79, 14, 15, 16, 17, 0, + 0, 74, 75, 76, 77, 0, 78, 0, 0, 0, + 0, 0, 0, 0, 0, 79, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 0, 0, 0, 80, 0, - 81, 0, 0, 0, 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, 0, 334, - 0, 0, 0, 0, 162, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 75, 76, 77, - 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, 30, 31, 32, 0, 0, 0, - 0, 0, 0, 80, 0, 81, 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, - 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 0, 0, 0, 80, + 0, 81, 0, 0, 0, 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, 0, + 334, 0, 0, 0, 0, 162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, - 76, 77, 0, 0, 0, 0, 0, 0, 0, 14, + 0, 0, 0, 0, 0, 0, 0, 0, 75, 76, + 77, 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, 30, 31, 32, 0, @@ -1474,63 +1558,133 @@ static const yytype_int16 yytable[] = 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 0, 73, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 75, 76, 77, 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, 30, + 31, 32, 0, 0, 0, 0, 0, 0, 80, 0, + 81, 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, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 80, 0, 81 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 80, 0, 81 }; static const yytype_int16 yycheck[] = { - 9, 79, 4, 152, 223, 154, 3, 4, 148, 94, - 140, 79, 251, 89, 90, 111, 165, 3, 4, 371, - 81, 9, 0, 160, 135, 162, 100, 116, 87, 88, - 135, 371, 165, 181, 36, 37, 38, 112, 35, 113, - 37, 9, 39, 180, 41, 42, 43, 74, 181, 35, - 402, 37, 374, 39, 79, 41, 42, 43, 163, 164, - 162, 165, 402, 385, 308, 165, 93, 115, 208, 161, - 410, 165, 412, 82, 79, 165, 224, 181, 180, 184, - 160, 181, 79, 322, 111, 94, 36, 181, 307, 179, - 40, 4, 160, 178, 82, 244, 315, 173, 174, 248, - 109, 231, 251, 162, 182, 164, 162, 165, 117, 106, - 259, 165, 223, 79, 82, 263, 256, 126, 223, 363, - 106, 179, 119, 36, 37, 38, 181, 182, 161, 138, - 278, 140, 165, 119, 378, 166, 167, 381, 182, 148, - 359, 79, 36, 37, 161, 389, 40, 161, 165, 116, - 299, 165, 300, 397, 161, 85, 86, 161, 165, 161, - 308, 165, 171, 161, 79, 161, 181, 165, 79, 165, - 107, 108, 109, 322, 161, 280, 281, 282, 283, 284, + 9, 79, 223, 152, 251, 154, 94, 4, 89, 90, + 79, 3, 4, 140, 192, 9, 165, 148, 9, 87, + 88, 371, 4, 195, 135, 100, 195, 112, 195, 81, + 135, 36, 210, 181, 74, 40, 0, 209, 113, 36, + 37, 38, 211, 35, 211, 37, 308, 39, 79, 41, + 42, 43, 402, 93, 36, 37, 38, 117, 163, 164, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + 195, 111, 371, 82, 195, 322, 224, 208, 190, 184, + 192, 195, 374, 113, 209, 94, 307, 79, 82, 116, + 211, 82, 191, 385, 315, 244, 195, 211, 210, 248, + 109, 363, 251, 402, 231, 36, 37, 190, 117, 40, + 259, 410, 223, 412, 106, 263, 378, 126, 223, 381, + 208, 190, 203, 204, 192, 256, 194, 389, 120, 138, + 278, 140, 191, 191, 212, 397, 195, 195, 359, 148, + 191, 191, 191, 191, 195, 195, 195, 195, 211, 212, + 299, 195, 300, 287, 288, 289, 290, 107, 108, 109, + 308, 79, 171, 36, 37, 38, 200, 201, 202, 3, + 4, 196, 197, 322, 210, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 91, 92, 307, 283, 284, 208, - 291, 292, 307, 160, 315, 287, 288, 289, 290, 181, - 315, 220, 36, 37, 38, 363, 285, 286, 367, 170, - 171, 172, 231, 181, 160, 181, 160, 179, 376, 160, - 378, 160, 175, 381, 243, 384, 176, 93, 177, 181, - 95, 389, 251, 160, 79, 163, 162, 256, 359, 397, - 78, 161, 180, 162, 359, 404, 163, 160, 79, 165, - 161, 163, 160, 163, 163, 161, 180, 12, 180, 160, - 163, 12, 293, 181, 294, 180, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 180, 13, 14, 15, 16, + 295, 296, 297, 298, 191, 191, 307, 85, 86, 208, + 212, 35, 307, 37, 315, 39, 192, 41, 42, 43, + 315, 220, 91, 92, 79, 363, 283, 284, 367, 285, + 286, 79, 231, 79, 117, 79, 291, 292, 376, 190, + 378, 211, 211, 381, 243, 384, 211, 190, 211, 190, + 209, 389, 251, 190, 206, 191, 190, 256, 359, 397, + 205, 207, 93, 95, 359, 404, 190, 211, 79, 78, + 193, 210, 192, 191, 193, 192, 190, 79, 191, 195, + 190, 193, 106, 210, 193, 210, 193, 191, 193, 211, + 12, 190, 12, 260, 294, 293, 120, 212, 295, 210, + 296, 120, 127, 297, 210, 298, 239, 78, 211, 138, + 316, 243, 372, 385, 84, 171, 82, 243, 220, 220, + -1, 322, -1, 322, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 371, -1, -1, 374, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 385, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 402, -1, -1, -1, -1, -1, -1, + -1, 410, -1, 412, 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, 33, 34, 35, -1, 37, -1, + 39, -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, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, -1, -1, 87, 88, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 106, 107, 108, + 109, -1, 111, -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, 190, -1, -1, -1, -1, -1, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 211, 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, 33, 34, 35, -1, 37, + -1, 39, -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, 75, 76, 77, + 78, 79, 80, 81, 82, 83, 84, -1, -1, 87, + 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 106, 107, + 108, 109, -1, 111, -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, 190, -1, -1, -1, -1, -1, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 211, 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, 33, 34, 35, 182, - 37, 181, 39, 322, 41, 42, 43, 44, 45, 46, + 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, + 37, -1, 39, -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, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 220, 120, - 87, 88, 371, 295, 297, 374, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 385, 260, 298, 106, - 107, 108, 109, 110, 127, 239, 220, 78, 138, 316, - 243, 372, 119, 402, 385, 84, 171, 243, 322, 82, - -1, 410, -1, 412, 296, -1, -1, -1, -1, -1, + 77, 78, 79, 80, 81, 82, 83, 84, -1, -1, + 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 106, + 107, 108, 109, -1, 111, -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, 153, -1, 155, -1, - -1, -1, -1, 160, -1, -1, -1, -1, -1, 166, - 167, 168, 169, -1, -1, -1, -1, -1, -1, -1, - 180, -1, -1, -1, 181, 182, 183, 3, 4, 5, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 190, -1, -1, -1, -1, -1, 196, + 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 211, 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, 33, 34, 35, @@ -1541,14 +1695,17 @@ static const yytype_int16 yycheck[] = 76, 77, 78, 79, 80, 81, 82, 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 106, 107, 108, 109, 110, -1, -1, -1, -1, -1, - -1, -1, -1, 119, -1, -1, -1, -1, -1, -1, + 106, 107, 108, 109, -1, 111, -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, 153, -1, 155, - -1, -1, -1, -1, 160, -1, -1, -1, -1, -1, - 166, 167, 168, 169, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 181, 182, 183, 3, 4, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 190, -1, -1, -1, -1, -1, + 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 211, 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, 33, 34, @@ -1559,225 +1716,213 @@ static const yytype_int16 yycheck[] = 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 106, 107, 108, 109, 110, -1, -1, -1, -1, - -1, -1, -1, -1, 119, -1, -1, -1, -1, -1, + -1, 106, 107, 108, 109, -1, 111, -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, 153, -1, - 155, -1, -1, -1, -1, 160, -1, -1, -1, -1, - -1, 166, 167, 168, 169, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 181, 182, 183, 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, 33, - 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, -1, -1, 87, 88, -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, 106, 107, 108, 109, 110, -1, -1, -1, - -1, -1, -1, -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 190, -1, -1, -1, -1, + -1, 196, 197, 198, 199, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 211, 212, 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, 33, 34, + 35, -1, 37, -1, 39, -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, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 153, - -1, 155, -1, -1, -1, -1, 160, -1, -1, -1, - -1, -1, 166, 167, 168, 169, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 181, 182, 183, - 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, - 33, 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, + -1, 106, 107, 108, 109, -1, 111, -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, 106, 107, 108, 109, 110, -1, -1, - -1, -1, -1, -1, -1, -1, 119, -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, - 153, -1, 155, -1, -1, -1, -1, 160, -1, -1, - -1, -1, -1, 166, 167, 168, 169, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 181, 182, - 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, - 33, 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 190, -1, -1, -1, -1, + -1, 196, 197, 198, 199, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 211, 212, 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, 33, 34, + 35, -1, 37, -1, 39, -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, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 106, 107, 108, 109, 110, -1, -1, - -1, -1, -1, -1, -1, -1, 119, -1, -1, -1, + -1, 106, 107, 108, 109, -1, 111, -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, - 153, -1, 155, -1, -1, -1, -1, 160, -1, -1, - -1, -1, -1, 166, 167, 168, 169, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 181, 182, - 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, - 33, 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 106, 107, 108, 109, 110, -1, -1, - -1, -1, -1, -1, -1, -1, 119, -1, -1, -1, + -1, -1, -1, -1, -1, 190, -1, -1, -1, -1, + -1, 196, 197, 198, 199, 3, 4, 5, 6, 7, + 8, -1, -1, -1, -1, -1, 211, 212, -1, -1, + -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, -1, 37, + -1, 39, -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, 75, 76, 77, + -1, 79, 80, 81, 82, 83, 84, -1, -1, 87, + 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 106, 107, + 108, 109, -1, 111, -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, - 153, -1, 155, -1, -1, -1, -1, 160, -1, -1, - -1, -1, -1, 166, 167, 168, 169, 3, 4, 5, - 6, 7, 8, -1, -1, -1, -1, -1, 181, 182, - -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - -1, 37, -1, 39, -1, 41, 42, 43, 44, 45, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 190, -1, -1, -1, -1, -1, 196, 197, + 198, 199, 3, 4, 5, 6, 7, 8, -1, -1, + -1, -1, -1, 211, -1, -1, -1, -1, -1, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, -1, 79, 80, + 81, 82, 83, 84, -1, -1, 87, 88, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 106, 107, 108, 109, -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, 190, + -1, -1, -1, -1, -1, 196, 197, 198, 199, 5, + 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, + 211, -1, -1, -1, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 79, 80, 81, 82, 83, 84, -1, - -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, + 76, 77, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 106, 107, 108, 109, 110, -1, -1, -1, -1, -1, - -1, -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 107, 108, 109, -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, 32, + 33, 34, -1, -1, -1, -1, -1, -1, 154, -1, + 156, 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, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 153, -1, 155, - -1, -1, -1, -1, 160, -1, -1, -1, -1, -1, - 166, 167, 168, 169, 3, 4, 5, 6, 7, 8, - -1, -1, -1, -1, -1, 181, -1, -1, -1, -1, - -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, -1, 37, -1, - 39, -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, 75, 76, 77, -1, - 79, 80, 81, 82, 83, 84, -1, -1, 87, 88, + -1, -1, -1, -1, -1, -1, -1, 213, -1, -1, + -1, -1, -1, -1, 107, 108, 109, -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, 32, 33, 34, -1, -1, -1, -1, -1, + -1, 154, -1, 156, 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, -1, 79, + 80, 81, 82, 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 106, 107, 108, - 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 213, -1, -1, -1, -1, -1, -1, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 153, -1, 155, -1, -1, -1, - -1, 160, -1, -1, -1, -1, -1, 166, 167, 168, - 169, 5, 6, 7, 8, -1, -1, -1, -1, -1, - -1, -1, 181, -1, -1, -1, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 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, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 107, 108, 109, -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, 5, 6, 7, 8, -1, -1, -1, -1, 153, - -1, 155, -1, -1, -1, -1, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, -1, -1, -1, -1, 183, - 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, -1, 79, -1, -1, -1, -1, + 190, -1, -1, -1, -1, -1, 196, 197, 198, 199, + 3, 4, 5, 6, 7, 8, -1, -1, -1, -1, + -1, 211, -1, -1, -1, -1, -1, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, -1, 79, 80, 81, 82, + 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 106, 107, 108, 109, -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, 107, 108, 109, -1, -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, 5, 6, 7, 8, -1, -1, -1, -1, 153, - -1, 155, -1, -1, -1, -1, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, -1, -1, -1, -1, 183, - 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, -1, 79, 80, 81, 82, 83, - 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 107, 108, 109, -1, -1, -1, -1, + -1, -1, 5, 6, 7, 8, -1, 190, -1, -1, + -1, -1, -1, 196, 197, 198, 199, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 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, -1, 79, 80, 81, 82, + 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 153, - -1, 155, -1, -1, -1, -1, 160, -1, -1, -1, - -1, -1, 166, 167, 168, 169, 3, 4, 5, 6, - 7, 8, -1, -1, -1, -1, -1, 181, -1, -1, - -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, - 37, -1, 39, -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, 75, 76, - 77, -1, 79, 80, 81, 82, 83, 84, -1, -1, - 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 106, - 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 153, -1, 155, 5, - 6, 7, 8, 160, -1, -1, -1, -1, -1, 166, - 167, 168, 169, -1, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 79, 80, 81, 82, 83, 84, -1, - -1, 87, 88, -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, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5, 6, 7, 8, -1, 190, -1, -1, + 193, -1, -1, 196, 197, 198, 199, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 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, -1, 79, 80, 81, 82, + 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 153, -1, 155, - 5, 6, 7, 8, 160, -1, -1, 163, -1, -1, - 166, 167, 168, 169, -1, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 79, 80, 81, 82, 83, 84, - -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 107, 108, 109, -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, 5, 6, 7, 8, -1, 190, -1, -1, + 193, -1, -1, 196, 197, 198, 199, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 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, -1, 79, 80, 81, 82, + 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 153, -1, - 155, 5, 6, 7, 8, 160, -1, -1, 163, -1, - -1, 166, 167, 168, 169, -1, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 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, -1, 79, 80, 81, 82, 83, - 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 107, 108, 109, -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, 153, - -1, 155, 5, 6, 7, 8, 160, -1, -1, 163, - -1, -1, 166, 167, 168, 169, -1, 20, 21, 22, + -1, -1, 5, 6, 7, 8, -1, 190, -1, -1, + 193, -1, -1, 196, 197, 198, 199, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, 44, 45, 46, 47, 48, 49, 50, 51, 52, @@ -1791,132 +1936,137 @@ 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, - 153, -1, 155, 5, 6, 7, 8, 160, -1, -1, - -1, -1, -1, 166, 167, 168, 169, -1, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 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, -1, 79, 80, 81, - 82, 83, 84, -1, -1, 87, 88, -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, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5, 6, 7, 8, -1, 190, -1, -1, + -1, -1, -1, 196, 197, 198, 199, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 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, -1, 79, 80, 81, 82, + 83, 84, -1, -1, 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 153, -1, 155, -1, -1, -1, -1, 160, -1, - -1, -1, -1, -1, 166, 167, 168, 169, 0, -1, - -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, 33, 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 106, 107, 108, 109, 110, -1, - -1, -1, -1, -1, -1, -1, -1, 119, 3, 4, + -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, 0, -1, -1, + 3, 4, 5, 6, 7, 8, -1, 190, -1, -1, + -1, -1, -1, 196, 197, 198, 199, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, -1, 37, -1, 39, -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, 75, 76, 77, -1, 79, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 106, 107, 108, 109, -1, 111, -1, + -1, -1, -1, -1, -1, -1, -1, 120, 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, 33, 34, - 35, 153, 37, 155, 39, -1, 41, 42, 43, 44, + 35, 154, 37, 156, 39, -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, 75, 76, 77, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 106, 107, 108, 109, 110, -1, -1, -1, -1, - -1, -1, -1, -1, 119, 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, 33, 34, -1, -1, -1, 153, -1, - 155, -1, -1, -1, 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, -1, 79, - -1, -1, -1, -1, 84, -1, -1, -1, -1, -1, + -1, 106, 107, 108, 109, -1, 111, -1, -1, -1, + -1, -1, -1, -1, -1, 120, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 107, 108, 109, - -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, 32, 33, 34, -1, -1, -1, - -1, -1, -1, 153, -1, 155, 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, - -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, -1, -1, -1, 154, + -1, 156, -1, -1, -1, 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, -1, + 79, -1, -1, -1, -1, 84, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 107, - 108, 109, -1, -1, -1, -1, -1, -1, -1, 5, + -1, -1, -1, -1, -1, -1, -1, -1, 107, 108, + 109, -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, 32, 33, 34, -1, - -1, -1, -1, -1, -1, 153, -1, 155, 44, 45, + -1, -1, -1, -1, -1, 154, -1, 156, 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, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 107, 108, 109, -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, 32, + 33, 34, -1, -1, -1, -1, -1, -1, 154, -1, + 156, 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, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 153, -1, 155 + -1, -1, -1, -1, -1, -1, -1, -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 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 111, 185, 187, 81, 0, 188, 116, 112, 186, - 189, 79, 3, 4, 5, 6, 7, 8, 20, 21, + 0, 112, 215, 217, 81, 0, 218, 117, 113, 216, + 219, 79, 3, 4, 5, 6, 7, 8, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 37, 39, 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, 79, 106, 107, 108, 109, 110, 119, - 153, 155, 190, 220, 221, 222, 223, 224, 229, 230, - 231, 232, 233, 236, 238, 239, 240, 241, 242, 243, - 244, 245, 271, 272, 115, 36, 37, 40, 79, 182, - 79, 106, 238, 244, 160, 271, 181, 182, 258, 161, - 165, 4, 36, 37, 38, 226, 227, 237, 165, 181, - 79, 36, 40, 238, 240, 162, 241, 79, 182, 240, - 246, 247, 241, 79, 234, 235, 9, 10, 11, 13, + 75, 76, 77, 79, 106, 107, 108, 109, 111, 120, + 154, 156, 220, 250, 251, 252, 253, 254, 259, 260, + 261, 262, 263, 266, 268, 269, 270, 271, 272, 273, + 274, 275, 301, 302, 116, 36, 37, 40, 79, 212, + 79, 106, 268, 274, 190, 301, 211, 212, 288, 191, + 195, 4, 36, 37, 38, 256, 257, 267, 195, 211, + 79, 36, 40, 268, 270, 192, 271, 79, 212, 270, + 276, 277, 271, 79, 264, 265, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 78, 79, 80, 81, - 82, 83, 84, 87, 88, 160, 166, 167, 168, 169, - 181, 182, 183, 191, 192, 193, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 218, 220, - 221, 240, 251, 252, 253, 254, 255, 256, 259, 260, - 261, 262, 264, 265, 266, 270, 226, 225, 228, 240, - 227, 79, 160, 162, 180, 163, 202, 215, 219, 240, - 116, 246, 79, 248, 249, 183, 247, 181, 161, 165, - 181, 181, 252, 160, 160, 181, 181, 218, 160, 218, - 179, 160, 202, 202, 218, 183, 259, 87, 88, 162, - 164, 161, 161, 165, 77, 216, 160, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 180, 217, 202, - 170, 171, 172, 166, 167, 85, 86, 89, 90, 173, - 174, 91, 92, 175, 176, 177, 93, 95, 94, 178, - 165, 181, 183, 252, 79, 225, 228, 162, 180, 163, - 219, 216, 250, 163, 183, 162, 165, 181, 235, 78, - 251, 260, 267, 218, 181, 218, 179, 218, 231, 263, - 161, 183, 194, 218, 79, 197, 216, 216, 202, 202, - 202, 204, 204, 205, 205, 206, 206, 206, 206, 207, - 207, 208, 209, 210, 211, 212, 213, 218, 216, 162, - 163, 219, 250, 180, 163, 219, 249, 160, 263, 268, - 269, 161, 161, 79, 161, 163, 179, 219, 180, 163, - 250, 180, 163, 218, 181, 161, 253, 254, 256, 180, - 14, 255, 257, 258, 216, 163, 250, 180, 250, 161, - 218, 257, 12, 250, 160, 250, 181, 253, 254, 218, - 161, 253, 12 + 82, 83, 84, 87, 88, 190, 196, 197, 198, 199, + 211, 212, 213, 221, 222, 223, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 244, 245, 246, 248, 250, + 251, 270, 281, 282, 283, 284, 285, 286, 289, 290, + 291, 292, 294, 295, 296, 300, 256, 255, 258, 270, + 257, 79, 190, 192, 210, 193, 232, 245, 249, 270, + 117, 276, 79, 278, 279, 213, 277, 211, 191, 195, + 211, 211, 282, 190, 190, 211, 211, 248, 190, 248, + 209, 190, 232, 232, 248, 213, 289, 87, 88, 192, + 194, 191, 191, 195, 77, 246, 190, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 210, 247, 232, + 200, 201, 202, 196, 197, 85, 86, 89, 90, 203, + 204, 91, 92, 205, 206, 207, 93, 95, 94, 208, + 195, 211, 213, 282, 79, 255, 258, 192, 210, 193, + 249, 246, 280, 193, 213, 192, 195, 211, 265, 78, + 281, 290, 297, 248, 211, 248, 209, 248, 261, 293, + 191, 213, 224, 248, 79, 227, 246, 246, 232, 232, + 232, 234, 234, 235, 235, 236, 236, 236, 236, 237, + 237, 238, 239, 240, 241, 242, 243, 248, 246, 192, + 193, 249, 280, 210, 193, 249, 279, 190, 293, 298, + 299, 191, 191, 79, 191, 193, 209, 249, 210, 193, + 280, 210, 193, 248, 211, 191, 283, 284, 286, 210, + 14, 285, 287, 288, 246, 193, 280, 210, 280, 191, + 248, 287, 12, 280, 190, 280, 211, 283, 284, 248, + 191, 283, 12 }; #define yyerrok (yyerrstatus = 0) @@ -1931,9 +2081,18 @@ 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. */ + 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. */ #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) @@ -1990,7 +2149,7 @@ while (YYID (0)) we won't break user code: when these are the locations we know. */ #ifndef YY_LOCATION_PRINT -# if YYLTYPE_IS_TRIVIAL +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL # define YY_LOCATION_PRINT(File, Loc) \ fprintf (File, "%d.%d-%d.%d", \ (Loc).first_line, (Loc).first_column, \ @@ -2579,7 +2738,7 @@ YYLTYPE yylloc; yyvsp = yyvs; yylsp = yyls; -#if YYLTYPE_IS_TRIVIAL +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL /* Initialize the default location before parsing starts. */ yylloc.first_line = yylloc.last_line = 1; yylloc.first_column = yylloc.last_column = 1; @@ -2769,8 +2928,8 @@ yyreduce: { case 2: -/* Line 1455 of yacc.c */ -#line 193 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 200 "glsl_parser.ypp" { _mesa_glsl_initialize_types(state); ;} @@ -2778,8 +2937,8 @@ yyreduce: case 4: -/* Line 1455 of yacc.c */ -#line 201 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 208 "glsl_parser.ypp" { state->language_version = 110; ;} @@ -2787,8 +2946,8 @@ yyreduce: case 5: -/* Line 1455 of yacc.c */ -#line 205 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 212 "glsl_parser.ypp" { switch ((yyvsp[(2) - (3)].n)) { case 110: @@ -2807,8 +2966,8 @@ yyreduce: case 8: -/* Line 1455 of yacc.c */ -#line 228 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 235 "glsl_parser.ypp" { if (!_mesa_glsl_process_extension((yyvsp[(2) - (5)].identifier), & (yylsp[(2) - (5)]), (yyvsp[(4) - (5)].identifier), & (yylsp[(4) - (5)]), state)) { YYERROR; @@ -2818,8 +2977,8 @@ yyreduce: case 9: -/* Line 1455 of yacc.c */ -#line 237 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 244 "glsl_parser.ypp" { /* FINISHME: The NULL test is only required because 'precision' * FINISHME: statements are not yet supported. @@ -2831,8 +2990,8 @@ yyreduce: case 10: -/* Line 1455 of yacc.c */ -#line 245 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 252 "glsl_parser.ypp" { /* FINISHME: The NULL test is only required because 'precision' * FINISHME: statements are not yet supported. @@ -2844,8 +3003,8 @@ yyreduce: case 12: -/* Line 1455 of yacc.c */ -#line 260 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 267 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_identifier, NULL, NULL, NULL); @@ -2856,8 +3015,8 @@ yyreduce: case 13: -/* Line 1455 of yacc.c */ -#line 267 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 274 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_int_constant, NULL, NULL, NULL); @@ -2868,8 +3027,8 @@ yyreduce: case 14: -/* Line 1455 of yacc.c */ -#line 274 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 281 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_uint_constant, NULL, NULL, NULL); @@ -2880,8 +3039,8 @@ yyreduce: case 15: -/* Line 1455 of yacc.c */ -#line 281 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 288 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_float_constant, NULL, NULL, NULL); @@ -2892,8 +3051,8 @@ yyreduce: case 16: -/* Line 1455 of yacc.c */ -#line 288 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 295 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_bool_constant, NULL, NULL, NULL); @@ -2904,8 +3063,8 @@ yyreduce: case 17: -/* Line 1455 of yacc.c */ -#line 295 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 302 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(2) - (3)].expression); ;} @@ -2913,8 +3072,8 @@ yyreduce: case 19: -/* Line 1455 of yacc.c */ -#line 303 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 310 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_array_index, (yyvsp[(1) - (4)].expression), (yyvsp[(3) - (4)].expression), NULL); @@ -2924,8 +3083,8 @@ yyreduce: case 20: -/* Line 1455 of yacc.c */ -#line 309 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 316 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (1)].expression); ;} @@ -2933,8 +3092,8 @@ yyreduce: case 21: -/* Line 1455 of yacc.c */ -#line 313 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 320 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_field_selection, (yyvsp[(1) - (3)].expression), NULL, NULL); @@ -2945,8 +3104,8 @@ yyreduce: case 22: -/* Line 1455 of yacc.c */ -#line 320 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 327 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_post_inc, (yyvsp[(1) - (2)].expression), NULL, NULL); @@ -2956,8 +3115,8 @@ yyreduce: case 23: -/* Line 1455 of yacc.c */ -#line 326 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 333 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_post_dec, (yyvsp[(1) - (2)].expression), NULL, NULL); @@ -2967,8 +3126,8 @@ yyreduce: case 27: -/* Line 1455 of yacc.c */ -#line 344 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 351 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_field_selection, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression), NULL); @@ -2978,8 +3137,8 @@ yyreduce: case 32: -/* Line 1455 of yacc.c */ -#line 363 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 370 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (2)].expression); (yyval.expression)->set_location(yylloc); @@ -2989,8 +3148,8 @@ yyreduce: case 33: -/* Line 1455 of yacc.c */ -#line 369 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 376 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (3)].expression); (yyval.expression)->set_location(yylloc); @@ -3000,8 +3159,8 @@ yyreduce: case 35: -/* Line 1455 of yacc.c */ -#line 385 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 392 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_function_expression((yyvsp[(1) - (1)].type_specifier)); @@ -3011,8 +3170,8 @@ yyreduce: case 36: -/* Line 1455 of yacc.c */ -#line 391 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 398 "glsl_parser.ypp" { void *ctx = state; ast_expression *callee = new(ctx) ast_expression((yyvsp[(1) - (1)].identifier)); @@ -3023,8 +3182,8 @@ yyreduce: case 37: -/* Line 1455 of yacc.c */ -#line 398 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 405 "glsl_parser.ypp" { void *ctx = state; ast_expression *callee = new(ctx) ast_expression((yyvsp[(1) - (1)].identifier)); @@ -3035,8 +3194,8 @@ yyreduce: case 39: -/* Line 1455 of yacc.c */ -#line 410 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 417 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_pre_inc, (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3046,8 +3205,8 @@ yyreduce: case 40: -/* Line 1455 of yacc.c */ -#line 416 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 423 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_pre_dec, (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3057,8 +3216,8 @@ yyreduce: case 41: -/* Line 1455 of yacc.c */ -#line 422 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 429 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression((yyvsp[(1) - (2)].n), (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3068,36 +3227,36 @@ yyreduce: case 42: -/* Line 1455 of yacc.c */ -#line 431 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 438 "glsl_parser.ypp" { (yyval.n) = ast_plus; ;} break; case 43: -/* Line 1455 of yacc.c */ -#line 432 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 439 "glsl_parser.ypp" { (yyval.n) = ast_neg; ;} break; case 44: -/* Line 1455 of yacc.c */ -#line 433 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 440 "glsl_parser.ypp" { (yyval.n) = ast_logic_not; ;} break; case 45: -/* Line 1455 of yacc.c */ -#line 434 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 441 "glsl_parser.ypp" { (yyval.n) = ast_bit_not; ;} break; case 47: -/* Line 1455 of yacc.c */ -#line 440 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 447 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_mul, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3107,8 +3266,8 @@ yyreduce: case 48: -/* Line 1455 of yacc.c */ -#line 446 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 453 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_div, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3118,8 +3277,8 @@ yyreduce: case 49: -/* Line 1455 of yacc.c */ -#line 452 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 459 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_mod, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3129,8 +3288,8 @@ yyreduce: case 51: -/* Line 1455 of yacc.c */ -#line 462 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 469 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_add, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3140,8 +3299,8 @@ yyreduce: case 52: -/* Line 1455 of yacc.c */ -#line 468 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 475 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_sub, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3151,8 +3310,8 @@ yyreduce: case 54: -/* Line 1455 of yacc.c */ -#line 478 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 485 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_lshift, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3162,8 +3321,8 @@ yyreduce: case 55: -/* Line 1455 of yacc.c */ -#line 484 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 491 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_rshift, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3173,8 +3332,8 @@ yyreduce: case 57: -/* Line 1455 of yacc.c */ -#line 494 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 501 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_less, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3184,8 +3343,8 @@ yyreduce: case 58: -/* Line 1455 of yacc.c */ -#line 500 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 507 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_greater, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3195,8 +3354,8 @@ yyreduce: case 59: -/* Line 1455 of yacc.c */ -#line 506 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 513 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_lequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3206,8 +3365,8 @@ yyreduce: case 60: -/* Line 1455 of yacc.c */ -#line 512 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 519 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_gequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3217,8 +3376,8 @@ yyreduce: case 62: -/* Line 1455 of yacc.c */ -#line 522 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 529 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_equal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3228,8 +3387,8 @@ yyreduce: case 63: -/* Line 1455 of yacc.c */ -#line 528 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 535 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_nequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3239,8 +3398,8 @@ yyreduce: case 65: -/* Line 1455 of yacc.c */ -#line 538 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 545 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3250,8 +3409,8 @@ yyreduce: case 67: -/* Line 1455 of yacc.c */ -#line 548 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 555 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_xor, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3261,8 +3420,8 @@ yyreduce: case 69: -/* Line 1455 of yacc.c */ -#line 558 "glsl_parser.ypp" +/* Line 1464 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)); @@ -3272,8 +3431,8 @@ yyreduce: case 71: -/* Line 1455 of yacc.c */ -#line 568 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 575 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_and, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3283,8 +3442,8 @@ yyreduce: case 73: -/* Line 1455 of yacc.c */ -#line 578 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 585 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_xor, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3294,8 +3453,8 @@ yyreduce: case 75: -/* Line 1455 of yacc.c */ -#line 588 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 595 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3305,8 +3464,8 @@ yyreduce: case 77: -/* Line 1455 of yacc.c */ -#line 598 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 605 "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)); @@ -3316,8 +3475,8 @@ yyreduce: case 79: -/* Line 1455 of yacc.c */ -#line 608 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 615 "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); @@ -3327,85 +3486,85 @@ yyreduce: case 80: -/* Line 1455 of yacc.c */ -#line 616 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 623 "glsl_parser.ypp" { (yyval.n) = ast_assign; ;} break; case 81: -/* Line 1455 of yacc.c */ -#line 617 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 624 "glsl_parser.ypp" { (yyval.n) = ast_mul_assign; ;} break; case 82: -/* Line 1455 of yacc.c */ -#line 618 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 625 "glsl_parser.ypp" { (yyval.n) = ast_div_assign; ;} break; case 83: -/* Line 1455 of yacc.c */ -#line 619 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 626 "glsl_parser.ypp" { (yyval.n) = ast_mod_assign; ;} break; case 84: -/* Line 1455 of yacc.c */ -#line 620 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 627 "glsl_parser.ypp" { (yyval.n) = ast_add_assign; ;} break; case 85: -/* Line 1455 of yacc.c */ -#line 621 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 628 "glsl_parser.ypp" { (yyval.n) = ast_sub_assign; ;} break; case 86: -/* Line 1455 of yacc.c */ -#line 622 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 629 "glsl_parser.ypp" { (yyval.n) = ast_ls_assign; ;} break; case 87: -/* Line 1455 of yacc.c */ -#line 623 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 630 "glsl_parser.ypp" { (yyval.n) = ast_rs_assign; ;} break; case 88: -/* Line 1455 of yacc.c */ -#line 624 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 631 "glsl_parser.ypp" { (yyval.n) = ast_and_assign; ;} break; case 89: -/* Line 1455 of yacc.c */ -#line 625 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 632 "glsl_parser.ypp" { (yyval.n) = ast_xor_assign; ;} break; case 90: -/* Line 1455 of yacc.c */ -#line 626 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 633 "glsl_parser.ypp" { (yyval.n) = ast_or_assign; ;} break; case 91: -/* Line 1455 of yacc.c */ -#line 631 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 638 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (1)].expression); ;} @@ -3413,8 +3572,8 @@ yyreduce: case 92: -/* Line 1455 of yacc.c */ -#line 635 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 642 "glsl_parser.ypp" { void *ctx = state; if ((yyvsp[(1) - (3)].expression)->oper != ast_sequence) { @@ -3431,8 +3590,8 @@ yyreduce: case 94: -/* Line 1455 of yacc.c */ -#line 655 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 662 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (2)].function); ;} @@ -3440,8 +3599,8 @@ yyreduce: case 95: -/* Line 1455 of yacc.c */ -#line 659 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 666 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (2)].declarator_list); ;} @@ -3449,8 +3608,8 @@ yyreduce: case 96: -/* Line 1455 of yacc.c */ -#line 663 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 670 "glsl_parser.ypp" { if (((yyvsp[(3) - (4)].type_specifier)->type_specifier != ast_float) && ((yyvsp[(3) - (4)].type_specifier)->type_specifier != ast_int)) { @@ -3465,8 +3624,8 @@ yyreduce: case 100: -/* Line 1455 of yacc.c */ -#line 686 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 693 "glsl_parser.ypp" { (yyval.function) = (yyvsp[(1) - (2)].function); (yyval.function)->parameters.push_tail(& (yyvsp[(2) - (2)].parameter_declarator)->link); @@ -3475,8 +3634,8 @@ yyreduce: case 101: -/* Line 1455 of yacc.c */ -#line 691 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 698 "glsl_parser.ypp" { (yyval.function) = (yyvsp[(1) - (3)].function); (yyval.function)->parameters.push_tail(& (yyvsp[(3) - (3)].parameter_declarator)->link); @@ -3485,8 +3644,8 @@ yyreduce: case 102: -/* Line 1455 of yacc.c */ -#line 699 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 706 "glsl_parser.ypp" { void *ctx = state; (yyval.function) = new(ctx) ast_function(); @@ -3498,8 +3657,8 @@ yyreduce: case 103: -/* Line 1455 of yacc.c */ -#line 710 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 717 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3513,8 +3672,8 @@ yyreduce: case 104: -/* Line 1455 of yacc.c */ -#line 720 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 727 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3530,8 +3689,8 @@ yyreduce: case 105: -/* Line 1455 of yacc.c */ -#line 735 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 742 "glsl_parser.ypp" { (yyvsp[(1) - (3)].type_qualifier).i |= (yyvsp[(2) - (3)].type_qualifier).i; @@ -3542,8 +3701,8 @@ yyreduce: case 106: -/* Line 1455 of yacc.c */ -#line 742 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 749 "glsl_parser.ypp" { (yyval.parameter_declarator) = (yyvsp[(2) - (2)].parameter_declarator); (yyval.parameter_declarator)->type->qualifier = (yyvsp[(1) - (2)].type_qualifier).q; @@ -3552,8 +3711,8 @@ yyreduce: case 107: -/* Line 1455 of yacc.c */ -#line 747 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 754 "glsl_parser.ypp" { void *ctx = state; (yyvsp[(1) - (3)].type_qualifier).i |= (yyvsp[(2) - (3)].type_qualifier).i; @@ -3568,8 +3727,8 @@ yyreduce: case 108: -/* Line 1455 of yacc.c */ -#line 758 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 765 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3582,36 +3741,36 @@ yyreduce: case 109: -/* Line 1455 of yacc.c */ -#line 769 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 776 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; ;} break; case 110: -/* Line 1455 of yacc.c */ -#line 770 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 777 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; ;} break; case 111: -/* Line 1455 of yacc.c */ -#line 771 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 778 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.out = 1; ;} break; case 112: -/* Line 1455 of yacc.c */ -#line 772 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 779 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; (yyval.type_qualifier).q.out = 1; ;} break; case 115: -/* Line 1455 of yacc.c */ -#line 782 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 789 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (3)].identifier), false, NULL, NULL); @@ -3624,8 +3783,8 @@ yyreduce: case 116: -/* Line 1455 of yacc.c */ -#line 791 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 798 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (5)].identifier), true, NULL, NULL); @@ -3638,8 +3797,8 @@ yyreduce: case 117: -/* Line 1455 of yacc.c */ -#line 800 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 807 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (6)].identifier), true, (yyvsp[(5) - (6)].expression), NULL); @@ -3652,8 +3811,8 @@ yyreduce: case 118: -/* Line 1455 of yacc.c */ -#line 809 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 816 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (7)].identifier), true, NULL, (yyvsp[(7) - (7)].expression)); @@ -3666,8 +3825,8 @@ yyreduce: case 119: -/* Line 1455 of yacc.c */ -#line 818 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 825 "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)); @@ -3680,8 +3839,8 @@ yyreduce: case 120: -/* Line 1455 of yacc.c */ -#line 827 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 834 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (5)].identifier), false, NULL, (yyvsp[(5) - (5)].expression)); @@ -3694,8 +3853,8 @@ yyreduce: case 121: -/* Line 1455 of yacc.c */ -#line 840 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 847 "glsl_parser.ypp" { void *ctx = state; if ((yyvsp[(1) - (1)].fully_specified_type)->specifier->type_specifier != ast_struct) { @@ -3710,8 +3869,8 @@ yyreduce: case 122: -/* Line 1455 of yacc.c */ -#line 851 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 858 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (2)].identifier), false, NULL, NULL); @@ -3724,8 +3883,8 @@ yyreduce: case 123: -/* Line 1455 of yacc.c */ -#line 860 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 867 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), true, NULL, NULL); @@ -3738,8 +3897,8 @@ yyreduce: case 124: -/* Line 1455 of yacc.c */ -#line 869 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 876 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (5)].identifier), true, (yyvsp[(4) - (5)].expression), NULL); @@ -3752,8 +3911,8 @@ yyreduce: case 125: -/* Line 1455 of yacc.c */ -#line 878 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 885 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (6)].identifier), true, NULL, (yyvsp[(6) - (6)].expression)); @@ -3766,8 +3925,8 @@ yyreduce: case 126: -/* Line 1455 of yacc.c */ -#line 887 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 894 "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)); @@ -3780,8 +3939,8 @@ yyreduce: case 127: -/* Line 1455 of yacc.c */ -#line 896 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 903 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), false, NULL, (yyvsp[(4) - (4)].expression)); @@ -3794,8 +3953,8 @@ yyreduce: case 128: -/* Line 1455 of yacc.c */ -#line 905 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 912 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (2)].identifier), false, NULL, NULL); @@ -3810,8 +3969,8 @@ yyreduce: case 129: -/* Line 1455 of yacc.c */ -#line 919 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 926 "glsl_parser.ypp" { void *ctx = state; (yyval.fully_specified_type) = new(ctx) ast_fully_specified_type(); @@ -3822,8 +3981,8 @@ yyreduce: case 130: -/* Line 1455 of yacc.c */ -#line 926 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 933 "glsl_parser.ypp" { void *ctx = state; (yyval.fully_specified_type) = new(ctx) ast_fully_specified_type(); @@ -3835,15 +3994,15 @@ yyreduce: case 131: -/* Line 1455 of yacc.c */ -#line 936 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 943 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; ;} break; case 133: -/* Line 1455 of yacc.c */ -#line 942 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 949 "glsl_parser.ypp" { (yyval.type_qualifier) = (yyvsp[(3) - (4)].type_qualifier); ;} @@ -3851,8 +4010,8 @@ yyreduce: case 135: -/* Line 1455 of yacc.c */ -#line 950 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 957 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (3)].type_qualifier).i | (yyvsp[(3) - (3)].type_qualifier).i; ;} @@ -3860,8 +4019,8 @@ yyreduce: case 136: -/* Line 1455 of yacc.c */ -#line 957 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 964 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; @@ -3896,36 +4055,36 @@ yyreduce: case 137: -/* Line 1455 of yacc.c */ -#line 990 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 997 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.smooth = 1; ;} break; case 138: -/* Line 1455 of yacc.c */ -#line 991 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 998 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.flat = 1; ;} break; case 139: -/* Line 1455 of yacc.c */ -#line 992 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 999 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.noperspective = 1; ;} break; case 140: -/* Line 1455 of yacc.c */ -#line 996 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1003 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.constant = 1; ;} break; case 142: -/* Line 1455 of yacc.c */ -#line 1002 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1009 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (2)].type_qualifier).i | (yyvsp[(2) - (2)].type_qualifier).i; ;} @@ -3933,8 +4092,8 @@ yyreduce: case 143: -/* Line 1455 of yacc.c */ -#line 1006 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1013 "glsl_parser.ypp" { (yyval.type_qualifier) = (yyvsp[(2) - (2)].type_qualifier); (yyval.type_qualifier).q.invariant = 1; @@ -3943,71 +4102,71 @@ yyreduce: case 144: -/* Line 1455 of yacc.c */ -#line 1013 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1020 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.constant = 1; ;} break; case 145: -/* Line 1455 of yacc.c */ -#line 1014 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1021 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.attribute = 1; ;} break; case 146: -/* Line 1455 of yacc.c */ -#line 1015 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1022 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (2)].type_qualifier).i; (yyval.type_qualifier).q.varying = 1; ;} break; case 147: -/* Line 1455 of yacc.c */ -#line 1016 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1023 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.varying = 1; ;} break; case 148: -/* Line 1455 of yacc.c */ -#line 1017 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1024 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; ;} break; case 149: -/* Line 1455 of yacc.c */ -#line 1018 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1025 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.out = 1; ;} break; case 150: -/* Line 1455 of yacc.c */ -#line 1019 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1026 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.in = 1; ;} break; case 151: -/* Line 1455 of yacc.c */ -#line 1020 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1027 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.out = 1; ;} break; case 152: -/* Line 1455 of yacc.c */ -#line 1021 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1028 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.uniform = 1; ;} break; case 154: -/* Line 1455 of yacc.c */ -#line 1027 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1034 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(2) - (2)].type_specifier); (yyval.type_specifier)->precision = (yyvsp[(1) - (2)].n); @@ -4016,8 +4175,8 @@ yyreduce: case 156: -/* Line 1455 of yacc.c */ -#line 1036 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1043 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(1) - (3)].type_specifier); (yyval.type_specifier)->is_array = true; @@ -4027,8 +4186,8 @@ yyreduce: case 157: -/* Line 1455 of yacc.c */ -#line 1042 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1049 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(1) - (4)].type_specifier); (yyval.type_specifier)->is_array = true; @@ -4038,8 +4197,8 @@ yyreduce: case 158: -/* Line 1455 of yacc.c */ -#line 1051 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1058 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].n)); @@ -4049,8 +4208,8 @@ yyreduce: case 159: -/* Line 1455 of yacc.c */ -#line 1057 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1064 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].struct_specifier)); @@ -4060,8 +4219,8 @@ yyreduce: case 160: -/* Line 1455 of yacc.c */ -#line 1063 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1070 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].identifier)); @@ -4071,386 +4230,386 @@ yyreduce: case 161: -/* Line 1455 of yacc.c */ -#line 1071 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1078 "glsl_parser.ypp" { (yyval.n) = ast_void; ;} break; case 162: -/* Line 1455 of yacc.c */ -#line 1072 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1079 "glsl_parser.ypp" { (yyval.n) = ast_float; ;} break; case 163: -/* Line 1455 of yacc.c */ -#line 1073 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1080 "glsl_parser.ypp" { (yyval.n) = ast_int; ;} break; case 164: -/* Line 1455 of yacc.c */ -#line 1074 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1081 "glsl_parser.ypp" { (yyval.n) = ast_uint; ;} break; case 165: -/* Line 1455 of yacc.c */ -#line 1075 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1082 "glsl_parser.ypp" { (yyval.n) = ast_bool; ;} break; case 166: -/* Line 1455 of yacc.c */ -#line 1076 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1083 "glsl_parser.ypp" { (yyval.n) = ast_vec2; ;} break; case 167: -/* Line 1455 of yacc.c */ -#line 1077 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1084 "glsl_parser.ypp" { (yyval.n) = ast_vec3; ;} break; case 168: -/* Line 1455 of yacc.c */ -#line 1078 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1085 "glsl_parser.ypp" { (yyval.n) = ast_vec4; ;} break; case 169: -/* Line 1455 of yacc.c */ -#line 1079 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1086 "glsl_parser.ypp" { (yyval.n) = ast_bvec2; ;} break; case 170: -/* Line 1455 of yacc.c */ -#line 1080 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1087 "glsl_parser.ypp" { (yyval.n) = ast_bvec3; ;} break; case 171: -/* Line 1455 of yacc.c */ -#line 1081 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1088 "glsl_parser.ypp" { (yyval.n) = ast_bvec4; ;} break; case 172: -/* Line 1455 of yacc.c */ -#line 1082 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1089 "glsl_parser.ypp" { (yyval.n) = ast_ivec2; ;} break; case 173: -/* Line 1455 of yacc.c */ -#line 1083 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1090 "glsl_parser.ypp" { (yyval.n) = ast_ivec3; ;} break; case 174: -/* Line 1455 of yacc.c */ -#line 1084 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1091 "glsl_parser.ypp" { (yyval.n) = ast_ivec4; ;} break; case 175: -/* Line 1455 of yacc.c */ -#line 1085 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1092 "glsl_parser.ypp" { (yyval.n) = ast_uvec2; ;} break; case 176: -/* Line 1455 of yacc.c */ -#line 1086 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1093 "glsl_parser.ypp" { (yyval.n) = ast_uvec3; ;} break; case 177: -/* Line 1455 of yacc.c */ -#line 1087 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1094 "glsl_parser.ypp" { (yyval.n) = ast_uvec4; ;} break; case 178: -/* Line 1455 of yacc.c */ -#line 1088 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1095 "glsl_parser.ypp" { (yyval.n) = ast_mat2; ;} break; case 179: -/* Line 1455 of yacc.c */ -#line 1089 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1096 "glsl_parser.ypp" { (yyval.n) = ast_mat3; ;} break; case 180: -/* Line 1455 of yacc.c */ -#line 1090 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1097 "glsl_parser.ypp" { (yyval.n) = ast_mat4; ;} break; case 181: -/* Line 1455 of yacc.c */ -#line 1091 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1098 "glsl_parser.ypp" { (yyval.n) = ast_mat2; ;} break; case 182: -/* Line 1455 of yacc.c */ -#line 1092 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1099 "glsl_parser.ypp" { (yyval.n) = ast_mat2x3; ;} break; case 183: -/* Line 1455 of yacc.c */ -#line 1093 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1100 "glsl_parser.ypp" { (yyval.n) = ast_mat2x4; ;} break; case 184: -/* Line 1455 of yacc.c */ -#line 1094 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1101 "glsl_parser.ypp" { (yyval.n) = ast_mat3x2; ;} break; case 185: -/* Line 1455 of yacc.c */ -#line 1095 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1102 "glsl_parser.ypp" { (yyval.n) = ast_mat3; ;} break; case 186: -/* Line 1455 of yacc.c */ -#line 1096 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1103 "glsl_parser.ypp" { (yyval.n) = ast_mat3x4; ;} break; case 187: -/* Line 1455 of yacc.c */ -#line 1097 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1104 "glsl_parser.ypp" { (yyval.n) = ast_mat4x2; ;} break; case 188: -/* Line 1455 of yacc.c */ -#line 1098 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1105 "glsl_parser.ypp" { (yyval.n) = ast_mat4x3; ;} break; case 189: -/* Line 1455 of yacc.c */ -#line 1099 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1106 "glsl_parser.ypp" { (yyval.n) = ast_mat4; ;} break; case 190: -/* Line 1455 of yacc.c */ -#line 1100 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1107 "glsl_parser.ypp" { (yyval.n) = ast_sampler1d; ;} break; case 191: -/* Line 1455 of yacc.c */ -#line 1101 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1108 "glsl_parser.ypp" { (yyval.n) = ast_sampler2d; ;} break; case 192: -/* Line 1455 of yacc.c */ -#line 1102 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1109 "glsl_parser.ypp" { (yyval.n) = ast_sampler2drect; ;} break; case 193: -/* Line 1455 of yacc.c */ -#line 1103 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1110 "glsl_parser.ypp" { (yyval.n) = ast_sampler3d; ;} break; case 194: -/* Line 1455 of yacc.c */ -#line 1104 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1111 "glsl_parser.ypp" { (yyval.n) = ast_samplercube; ;} break; case 195: -/* Line 1455 of yacc.c */ -#line 1105 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1112 "glsl_parser.ypp" { (yyval.n) = ast_sampler1dshadow; ;} break; case 196: -/* Line 1455 of yacc.c */ -#line 1106 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1113 "glsl_parser.ypp" { (yyval.n) = ast_sampler2dshadow; ;} break; case 197: -/* Line 1455 of yacc.c */ -#line 1107 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1114 "glsl_parser.ypp" { (yyval.n) = ast_sampler2drectshadow; ;} break; case 198: -/* Line 1455 of yacc.c */ -#line 1108 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1115 "glsl_parser.ypp" { (yyval.n) = ast_samplercubeshadow; ;} break; case 199: -/* Line 1455 of yacc.c */ -#line 1109 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1116 "glsl_parser.ypp" { (yyval.n) = ast_sampler1darray; ;} break; case 200: -/* Line 1455 of yacc.c */ -#line 1110 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1117 "glsl_parser.ypp" { (yyval.n) = ast_sampler2darray; ;} break; case 201: -/* Line 1455 of yacc.c */ -#line 1111 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1118 "glsl_parser.ypp" { (yyval.n) = ast_sampler1darrayshadow; ;} break; case 202: -/* Line 1455 of yacc.c */ -#line 1112 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1119 "glsl_parser.ypp" { (yyval.n) = ast_sampler2darrayshadow; ;} break; case 203: -/* Line 1455 of yacc.c */ -#line 1113 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1120 "glsl_parser.ypp" { (yyval.n) = ast_isampler1d; ;} break; case 204: -/* Line 1455 of yacc.c */ -#line 1114 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1121 "glsl_parser.ypp" { (yyval.n) = ast_isampler2d; ;} break; case 205: -/* Line 1455 of yacc.c */ -#line 1115 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1122 "glsl_parser.ypp" { (yyval.n) = ast_isampler3d; ;} break; case 206: -/* Line 1455 of yacc.c */ -#line 1116 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1123 "glsl_parser.ypp" { (yyval.n) = ast_isamplercube; ;} break; case 207: -/* Line 1455 of yacc.c */ -#line 1117 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1124 "glsl_parser.ypp" { (yyval.n) = ast_isampler1darray; ;} break; case 208: -/* Line 1455 of yacc.c */ -#line 1118 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1125 "glsl_parser.ypp" { (yyval.n) = ast_isampler2darray; ;} break; case 209: -/* Line 1455 of yacc.c */ -#line 1119 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1126 "glsl_parser.ypp" { (yyval.n) = ast_usampler1d; ;} break; case 210: -/* Line 1455 of yacc.c */ -#line 1120 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1127 "glsl_parser.ypp" { (yyval.n) = ast_usampler2d; ;} break; case 211: -/* Line 1455 of yacc.c */ -#line 1121 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1128 "glsl_parser.ypp" { (yyval.n) = ast_usampler3d; ;} break; case 212: -/* Line 1455 of yacc.c */ -#line 1122 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1129 "glsl_parser.ypp" { (yyval.n) = ast_usamplercube; ;} break; case 213: -/* Line 1455 of yacc.c */ -#line 1123 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1130 "glsl_parser.ypp" { (yyval.n) = ast_usampler1darray; ;} break; case 214: -/* Line 1455 of yacc.c */ -#line 1124 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1131 "glsl_parser.ypp" { (yyval.n) = ast_usampler2darray; ;} break; case 215: -/* Line 1455 of yacc.c */ -#line 1128 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1135 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4466,8 +4625,8 @@ yyreduce: case 216: -/* Line 1455 of yacc.c */ -#line 1139 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1146 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4483,8 +4642,8 @@ yyreduce: case 217: -/* Line 1455 of yacc.c */ -#line 1150 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1157 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4500,8 +4659,8 @@ yyreduce: case 218: -/* Line 1455 of yacc.c */ -#line 1165 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1172 "glsl_parser.ypp" { void *ctx = state; (yyval.struct_specifier) = new(ctx) ast_struct_specifier((yyvsp[(2) - (5)].identifier), (yyvsp[(4) - (5)].node)); @@ -4511,8 +4670,8 @@ yyreduce: case 219: -/* Line 1455 of yacc.c */ -#line 1171 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1178 "glsl_parser.ypp" { void *ctx = state; (yyval.struct_specifier) = new(ctx) ast_struct_specifier(NULL, (yyvsp[(3) - (4)].node)); @@ -4522,8 +4681,8 @@ yyreduce: case 220: -/* Line 1455 of yacc.c */ -#line 1180 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1187 "glsl_parser.ypp" { (yyval.node) = (struct ast_node *) (yyvsp[(1) - (1)].declarator_list); (yyvsp[(1) - (1)].declarator_list)->link.self_link(); @@ -4532,8 +4691,8 @@ yyreduce: case 221: -/* Line 1455 of yacc.c */ -#line 1185 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1192 "glsl_parser.ypp" { (yyval.node) = (struct ast_node *) (yyvsp[(1) - (2)].node); (yyval.node)->link.insert_before(& (yyvsp[(2) - (2)].declarator_list)->link); @@ -4542,8 +4701,8 @@ yyreduce: case 222: -/* Line 1455 of yacc.c */ -#line 1193 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1200 "glsl_parser.ypp" { void *ctx = state; ast_fully_specified_type *type = new(ctx) ast_fully_specified_type(); @@ -4559,8 +4718,8 @@ yyreduce: case 223: -/* Line 1455 of yacc.c */ -#line 1208 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1215 "glsl_parser.ypp" { (yyval.declaration) = (yyvsp[(1) - (1)].declaration); (yyvsp[(1) - (1)].declaration)->link.self_link(); @@ -4569,8 +4728,8 @@ yyreduce: case 224: -/* Line 1455 of yacc.c */ -#line 1213 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1220 "glsl_parser.ypp" { (yyval.declaration) = (yyvsp[(1) - (3)].declaration); (yyval.declaration)->link.insert_before(& (yyvsp[(3) - (3)].declaration)->link); @@ -4579,8 +4738,8 @@ yyreduce: case 225: -/* Line 1455 of yacc.c */ -#line 1221 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1228 "glsl_parser.ypp" { void *ctx = state; (yyval.declaration) = new(ctx) ast_declaration((yyvsp[(1) - (1)].identifier), false, NULL, NULL); @@ -4590,8 +4749,8 @@ yyreduce: case 226: -/* Line 1455 of yacc.c */ -#line 1227 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1234 "glsl_parser.ypp" { void *ctx = state; (yyval.declaration) = new(ctx) ast_declaration((yyvsp[(1) - (4)].identifier), true, (yyvsp[(3) - (4)].expression), NULL); @@ -4601,29 +4760,29 @@ yyreduce: case 231: -/* Line 1455 of yacc.c */ -#line 1250 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1257 "glsl_parser.ypp" { (yyval.node) = (struct ast_node *) (yyvsp[(1) - (1)].compound_statement); ;} break; case 237: -/* Line 1455 of yacc.c */ -#line 1262 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1269 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; case 238: -/* Line 1455 of yacc.c */ -#line 1263 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1270 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; case 241: -/* Line 1455 of yacc.c */ -#line 1270 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1277 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(true, NULL); @@ -4633,8 +4792,8 @@ yyreduce: case 242: -/* Line 1455 of yacc.c */ -#line 1276 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1283 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(true, (yyvsp[(2) - (3)].node)); @@ -4644,15 +4803,15 @@ yyreduce: case 243: -/* Line 1455 of yacc.c */ -#line 1284 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1291 "glsl_parser.ypp" { (yyval.node) = (struct ast_node *) (yyvsp[(1) - (1)].compound_statement); ;} break; case 245: -/* Line 1455 of yacc.c */ -#line 1290 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1297 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(false, NULL); @@ -4662,8 +4821,8 @@ yyreduce: case 246: -/* Line 1455 of yacc.c */ -#line 1296 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1303 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(false, (yyvsp[(2) - (3)].node)); @@ -4673,8 +4832,8 @@ yyreduce: case 247: -/* Line 1455 of yacc.c */ -#line 1305 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1312 "glsl_parser.ypp" { if ((yyvsp[(1) - (1)].node) == NULL) { _mesa_glsl_error(& (yylsp[(1) - (1)]), state, " statement\n"); @@ -4688,8 +4847,8 @@ yyreduce: case 248: -/* Line 1455 of yacc.c */ -#line 1315 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1322 "glsl_parser.ypp" { if ((yyvsp[(2) - (2)].node) == NULL) { _mesa_glsl_error(& (yylsp[(2) - (2)]), state, " statement\n"); @@ -4702,8 +4861,8 @@ yyreduce: case 249: -/* Line 1455 of yacc.c */ -#line 1327 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1334 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_expression_statement(NULL); @@ -4713,8 +4872,8 @@ yyreduce: case 250: -/* Line 1455 of yacc.c */ -#line 1333 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1340 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_expression_statement((yyvsp[(1) - (2)].expression)); @@ -4724,8 +4883,8 @@ yyreduce: case 251: -/* Line 1455 of yacc.c */ -#line 1342 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1349 "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)); @@ -4735,8 +4894,8 @@ yyreduce: case 252: -/* Line 1455 of yacc.c */ -#line 1351 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1358 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].node), NULL); @@ -4746,8 +4905,8 @@ yyreduce: case 253: -/* Line 1455 of yacc.c */ -#line 1357 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1364 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].node), NULL); @@ -4757,8 +4916,8 @@ yyreduce: case 254: -/* Line 1455 of yacc.c */ -#line 1363 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1370 "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)); @@ -4768,8 +4927,8 @@ yyreduce: case 255: -/* Line 1455 of yacc.c */ -#line 1372 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1379 "glsl_parser.ypp" { (yyval.node) = (struct ast_node *) (yyvsp[(1) - (1)].expression); ;} @@ -4777,8 +4936,8 @@ yyreduce: case 256: -/* Line 1455 of yacc.c */ -#line 1376 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1383 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), false, NULL, (yyvsp[(4) - (4)].expression)); @@ -4793,8 +4952,8 @@ yyreduce: case 260: -/* Line 1455 of yacc.c */ -#line 1399 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1406 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_while, @@ -4805,8 +4964,8 @@ yyreduce: case 261: -/* Line 1455 of yacc.c */ -#line 1406 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1413 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_do_while, @@ -4817,8 +4976,8 @@ yyreduce: case 262: -/* Line 1455 of yacc.c */ -#line 1413 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1420 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_for, @@ -4829,8 +4988,8 @@ yyreduce: case 266: -/* Line 1455 of yacc.c */ -#line 1429 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1436 "glsl_parser.ypp" { (yyval.node) = NULL; ;} @@ -4838,8 +4997,8 @@ yyreduce: case 267: -/* Line 1455 of yacc.c */ -#line 1436 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1443 "glsl_parser.ypp" { (yyval.for_rest_statement).cond = (yyvsp[(1) - (2)].node); (yyval.for_rest_statement).rest = NULL; @@ -4848,8 +5007,8 @@ yyreduce: case 268: -/* Line 1455 of yacc.c */ -#line 1441 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1448 "glsl_parser.ypp" { (yyval.for_rest_statement).cond = (yyvsp[(1) - (3)].node); (yyval.for_rest_statement).rest = (yyvsp[(3) - (3)].expression); @@ -4858,8 +5017,8 @@ yyreduce: case 269: -/* Line 1455 of yacc.c */ -#line 1450 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1457 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_continue, NULL); @@ -4869,8 +5028,8 @@ yyreduce: case 270: -/* Line 1455 of yacc.c */ -#line 1456 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1463 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_break, NULL); @@ -4880,8 +5039,8 @@ yyreduce: case 271: -/* Line 1455 of yacc.c */ -#line 1462 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1469 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_return, NULL); @@ -4891,8 +5050,8 @@ yyreduce: case 272: -/* Line 1455 of yacc.c */ -#line 1468 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1475 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_return, (yyvsp[(2) - (3)].expression)); @@ -4902,8 +5061,8 @@ yyreduce: case 273: -/* Line 1455 of yacc.c */ -#line 1474 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1481 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_discard, NULL); @@ -4913,22 +5072,22 @@ yyreduce: case 274: -/* Line 1455 of yacc.c */ -#line 1482 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1489 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (1)].function_definition); ;} break; case 275: -/* Line 1455 of yacc.c */ -#line 1483 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1490 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; case 276: -/* Line 1455 of yacc.c */ -#line 1488 "glsl_parser.ypp" +/* Line 1464 of yacc.c */ +#line 1495 "glsl_parser.ypp" { void *ctx = state; (yyval.function_definition) = new(ctx) ast_function_definition(); @@ -4940,8 +5099,8 @@ yyreduce: -/* Line 1455 of yacc.c */ -#line 4945 "glsl_parser.cpp" +/* Line 1464 of yacc.c */ +#line 5104 "glsl_parser.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); diff --git a/src/glsl/glsl_parser.h b/src/glsl/glsl_parser.h index 9c4e12fd7ef..367b46f49e5 100644 --- a/src/glsl/glsl_parser.h +++ b/src/glsl/glsl_parser.h @@ -1,10 +1,9 @@ - -/* A Bison parser, made by GNU Bison 2.4.1. */ +/* A Bison parser, made by GNU Bison 2.4.2. */ /* Skeleton interface for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2006, 2009-2010 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 @@ -146,56 +145,86 @@ LOWP = 362, MEDIUMP = 363, HIGHP = 364, - PRECISION = 365, - VERSION = 366, - EXTENSION = 367, - LINE = 368, - PRAGMA = 369, - COLON = 370, - EOL = 371, - INTERFACE = 372, - OUTPUT = 373, - LAYOUT_TOK = 374, - ASM = 375, - CLASS = 376, - UNION = 377, - ENUM = 378, - TYPEDEF = 379, - TEMPLATE = 380, - THIS = 381, - PACKED = 382, - GOTO = 383, - INLINE_TOK = 384, - NOINLINE = 385, - VOLATILE = 386, - PUBLIC_TOK = 387, - STATIC = 388, - EXTERN = 389, - EXTERNAL = 390, - LONG = 391, - SHORT = 392, - DOUBLE = 393, - HALF = 394, - FIXED = 395, - UNSIGNED = 396, - INPUT = 397, - OUPTUT = 398, - HVEC2 = 399, - HVEC3 = 400, - HVEC4 = 401, - DVEC2 = 402, - DVEC3 = 403, - DVEC4 = 404, - FVEC2 = 405, - FVEC3 = 406, - FVEC4 = 407, - SAMPLER2DRECT = 408, - SAMPLER3DRECT = 409, - SAMPLER2DRECTSHADOW = 410, - SIZEOF = 411, - CAST = 412, - NAMESPACE = 413, - USING = 414 + SUPERP = 365, + PRECISION = 366, + VERSION = 367, + EXTENSION = 368, + LINE = 369, + PRAGMA = 370, + COLON = 371, + EOL = 372, + INTERFACE = 373, + OUTPUT = 374, + LAYOUT_TOK = 375, + ASM = 376, + CLASS = 377, + UNION = 378, + ENUM = 379, + TYPEDEF = 380, + TEMPLATE = 381, + THIS = 382, + PACKED = 383, + GOTO = 384, + INLINE_TOK = 385, + NOINLINE = 386, + VOLATILE = 387, + PUBLIC_TOK = 388, + STATIC = 389, + EXTERN = 390, + EXTERNAL = 391, + LONG = 392, + SHORT = 393, + DOUBLE = 394, + HALF = 395, + FIXED = 396, + UNSIGNED = 397, + INPUT = 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, + COMMON = 416, + PARTITION = 417, + ACTIVE = 418, + SAMPLERBUFFER = 419, + FILTER = 420, + IMAGE1D = 421, + IMAGE2D = 422, + IMAGE3D = 423, + IMAGECUBE = 424, + IMAGE1DARRAY = 425, + IMAGE2DARRAY = 426, + IIMAGE1D = 427, + IIMAGE2D = 428, + IIMAGE3D = 429, + IIMAGECUBE = 430, + IIMAGE1DARRAY = 431, + IIMAGE2DARRAY = 432, + UIMAGE1D = 433, + UIMAGE2D = 434, + UIMAGE3D = 435, + UIMAGECUBE = 436, + UIMAGE1DARRAY = 437, + UIMAGE2DARRAY = 438, + IMAGE1DSHADOW = 439, + IMAGE2DSHADOW = 440, + IMAGEBUFFER = 441, + IIMAGEBUFFER = 442, + UIMAGEBUFFER = 443, + ROW_MAJOR = 444 }; #endif @@ -205,7 +234,7 @@ typedef union YYSTYPE { -/* Line 1676 of yacc.c */ +/* Line 1685 of yacc.c */ #line 45 "glsl_parser.ypp" int n; @@ -236,8 +265,8 @@ typedef union YYSTYPE -/* Line 1676 of yacc.c */ -#line 241 "glsl_parser.h" +/* Line 1685 of yacc.c */ +#line 270 "glsl_parser.h" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ diff --git a/src/glsl/glsl_parser.ypp b/src/glsl/glsl_parser.ypp index 7cabefbd34f..493b74fb692 100644 --- a/src/glsl/glsl_parser.ypp +++ b/src/glsl/glsl_parser.ypp @@ -94,7 +94,7 @@ %token MOD_ASSIGN LEFT_ASSIGN RIGHT_ASSIGN AND_ASSIGN XOR_ASSIGN OR_ASSIGN %token SUB_ASSIGN %token INVARIANT -%token LOWP MEDIUMP HIGHP PRECISION +%token LOWP MEDIUMP HIGHP SUPERP PRECISION %token VERSION EXTENSION LINE PRAGMA COLON EOL INTERFACE OUTPUT %token LAYOUT_TOK @@ -108,6 +108,13 @@ %token SAMPLER2DRECT SAMPLER3DRECT SAMPLER2DRECTSHADOW %token SIZEOF CAST NAMESPACE USING +%token COMMON PARTITION ACTIVE SAMPLERBUFFER FILTER +%token IMAGE1D IMAGE2D IMAGE3D IMAGECUBE IMAGE1DARRAY IMAGE2DARRAY +%token IIMAGE1D IIMAGE2D IIMAGE3D IIMAGECUBE IIMAGE1DARRAY IIMAGE2DARRAY +%token UIMAGE1D UIMAGE2D UIMAGE3D UIMAGECUBE UIMAGE1DARRAY UIMAGE2DARRAY +%token IMAGE1DSHADOW IMAGE2DSHADOW IMAGEBUFFER IIMAGEBUFFER UIMAGEBUFFER +%token ROW_MAJOR + %type variable_identifier %type statement %type statement_list -- 2.30.2