diff options
author | Eric Anholt <[email protected]> | 2010-08-02 11:26:43 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2010-08-02 11:26:43 -0700 |
commit | 47f3f223119739efd337ce1757c2e00d61be34cb (patch) | |
tree | c900648c0225b9557e13467974eff4fd7ba109ac /src/glsl | |
parent | 960ba0014af7009f8543c55f455271cf3cb45cd6 (diff) |
glsl2: Add support for floating constants like "1f".
Fixes glsl-floating-constant-120.
Diffstat (limited to 'src/glsl')
-rw-r--r-- | src/glsl/glsl_lexer.cpp | 860 | ||||
-rw-r--r-- | src/glsl/glsl_lexer.lpp | 4 |
2 files changed, 438 insertions, 426 deletions
diff --git a/src/glsl/glsl_lexer.cpp b/src/glsl/glsl_lexer.cpp index af29dce3376..43be3170ba8 100644 --- a/src/glsl/glsl_lexer.cpp +++ b/src/glsl/glsl_lexer.cpp @@ -358,8 +358,8 @@ static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner ); *yy_cp = '\0'; \ yyg->yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 146 -#define YY_END_OF_BUFFER 147 +#define YY_NUM_RULES 147 +#define YY_END_OF_BUFFER 148 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -367,66 +367,66 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[524] = +static yyconst flex_int16_t yy_accept[525] = { 0, - 0, 0, 9, 9, 147, 145, 1, 14, 145, 145, - 145, 145, 145, 145, 145, 145, 90, 88, 145, 145, - 145, 144, 145, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 145, 1, 145, 85, 146, 9, 13, - 146, 12, 10, 11, 1, 74, 81, 75, 84, 78, + 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, 69, 80, 70, 87, 92, 79, 93, 90, 0, 0, - 0, 88, 0, 71, 73, 72, 0, 144, 77, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 22, 144, 144, 144, 144, 144, 144, 144, 144, 144, - - 144, 144, 144, 144, 26, 50, 144, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 144, 86, 76, 1, 0, 0, 2, - 0, 0, 0, 0, 9, 8, 12, 11, 0, 92, - 91, 0, 93, 0, 94, 89, 82, 83, 97, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 25, 144, - 144, 144, 144, 144, 144, 144, 144, 19, 144, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 51, 144, - - 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 0, 0, 0, 0, 8, 0, 92, 0, - 91, 0, 93, 94, 144, 17, 144, 144, 137, 144, - 144, 144, 144, 144, 144, 144, 144, 24, 100, 144, - 144, 144, 57, 144, 144, 105, 119, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 116, 140, 38, 39, - 40, 144, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 144, 144, 103, 95, - 144, 144, 144, 144, 144, 144, 35, 36, 37, 67, - - 144, 144, 0, 0, 0, 0, 0, 91, 144, 20, - 29, 30, 31, 144, 98, 16, 144, 144, 144, 144, - 127, 128, 129, 144, 96, 120, 18, 130, 131, 132, - 142, 124, 125, 126, 144, 52, 122, 144, 144, 32, - 33, 34, 144, 144, 144, 144, 144, 144, 144, 144, - 144, 144, 144, 144, 144, 144, 117, 144, 144, 144, - 144, 144, 144, 144, 144, 99, 144, 139, 144, 144, - 23, 0, 0, 0, 0, 144, 144, 144, 144, 144, - 118, 113, 108, 144, 144, 68, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 144, 144, 144, 144, 123, - - 104, 144, 111, 28, 144, 136, 58, 112, 66, 106, - 144, 144, 144, 144, 144, 144, 0, 0, 0, 0, - 144, 144, 144, 107, 27, 144, 144, 144, 141, 144, - 144, 144, 144, 144, 144, 101, 53, 144, 54, 144, - 0, 0, 0, 7, 0, 144, 55, 21, 114, 144, - 144, 144, 109, 144, 144, 144, 144, 144, 144, 102, - 121, 110, 0, 0, 6, 0, 0, 0, 3, 15, - 115, 56, 138, 144, 143, 60, 61, 62, 144, 0, - 0, 0, 0, 144, 144, 144, 144, 144, 144, 4, - 0, 5, 0, 0, 0, 144, 144, 144, 144, 144, - - 63, 0, 144, 144, 144, 144, 144, 59, 144, 133, - 144, 134, 144, 144, 144, 64, 144, 65, 144, 144, - 144, 135, 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 } ; static yyconst flex_int32_t yy_ec[256] = @@ -464,96 +464,96 @@ static yyconst flex_int32_t yy_ec[256] = static yyconst flex_int32_t yy_meta[60] = { 0, 1, 2, 3, 1, 1, 1, 1, 1, 1, 4, - 4, 5, 1, 6, 6, 6, 6, 6, 6, 7, - 1, 1, 1, 1, 8, 8, 8, 9, 10, 11, - 11, 11, 12, 1, 8, 8, 8, 8, 9, 10, - 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, - 11, 11, 11, 11, 11, 12, 11, 11, 1 + 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 } ; -static yyconst flex_int16_t yy_base[543] = +static yyconst flex_int16_t yy_base[542] = { 0, 0, 58, 81, 0, 814, 815, 59, 815, 790, 789, - 54, 788, 55, 56, 54, 787, 129, 130, 53, 786, - 127, 0, 774, 101, 106, 126, 116, 128, 143, 759, - 144, 136, 132, 142, 147, 753, 154, 766, 157, 163, - 159, 176, 762, 149, 212, 191, 780, 815, 215, 815, - 789, 232, 815, 0, 219, 815, 815, 815, 815, 815, - 815, 815, 815, 815, 198, 815, 203, 200, 216, 224, - 0, 229, 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, 218, 731, 741, - - 727, 733, 736, 737, 0, 213, 736, 717, 216, 721, - 734, 725, 211, 718, 732, 729, 731, 714, 719, 716, - 705, 714, 224, 718, 714, 716, 705, 708, 221, 713, - 705, 717, 230, 710, 815, 815, 274, 267, 279, 815, - 696, 708, 700, 710, 275, 0, 269, 0, 280, 815, - 264, 284, 815, 282, 297, 0, 815, 815, 0, 698, - 702, 711, 708, 692, 691, 691, 258, 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, 297, 673, 676, 667, 674, 663, 667, - - 673, 664, 655, 658, 656, 666, 656, 651, 649, 649, - 651, 648, 659, 658, 271, 653, 648, 637, 313, 655, - 657, 646, 638, 642, 653, 637, 0, 324, 324, 312, - 815, 331, 344, 815, 643, 0, 641, 340, 0, 634, - 632, 630, 638, 627, 644, 633, 343, 0, 0, 627, - 637, 637, 0, 622, 349, 0, 0, 624, 352, 625, - 619, 618, 619, 618, 358, 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, 363, 361, 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, 369, 375, 378, 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, 551, 0, 550, 546, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 531, 544, 531, 528, 0, - - 0, 532, 0, 0, 524, 0, 0, 0, 0, 0, - 512, 523, 512, 518, 512, 507, 500, 395, 515, 501, - 495, 508, 502, 0, 0, 492, 496, 475, 0, 475, - 470, 464, 450, 390, 441, 0, 0, 437, 0, 435, - 430, 386, 360, 815, 425, 432, 0, 0, 0, 431, - 417, 429, 0, 430, 419, 438, 437, 436, 409, 0, - 0, 0, 413, 415, 815, 418, 0, 396, 815, 0, - 0, 0, 0, 402, 0, 420, 371, 420, 414, 402, - 420, 422, 424, 405, 405, 407, 403, 389, 369, 815, - 428, 815, 441, 0, 436, 350, 365, 315, 301, 295, - - 0, 438, 288, 287, 268, 279, 253, 0, 191, 197, - 177, 0, 167, 159, 141, 0, 131, 0, 125, 32, - 11, 0, 815, 472, 476, 483, 490, 495, 501, 507, - 509, 519, 528, 532, 536, 542, 553, 559, 561, 570, - 581, 583 + 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 } ; -static yyconst flex_int16_t yy_def[543] = +static yyconst flex_int16_t yy_def[542] = { 0, - 523, 1, 523, 3, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 524, 523, 523, - 523, 525, 523, 525, 525, 525, 525, 525, 525, 525, + 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, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 526, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 527, 523, 528, 17, 529, 530, - 531, 524, 523, 523, 523, 523, 523, 525, 523, 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, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 532, 523, 526, 533, 523, - 528, 534, 523, 523, 530, 531, 523, 523, 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, @@ -561,8 +561,8 @@ static yyconst flex_int16_t yy_def[543] = 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 523, 523, 523, 523, 532, 523, 533, 535, - 523, 523, 534, 523, 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, @@ -570,33 +570,33 @@ static yyconst flex_int16_t yy_def[543] = 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 523, 523, 523, 523, 523, 535, 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, 523, 523, 523, 523, 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, 523, 523, 523, 523, + 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, - 523, 536, 537, 523, 523, 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, - 525, 525, 523, 538, 523, 523, 539, 537, 523, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 523, - 540, 541, 539, 525, 525, 525, 525, 525, 525, 523, - 523, 523, 523, 542, 541, 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, 542, 525, 525, 525, 525, 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, 0, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523 + 525, 525, 525, 0, 524, 524, 524, 524, 524, 524, + 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, + 524 } ; static yyconst flex_int16_t yy_nxt[875] = @@ -607,8 +607,8 @@ static yyconst flex_int16_t yy_nxt[875] = 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, 522, 63, 65, 65, 65, - 65, 65, 65, 65, 73, 74, 59, 62, 64, 521, + 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, @@ -616,87 +616,87 @@ static yyconst flex_int16_t yy_nxt[875] = 54, 54, 54, 54, 48, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, - 67, 67, 68, 68, 68, 68, 68, 68, 69, 76, - 77, 80, 81, 82, 89, 83, 70, 70, 90, 84, - 85, 71, 520, 91, 86, 519, 108, 70, 70, 92, - 87, 135, 93, 88, 94, 105, 110, 96, 102, 109, - 111, 112, 106, 95, 71, 97, 103, 98, 115, 107, - 99, 119, 139, 140, 113, 518, 100, 104, 120, 121, - - 517, 125, 122, 116, 126, 129, 117, 136, 123, 130, - 131, 124, 127, 137, 132, 55, 145, 138, 145, 128, - 55, 516, 55, 133, 515, 149, 150, 67, 514, 141, - 152, 153, 523, 154, 154, 142, 149, 150, 513, 143, - 67, 152, 153, 70, 144, 147, 147, 147, 147, 147, - 147, 147, 177, 197, 70, 523, 70, 185, 208, 198, - 186, 187, 192, 215, 188, 178, 189, 70, 139, 140, - 193, 216, 220, 209, 221, 137, 145, 55, 145, 138, - 139, 140, 147, 147, 147, 147, 147, 147, 147, 228, - 228, 230, 231, 232, 232, 155, 155, 155, 155, 155, - - 155, 155, 230, 231, 512, 141, 523, 523, 242, 243, - 292, 142, 269, 270, 271, 143, 511, 141, 293, 510, - 144, 307, 307, 142, 509, 234, 508, 143, 297, 298, - 299, 507, 144, 523, 523, 506, 234, 229, 229, 229, - 229, 229, 229, 229, 233, 233, 233, 233, 233, 233, - 233, 505, 150, 523, 523, 311, 312, 313, 321, 322, - 323, 464, 465, 150, 328, 329, 330, 332, 333, 334, - 523, 523, 153, 340, 341, 342, 308, 308, 308, 308, - 308, 308, 308, 153, 387, 388, 389, 464, 465, 231, - 390, 391, 392, 393, 394, 395, 418, 464, 465, 504, - - 231, 486, 487, 503, 456, 457, 458, 501, 442, 443, - 443, 443, 443, 443, 443, 459, 464, 465, 467, 464, - 465, 491, 492, 491, 492, 464, 465, 500, 481, 491, - 492, 466, 466, 466, 466, 466, 466, 491, 492, 491, - 492, 467, 491, 492, 499, 498, 497, 496, 490, 489, - 488, 485, 494, 484, 493, 493, 493, 493, 493, 493, - 480, 479, 478, 477, 476, 475, 474, 473, 472, 471, - 470, 469, 463, 462, 461, 494, 72, 72, 72, 460, - 72, 78, 78, 78, 78, 78, 78, 78, 148, 148, - 148, 148, 148, 148, 148, 65, 65, 455, 65, 65, - - 151, 151, 454, 151, 151, 69, 69, 69, 453, 69, - 155, 452, 155, 155, 156, 156, 156, 156, 156, 227, - 227, 451, 227, 227, 227, 227, 227, 227, 227, 227, - 227, 229, 450, 229, 229, 233, 449, 233, 233, 308, - 448, 308, 308, 466, 466, 447, 446, 466, 445, 444, - 441, 440, 439, 466, 468, 468, 438, 437, 468, 468, - 482, 482, 436, 435, 482, 482, 483, 483, 483, 483, - 483, 493, 493, 434, 433, 493, 432, 431, 430, 429, - 428, 493, 495, 495, 427, 426, 495, 495, 502, 502, - 502, 502, 502, 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, 396, 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, 343, 339, 338, 337, - 336, 335, 331, 327, 326, 325, 324, 320, 319, 318, - 317, 316, 315, 314, 310, 309, 306, 305, 304, 303, - 302, 301, 300, 296, 295, 294, 291, 290, 289, 288, - - 287, 286, 285, 284, 283, 282, 281, 280, 279, 278, - 277, 276, 275, 274, 273, 272, 268, 267, 266, 265, - 264, 263, 262, 261, 260, 259, 258, 257, 256, 255, - 254, 253, 252, 251, 250, 249, 248, 247, 246, 245, - 244, 241, 240, 239, 238, 237, 236, 235, 226, 225, - 224, 223, 222, 219, 218, 217, 214, 213, 212, 211, - 210, 207, 206, 205, 204, 203, 202, 201, 200, 199, - 196, 195, 194, 191, 190, 184, 183, 182, 181, 180, - 179, 176, 175, 174, 173, 172, 171, 170, 169, 168, - 167, 166, 165, 164, 163, 162, 161, 160, 159, 158, - - 157, 146, 75, 134, 118, 114, 101, 79, 75, 66, - 60, 57, 56, 523, 5, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523 + 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 } ; static yyconst flex_int16_t yy_chk[875] = @@ -707,8 +707,8 @@ static yyconst flex_int16_t yy_chk[875] = 1, 1, 1, 1, 1, 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, 521, 14, 15, 15, 15, - 15, 15, 15, 15, 19, 19, 11, 13, 14, 520, + 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, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, @@ -716,87 +716,87 @@ static yyconst flex_int16_t yy_chk[875] = 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, 18, 17, 17, 17, 17, 17, 17, 17, 21, - 21, 24, 24, 25, 27, 25, 17, 18, 27, 25, - 26, 17, 519, 27, 26, 517, 33, 17, 18, 27, - 26, 44, 28, 26, 28, 32, 34, 29, 31, 33, - 34, 35, 32, 28, 17, 29, 31, 29, 37, 32, - 29, 39, 46, 46, 35, 515, 29, 31, 39, 39, - - 514, 40, 39, 37, 40, 41, 37, 44, 39, 41, - 42, 39, 40, 45, 42, 45, 49, 45, 49, 40, - 55, 513, 55, 42, 511, 65, 65, 69, 510, 46, - 67, 67, 68, 70, 70, 46, 65, 65, 509, 46, - 72, 67, 67, 69, 46, 52, 52, 52, 52, 52, - 52, 52, 98, 113, 69, 68, 72, 106, 123, 113, - 106, 106, 109, 129, 106, 98, 106, 72, 138, 138, - 109, 129, 133, 123, 133, 137, 145, 137, 145, 137, - 139, 139, 147, 147, 147, 147, 147, 147, 147, 149, - 149, 151, 151, 152, 152, 154, 154, 154, 154, 154, - - 154, 154, 151, 151, 507, 138, 155, 155, 167, 167, - 215, 138, 194, 194, 194, 138, 506, 139, 215, 505, - 138, 230, 230, 139, 504, 155, 503, 139, 219, 219, - 219, 500, 139, 229, 229, 499, 155, 228, 228, 228, - 228, 228, 228, 228, 232, 232, 232, 232, 232, 232, - 232, 498, 229, 233, 233, 238, 238, 238, 247, 247, - 247, 443, 443, 229, 255, 255, 255, 259, 259, 259, - 308, 308, 233, 265, 265, 265, 307, 307, 307, 307, - 307, 307, 307, 233, 344, 344, 344, 442, 442, 308, - 345, 345, 345, 346, 346, 346, 418, 468, 468, 497, - - 308, 477, 477, 496, 434, 434, 434, 489, 418, 418, - 418, 418, 418, 418, 418, 434, 464, 464, 442, 466, - 466, 481, 481, 482, 482, 483, 483, 488, 464, 491, - 491, 466, 466, 466, 466, 466, 466, 495, 495, 502, - 502, 442, 493, 493, 487, 486, 485, 484, 480, 479, - 478, 476, 481, 474, 493, 493, 493, 493, 493, 493, - 463, 459, 458, 457, 456, 455, 454, 452, 451, 450, - 446, 445, 441, 440, 438, 481, 524, 524, 524, 435, - 524, 525, 525, 525, 525, 525, 525, 525, 526, 526, - 526, 526, 526, 526, 526, 527, 527, 433, 527, 527, - - 528, 528, 432, 528, 528, 529, 529, 529, 431, 529, - 530, 430, 530, 530, 531, 531, 531, 531, 531, 532, - 532, 428, 532, 532, 532, 532, 532, 532, 532, 532, - 532, 533, 427, 533, 533, 534, 426, 534, 534, 535, - 423, 535, 535, 536, 536, 422, 421, 536, 420, 419, - 417, 416, 415, 536, 537, 537, 414, 413, 537, 537, - 538, 538, 412, 411, 538, 538, 539, 539, 539, 539, - 539, 540, 540, 405, 402, 540, 399, 398, 397, 396, - 385, 540, 541, 541, 384, 382, 541, 541, 542, 542, - 542, 542, 542, 380, 379, 378, 377, 376, 375, 374, - - 373, 372, 370, 369, 367, 365, 364, 363, 362, 361, - 360, 359, 358, 356, 355, 354, 353, 352, 351, 350, - 349, 348, 347, 343, 339, 338, 335, 324, 320, 319, - 318, 317, 314, 309, 306, 305, 304, 303, 302, 301, - 296, 295, 294, 293, 292, 291, 288, 287, 286, 285, - 284, 283, 282, 281, 280, 279, 278, 277, 276, 275, - 274, 273, 272, 271, 270, 269, 266, 264, 263, 262, - 261, 260, 258, 254, 252, 251, 250, 246, 245, 244, - 243, 242, 241, 240, 237, 235, 226, 225, 224, 223, - 222, 221, 220, 218, 217, 216, 214, 213, 212, 211, - - 210, 209, 208, 207, 206, 205, 204, 203, 202, 201, - 200, 199, 198, 197, 196, 195, 193, 192, 191, 190, - 189, 188, 187, 186, 185, 184, 183, 182, 181, 180, - 178, 177, 176, 175, 174, 173, 172, 171, 170, 169, - 168, 166, 165, 164, 163, 162, 161, 160, 144, 143, - 142, 141, 134, 132, 131, 130, 128, 127, 126, 125, - 124, 122, 121, 120, 119, 118, 117, 116, 115, 114, - 112, 111, 110, 108, 107, 104, 103, 102, 101, 100, - 99, 97, 96, 95, 94, 93, 92, 91, 90, 89, - 88, 87, 86, 85, 84, 83, 82, 81, 80, 77, - - 73, 51, 47, 43, 38, 36, 30, 23, 20, 16, - 12, 10, 9, 5, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, - 523, 523, 523, 523 + 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 } ; /* The intent behind this definition is that it'll catch @@ -1163,13 +1163,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 >= 524 ) + if ( yy_current_state >= 525 ) 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 != 523 ); + while ( yy_current_state != 524 ); yy_cp = yyg->yy_last_accepting_cpos; yy_current_state = yyg->yy_last_accepting_state; @@ -1735,260 +1735,268 @@ YY_RULE_SETUP YY_BREAK case 95: YY_RULE_SETUP -#line 240 "glsl_lexer.lpp" +#line 239 "glsl_lexer.lpp" { - yylval->n = 1; - return BOOLCONSTANT; + yylval->real = strtod(yytext, NULL); + return FLOATCONSTANT; } YY_BREAK case 96: YY_RULE_SETUP #line 244 "glsl_lexer.lpp" { + yylval->n = 1; + return BOOLCONSTANT; + } + YY_BREAK +case 97: +YY_RULE_SETUP +#line 248 "glsl_lexer.lpp" +{ yylval->n = 0; return BOOLCONSTANT; } YY_BREAK /* Reserved words in GLSL 1.10. */ -case 97: +case 98: YY_RULE_SETUP -#line 251 "glsl_lexer.lpp" +#line 255 "glsl_lexer.lpp" return ASM; YY_BREAK -case 98: +case 99: YY_RULE_SETUP -#line 252 "glsl_lexer.lpp" +#line 256 "glsl_lexer.lpp" return CLASS; YY_BREAK -case 99: +case 100: YY_RULE_SETUP -#line 253 "glsl_lexer.lpp" +#line 257 "glsl_lexer.lpp" return UNION; YY_BREAK -case 100: +case 101: YY_RULE_SETUP -#line 254 "glsl_lexer.lpp" +#line 258 "glsl_lexer.lpp" return ENUM; YY_BREAK -case 101: +case 102: YY_RULE_SETUP -#line 255 "glsl_lexer.lpp" +#line 259 "glsl_lexer.lpp" return TYPEDEF; YY_BREAK -case 102: +case 103: YY_RULE_SETUP -#line 256 "glsl_lexer.lpp" +#line 260 "glsl_lexer.lpp" return TEMPLATE; YY_BREAK -case 103: +case 104: YY_RULE_SETUP -#line 257 "glsl_lexer.lpp" +#line 261 "glsl_lexer.lpp" return THIS; YY_BREAK -case 104: +case 105: YY_RULE_SETUP -#line 258 "glsl_lexer.lpp" +#line 262 "glsl_lexer.lpp" return PACKED; YY_BREAK -case 105: +case 106: YY_RULE_SETUP -#line 259 "glsl_lexer.lpp" +#line 263 "glsl_lexer.lpp" return GOTO; YY_BREAK -case 106: +case 107: YY_RULE_SETUP -#line 260 "glsl_lexer.lpp" +#line 264 "glsl_lexer.lpp" return SWITCH; YY_BREAK -case 107: +case 108: YY_RULE_SETUP -#line 261 "glsl_lexer.lpp" +#line 265 "glsl_lexer.lpp" return DEFAULT; YY_BREAK -case 108: +case 109: YY_RULE_SETUP -#line 262 "glsl_lexer.lpp" +#line 266 "glsl_lexer.lpp" return INLINE_TOK; YY_BREAK -case 109: +case 110: YY_RULE_SETUP -#line 263 "glsl_lexer.lpp" +#line 267 "glsl_lexer.lpp" return NOINLINE; YY_BREAK -case 110: +case 111: YY_RULE_SETUP -#line 264 "glsl_lexer.lpp" +#line 268 "glsl_lexer.lpp" return VOLATILE; YY_BREAK -case 111: +case 112: YY_RULE_SETUP -#line 265 "glsl_lexer.lpp" +#line 269 "glsl_lexer.lpp" return PUBLIC_TOK; YY_BREAK -case 112: +case 113: YY_RULE_SETUP -#line 266 "glsl_lexer.lpp" +#line 270 "glsl_lexer.lpp" return STATIC; YY_BREAK -case 113: +case 114: YY_RULE_SETUP -#line 267 "glsl_lexer.lpp" +#line 271 "glsl_lexer.lpp" return EXTERN; YY_BREAK -case 114: +case 115: YY_RULE_SETUP -#line 268 "glsl_lexer.lpp" +#line 272 "glsl_lexer.lpp" return EXTERNAL; YY_BREAK -case 115: +case 116: YY_RULE_SETUP -#line 269 "glsl_lexer.lpp" +#line 273 "glsl_lexer.lpp" return INTERFACE; YY_BREAK -case 116: +case 117: YY_RULE_SETUP -#line 270 "glsl_lexer.lpp" +#line 274 "glsl_lexer.lpp" return LONG; YY_BREAK -case 117: +case 118: YY_RULE_SETUP -#line 271 "glsl_lexer.lpp" +#line 275 "glsl_lexer.lpp" return SHORT; YY_BREAK -case 118: +case 119: YY_RULE_SETUP -#line 272 "glsl_lexer.lpp" +#line 276 "glsl_lexer.lpp" return DOUBLE; YY_BREAK -case 119: +case 120: YY_RULE_SETUP -#line 273 "glsl_lexer.lpp" +#line 277 "glsl_lexer.lpp" return HALF; YY_BREAK -case 120: +case 121: YY_RULE_SETUP -#line 274 "glsl_lexer.lpp" +#line 278 "glsl_lexer.lpp" return FIXED; YY_BREAK -case 121: +case 122: YY_RULE_SETUP -#line 275 "glsl_lexer.lpp" +#line 279 "glsl_lexer.lpp" return UNSIGNED; YY_BREAK -case 122: +case 123: YY_RULE_SETUP -#line 276 "glsl_lexer.lpp" +#line 280 "glsl_lexer.lpp" return INPUT; YY_BREAK -case 123: +case 124: YY_RULE_SETUP -#line 277 "glsl_lexer.lpp" +#line 281 "glsl_lexer.lpp" return OUTPUT; YY_BREAK -case 124: +case 125: YY_RULE_SETUP -#line 278 "glsl_lexer.lpp" +#line 282 "glsl_lexer.lpp" return HVEC2; YY_BREAK -case 125: +case 126: YY_RULE_SETUP -#line 279 "glsl_lexer.lpp" +#line 283 "glsl_lexer.lpp" return HVEC3; YY_BREAK -case 126: +case 127: YY_RULE_SETUP -#line 280 "glsl_lexer.lpp" +#line 284 "glsl_lexer.lpp" return HVEC4; YY_BREAK -case 127: +case 128: YY_RULE_SETUP -#line 281 "glsl_lexer.lpp" +#line 285 "glsl_lexer.lpp" return DVEC2; YY_BREAK -case 128: +case 129: YY_RULE_SETUP -#line 282 "glsl_lexer.lpp" +#line 286 "glsl_lexer.lpp" return DVEC3; YY_BREAK -case 129: +case 130: YY_RULE_SETUP -#line 283 "glsl_lexer.lpp" +#line 287 "glsl_lexer.lpp" return DVEC4; YY_BREAK -case 130: +case 131: YY_RULE_SETUP -#line 284 "glsl_lexer.lpp" +#line 288 "glsl_lexer.lpp" return FVEC2; YY_BREAK -case 131: +case 132: YY_RULE_SETUP -#line 285 "glsl_lexer.lpp" +#line 289 "glsl_lexer.lpp" return FVEC3; YY_BREAK -case 132: +case 133: YY_RULE_SETUP -#line 286 "glsl_lexer.lpp" +#line 290 "glsl_lexer.lpp" return FVEC4; YY_BREAK -case 133: +case 134: YY_RULE_SETUP -#line 287 "glsl_lexer.lpp" +#line 291 "glsl_lexer.lpp" return SAMPLER2DRECT; YY_BREAK -case 134: +case 135: YY_RULE_SETUP -#line 288 "glsl_lexer.lpp" +#line 292 "glsl_lexer.lpp" return SAMPLER3DRECT; YY_BREAK -case 135: +case 136: YY_RULE_SETUP -#line 289 "glsl_lexer.lpp" +#line 293 "glsl_lexer.lpp" return SAMPLER2DRECTSHADOW; YY_BREAK -case 136: +case 137: YY_RULE_SETUP -#line 290 "glsl_lexer.lpp" +#line 294 "glsl_lexer.lpp" return SIZEOF; YY_BREAK -case 137: +case 138: YY_RULE_SETUP -#line 291 "glsl_lexer.lpp" +#line 295 "glsl_lexer.lpp" return CAST; YY_BREAK -case 138: +case 139: YY_RULE_SETUP -#line 292 "glsl_lexer.lpp" +#line 296 "glsl_lexer.lpp" return NAMESPACE; YY_BREAK -case 139: +case 140: YY_RULE_SETUP -#line 293 "glsl_lexer.lpp" +#line 297 "glsl_lexer.lpp" return USING; YY_BREAK /* Additional reserved words in GLSL 1.20. */ -case 140: +case 141: YY_RULE_SETUP -#line 296 "glsl_lexer.lpp" +#line 300 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, LOWP); YY_BREAK -case 141: +case 142: YY_RULE_SETUP -#line 297 "glsl_lexer.lpp" +#line 301 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, MEDIUMP); YY_BREAK -case 142: +case 143: YY_RULE_SETUP -#line 298 "glsl_lexer.lpp" +#line 302 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, HIGHP); YY_BREAK -case 143: +case 144: YY_RULE_SETUP -#line 299 "glsl_lexer.lpp" +#line 303 "glsl_lexer.lpp" TOKEN_OR_IDENTIFIER(120, PRECISION); YY_BREAK -case 144: +case 145: YY_RULE_SETUP -#line 301 "glsl_lexer.lpp" +#line 305 "glsl_lexer.lpp" { struct _mesa_glsl_parse_state *state = yyextra; void *ctx = state; @@ -1996,17 +2004,17 @@ YY_RULE_SETUP return IDENTIFIER; } YY_BREAK -case 145: +case 146: YY_RULE_SETUP -#line 308 "glsl_lexer.lpp" +#line 312 "glsl_lexer.lpp" { return yytext[0]; } YY_BREAK -case 146: +case 147: YY_RULE_SETUP -#line 310 "glsl_lexer.lpp" +#line 314 "glsl_lexer.lpp" ECHO; YY_BREAK -#line 2010 "glsl_lexer.cpp" +#line 2018 "glsl_lexer.cpp" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(PP): yyterminate(); @@ -2303,7 +2311,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 >= 524 ) + if ( yy_current_state >= 525 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2332,11 +2340,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 >= 524 ) + if ( yy_current_state >= 525 ) 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 == 523); + yy_is_jam = (yy_current_state == 524); return yy_is_jam ? 0 : yy_current_state; } @@ -3148,7 +3156,7 @@ void _mesa_glsl_free (void * ptr , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#line 310 "glsl_lexer.lpp" +#line 314 "glsl_lexer.lpp" diff --git a/src/glsl/glsl_lexer.lpp b/src/glsl/glsl_lexer.lpp index 21c81a26635..9fd9b53c5c6 100644 --- a/src/glsl/glsl_lexer.lpp +++ b/src/glsl/glsl_lexer.lpp @@ -236,6 +236,10 @@ layout { yylval->real = strtod(yytext, NULL); return FLOATCONSTANT; } +[0-9]+[fF] { + yylval->real = strtod(yytext, NULL); + return FLOATCONSTANT; + } true { yylval->n = 1; |