From 754d04a1f2cc8da720abce7b6098007d5a305dea Mon Sep 17 00:00:00 2001 From: Przemyslaw Czerpak Date: Sun, 21 Mar 2010 19:01:46 +0000 Subject: [PATCH] 2010-03-21 20:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/macro/macro.y + added support for -> &( ) in macrocompiler * harbour/src/macro/macro.yyc * regenerated for new grammar rules --- harbour/ChangeLog | 9 + harbour/src/macro/macro.y | 1 + harbour/src/macro/macro.yyc | 1104 ++++++++++++++++++----------------- 3 files changed, 565 insertions(+), 549 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 2af504d00f..6550d39a2b 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,15 @@ past entries belonging to author(s): Viktor Szakats. */ +2010-03-21 20:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/src/macro/macro.y + + added support for + -> &( ) + in macrocompiler + + * harbour/src/macro/macro.yyc + * regenerated for new grammar rules + 2010-03-21 12:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * bin/hb-mkimp.prg + Finished, tested. This version also adds pocc64 support. diff --git a/harbour/src/macro/macro.y b/harbour/src/macro/macro.y index 16cf7b067f..a1012221f8 100644 --- a/harbour/src/macro/macro.y +++ b/harbour/src/macro/macro.y @@ -393,6 +393,7 @@ FieldVarAlias : FieldAlias VarAlias { $$ = $2; } AliasId : IDENTIFIER { $$ = hb_compExprNewVar( $1, HB_COMP_PARAM ); } | MacroVar + | MacroExpr ; AliasVar : NumAlias AliasId { $$ = hb_compExprNewAliasVar( $1, $2, HB_COMP_PARAM ); } diff --git a/harbour/src/macro/macro.yyc b/harbour/src/macro/macro.yyc index 5e1d18cb59..22dc7d83b7 100644 --- a/harbour/src/macro/macro.yyc +++ b/harbour/src/macro/macro.yyc @@ -578,16 +578,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 102 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1244 +#define YYLAST 1272 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 61 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 70 /* YYNRULES -- Number of rules. */ -#define YYNRULES 207 +#define YYNRULES 208 /* YYNRULES -- Number of states. */ -#define YYNSTATES 297 +#define YYNSTATES 298 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -639,24 +639,24 @@ static const yytype_uint16 yyprhs[] = 0, 0, 3, 5, 7, 9, 11, 13, 15, 17, 20, 22, 24, 26, 28, 30, 34, 37, 41, 45, 49, 55, 57, 60, 62, 64, 67, 70, 73, 76, - 80, 83, 86, 89, 92, 95, 97, 99, 102, 105, - 108, 111, 114, 117, 120, 123, 126, 129, 132, 135, - 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, - 168, 171, 174, 177, 180, 183, 186, 189, 192, 197, - 202, 208, 210, 214, 216, 218, 221, 224, 227, 230, - 233, 235, 237, 241, 243, 245, 247, 252, 254, 256, + 80, 83, 86, 89, 92, 95, 97, 99, 101, 104, + 107, 110, 113, 116, 119, 122, 125, 128, 131, 134, + 137, 140, 143, 146, 149, 152, 155, 158, 161, 164, + 167, 170, 173, 176, 179, 182, 185, 188, 191, 194, + 199, 204, 210, 212, 216, 218, 220, 223, 226, 229, + 232, 235, 237, 239, 243, 245, 247, 249, 254, 256, 258, 260, 262, 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 284, 286, 288, 290, 292, 294, 296, 298, 300, 302, 304, 306, 308, 310, 312, 314, 316, - 318, 320, 321, 326, 328, 332, 333, 335, 337, 339, + 318, 320, 322, 323, 328, 330, 334, 335, 337, 339, 341, 343, 345, 347, 349, 351, 353, 355, 357, 359, 361, 363, 365, 367, 369, 371, 373, 375, 377, 379, - 381, 383, 386, 389, 392, 395, 398, 401, 405, 409, - 413, 417, 421, 425, 429, 431, 433, 435, 437, 439, - 441, 445, 449, 453, 457, 461, 465, 469, 473, 477, - 481, 485, 489, 493, 497, 501, 505, 509, 512, 515, - 519, 524, 526, 530, 531, 539, 541, 545, 546, 548, - 550, 554, 556, 560, 563, 567, 570, 573 + 381, 383, 385, 388, 391, 394, 397, 400, 403, 407, + 411, 415, 419, 423, 427, 431, 433, 435, 437, 439, + 441, 443, 447, 451, 455, 459, 463, 467, 471, 475, + 479, 483, 487, 491, 495, 499, 503, 507, 511, 514, + 517, 521, 526, 528, 532, 533, 541, 543, 547, 548, + 550, 552, 556, 558, 562, 565, 569, 572, 575 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -671,56 +671,56 @@ static const yytype_int16 yyrhs[] = 28, -1, 29, -1, 77, 22, -1, 50, 128, -1, 79, 22, -1, 27, 22, -1, 27, 22, 81, -1, 81, 76, -1, 81, 66, -1, 81, 129, -1, 81, - 78, -1, 81, 80, -1, 3, -1, 77, -1, 66, - 83, -1, 78, 83, -1, 80, 83, -1, 129, 83, - -1, 76, 83, -1, 81, 83, -1, 82, 83, -1, - 66, 128, -1, 76, 128, -1, 78, 128, -1, 80, - 128, -1, 129, 128, -1, 63, 119, -1, 67, 119, - -1, 64, 119, -1, 65, 119, -1, 68, 119, -1, - 122, 119, -1, 69, 119, -1, 73, 119, -1, 70, - 119, -1, 75, 119, -1, 84, 119, -1, 85, 119, - -1, 77, 119, -1, 79, 119, -1, 93, 119, -1, - 95, 119, -1, 87, 119, -1, 130, 119, -1, 128, - 119, -1, 3, 55, 89, 56, -1, 77, 55, 89, - 56, -1, 51, 3, 55, 89, 56, -1, 92, -1, - 89, 52, 92, -1, 102, -1, 91, -1, 51, 3, - -1, 51, 77, -1, 51, 84, -1, 51, 93, -1, - 51, 86, -1, 37, -1, 90, -1, 103, 57, 94, - -1, 3, -1, 77, -1, 79, -1, 93, 55, 89, - 56, -1, 63, -1, 67, -1, 64, -1, 65, -1, - 68, -1, 122, -1, 69, -1, 70, -1, 71, -1, - 72, -1, 73, -1, 84, -1, 85, -1, 77, -1, - 79, -1, 75, -1, 86, -1, 87, -1, 130, -1, - 93, -1, 95, -1, 108, -1, 115, -1, 105, -1, - 106, -1, 107, -1, 116, -1, 117, -1, 118, -1, - 88, -1, 96, -1, 128, -1, 37, -1, 97, -1, - -1, 102, 52, 100, 102, -1, 99, -1, 101, 52, - 102, -1, -1, 97, -1, 63, -1, 67, -1, 64, - -1, 65, -1, 68, -1, 122, -1, 69, -1, 70, - -1, 71, -1, 72, -1, 73, -1, 84, -1, 85, - -1, 77, -1, 79, -1, 75, -1, 86, -1, 128, - -1, 87, -1, 130, -1, 93, -1, 95, -1, 20, - -1, 21, -1, 103, 104, -1, 20, 97, -1, 21, - 97, -1, 16, 97, -1, 44, 97, -1, 43, 97, - -1, 103, 6, 97, -1, 103, 30, 97, -1, 103, - 31, 97, -1, 103, 32, 97, -1, 103, 33, 97, - -1, 103, 36, 97, -1, 103, 35, 97, -1, 109, - -1, 110, -1, 111, -1, 112, -1, 113, -1, 114, - -1, 97, 43, 97, -1, 97, 44, 97, -1, 97, - 45, 97, -1, 97, 46, 97, -1, 97, 47, 97, - -1, 97, 34, 97, -1, 97, 14, 97, -1, 97, - 15, 97, -1, 97, 17, 97, -1, 97, 40, 97, - -1, 97, 41, 97, -1, 97, 25, 97, -1, 97, - 26, 97, -1, 97, 18, 97, -1, 97, 19, 97, - -1, 97, 42, 97, -1, 97, 39, 97, -1, 120, - 58, -1, 59, 98, -1, 120, 52, 98, -1, 120, - 58, 59, 98, -1, 92, -1, 121, 52, 92, -1, - -1, 53, 60, 123, 125, 60, 124, 54, -1, 97, - -1, 124, 52, 97, -1, -1, 37, -1, 126, -1, - 126, 52, 37, -1, 3, -1, 126, 52, 3, -1, - 55, 102, -1, 127, 52, 102, -1, 127, 56, -1, - 128, 22, -1, 10, 55, 97, 52, 90, 52, 90, - 56, -1 + 78, -1, 81, 80, -1, 3, -1, 77, -1, 79, + -1, 66, 83, -1, 78, 83, -1, 80, 83, -1, + 129, 83, -1, 76, 83, -1, 81, 83, -1, 82, + 83, -1, 66, 128, -1, 76, 128, -1, 78, 128, + -1, 80, 128, -1, 129, 128, -1, 63, 119, -1, + 67, 119, -1, 64, 119, -1, 65, 119, -1, 68, + 119, -1, 122, 119, -1, 69, 119, -1, 73, 119, + -1, 70, 119, -1, 75, 119, -1, 84, 119, -1, + 85, 119, -1, 77, 119, -1, 79, 119, -1, 93, + 119, -1, 95, 119, -1, 87, 119, -1, 130, 119, + -1, 128, 119, -1, 3, 55, 89, 56, -1, 77, + 55, 89, 56, -1, 51, 3, 55, 89, 56, -1, + 92, -1, 89, 52, 92, -1, 102, -1, 91, -1, + 51, 3, -1, 51, 77, -1, 51, 84, -1, 51, + 93, -1, 51, 86, -1, 37, -1, 90, -1, 103, + 57, 94, -1, 3, -1, 77, -1, 79, -1, 93, + 55, 89, 56, -1, 63, -1, 67, -1, 64, -1, + 65, -1, 68, -1, 122, -1, 69, -1, 70, -1, + 71, -1, 72, -1, 73, -1, 84, -1, 85, -1, + 77, -1, 79, -1, 75, -1, 86, -1, 87, -1, + 130, -1, 93, -1, 95, -1, 108, -1, 115, -1, + 105, -1, 106, -1, 107, -1, 116, -1, 117, -1, + 118, -1, 88, -1, 96, -1, 128, -1, 37, -1, + 97, -1, -1, 102, 52, 100, 102, -1, 99, -1, + 101, 52, 102, -1, -1, 97, -1, 63, -1, 67, + -1, 64, -1, 65, -1, 68, -1, 122, -1, 69, + -1, 70, -1, 71, -1, 72, -1, 73, -1, 84, + -1, 85, -1, 77, -1, 79, -1, 75, -1, 86, + -1, 128, -1, 87, -1, 130, -1, 93, -1, 95, + -1, 20, -1, 21, -1, 103, 104, -1, 20, 97, + -1, 21, 97, -1, 16, 97, -1, 44, 97, -1, + 43, 97, -1, 103, 6, 97, -1, 103, 30, 97, + -1, 103, 31, 97, -1, 103, 32, 97, -1, 103, + 33, 97, -1, 103, 36, 97, -1, 103, 35, 97, + -1, 109, -1, 110, -1, 111, -1, 112, -1, 113, + -1, 114, -1, 97, 43, 97, -1, 97, 44, 97, + -1, 97, 45, 97, -1, 97, 46, 97, -1, 97, + 47, 97, -1, 97, 34, 97, -1, 97, 14, 97, + -1, 97, 15, 97, -1, 97, 17, 97, -1, 97, + 40, 97, -1, 97, 41, 97, -1, 97, 25, 97, + -1, 97, 26, 97, -1, 97, 18, 97, -1, 97, + 19, 97, -1, 97, 42, 97, -1, 97, 39, 97, + -1, 120, 58, -1, 59, 98, -1, 120, 52, 98, + -1, 120, 58, 59, 98, -1, 92, -1, 121, 52, + 92, -1, -1, 53, 60, 123, 125, 60, 124, 54, + -1, 97, -1, 124, 52, 97, -1, -1, 37, -1, + 126, -1, 126, 52, 37, -1, 3, -1, 126, 52, + 3, -1, 55, 102, -1, 127, 52, 102, -1, 127, + 56, -1, 128, 22, -1, 10, 55, 97, 52, 90, + 52, 90, 56, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -729,24 +729,24 @@ static const yytype_uint16 yyrline[] = 0, 252, 252, 262, 270, 279, 280, 283, 286, 289, 294, 299, 304, 305, 310, 315, 320, 325, 326, 329, 330, 336, 339, 344, 347, 366, 371, 374, 381, 382, - 387, 388, 389, 390, 391, 394, 395, 398, 399, 400, - 401, 402, 403, 404, 413, 414, 415, 416, 417, 422, + 387, 388, 389, 390, 391, 394, 395, 396, 399, 400, + 401, 402, 403, 404, 405, 414, 415, 416, 417, 418, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 438, 439, 440, 445, 448, - 453, 463, 464, 467, 468, 471, 472, 473, 474, 475, - 478, 479, 484, 487, 488, 489, 494, 498, 499, 500, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 446, + 449, 454, 464, 465, 468, 469, 472, 473, 474, 475, + 476, 479, 480, 485, 488, 489, 490, 495, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 524, 525, 526, 527, 530, 531, 534, - 535, 538, 538, 552, 553, 557, 558, 561, 562, 563, + 521, 522, 523, 524, 525, 526, 527, 528, 531, 532, + 535, 536, 539, 539, 553, 554, 558, 559, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, - 574, 575, 576, 577, 578, 579, 580, 581, 582, 588, - 589, 595, 598, 599, 602, 603, 604, 607, 610, 613, - 616, 619, 622, 625, 628, 629, 630, 631, 632, 633, - 636, 637, 638, 639, 640, 641, 644, 645, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 659, 665, 666, - 667, 670, 671, 675, 674, 682, 683, 688, 689, 690, - 691, 694, 695, 698, 699, 702, 705, 709 + 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, + 589, 590, 596, 599, 600, 603, 604, 605, 608, 611, + 614, 617, 620, 623, 626, 629, 630, 631, 632, 633, + 634, 637, 638, 639, 640, 641, 642, 645, 646, 649, + 650, 651, 652, 653, 654, 655, 656, 657, 660, 666, + 667, 668, 671, 672, 676, 675, 683, 684, 689, 690, + 691, 692, 695, 696, 699, 700, 703, 706, 710 }; #endif @@ -800,24 +800,24 @@ static const yytype_uint8 yyr1[] = 0, 61, 62, 62, 62, 63, 63, 64, 65, 66, 67, 68, 69, 69, 70, 71, 72, 73, 73, 74, 74, 75, 76, 77, 77, 78, 79, 80, 81, 81, - 82, 82, 82, 82, 82, 83, 83, 84, 84, 84, - 84, 84, 84, 84, 85, 85, 85, 85, 85, 86, + 82, 82, 82, 82, 82, 83, 83, 83, 84, 84, + 84, 84, 84, 84, 84, 85, 85, 85, 85, 85, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, - 86, 86, 86, 86, 86, 86, 86, 86, 87, 87, - 88, 89, 89, 90, 90, 91, 91, 91, 91, 91, - 92, 92, 93, 94, 94, 94, 95, 96, 96, 96, + 86, 86, 86, 86, 86, 86, 86, 86, 86, 87, + 87, 88, 89, 89, 90, 90, 91, 91, 91, 91, + 91, 92, 92, 93, 94, 94, 94, 95, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, - 96, 96, 96, 96, 96, 96, 96, 97, 97, 98, - 98, 100, 99, 101, 101, 102, 102, 103, 103, 103, + 96, 96, 96, 96, 96, 96, 96, 96, 97, 97, + 98, 98, 100, 99, 101, 101, 102, 102, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, - 103, 103, 103, 103, 103, 103, 103, 103, 103, 104, - 104, 105, 106, 106, 107, 107, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 115, 115, 115, 115, 115, - 116, 116, 116, 116, 116, 116, 117, 117, 118, 118, - 118, 118, 118, 118, 118, 118, 118, 119, 120, 120, - 120, 121, 121, 123, 122, 124, 124, 125, 125, 125, - 125, 126, 126, 127, 127, 128, 129, 130 + 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, + 104, 104, 105, 106, 106, 107, 107, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 115, 115, 115, 115, + 115, 116, 116, 116, 116, 116, 116, 117, 117, 118, + 118, 118, 118, 118, 118, 118, 118, 118, 119, 120, + 120, 120, 121, 121, 123, 122, 124, 124, 125, 125, + 125, 125, 126, 126, 127, 127, 128, 129, 130 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -826,24 +826,24 @@ static const yytype_uint8 yyr2[] = 0, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 3, 2, 3, 3, 3, 5, 1, 2, 1, 1, 2, 2, 2, 2, 3, - 2, 2, 2, 2, 2, 1, 1, 2, 2, 2, + 2, 2, 2, 2, 2, 1, 1, 1, 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, 4, 4, - 5, 1, 3, 1, 1, 2, 2, 2, 2, 2, - 1, 1, 3, 1, 1, 1, 4, 1, 1, 1, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 4, + 4, 5, 1, 3, 1, 1, 2, 2, 2, 2, + 2, 1, 1, 3, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 0, 4, 1, 3, 0, 1, 1, 1, 1, + 1, 1, 0, 4, 1, 3, 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, 2, 2, 2, 2, 2, 2, 3, 3, 3, - 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 2, 2, 3, - 4, 1, 3, 0, 7, 1, 3, 0, 1, 1, - 3, 1, 3, 2, 3, 2, 2, 8 + 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, + 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, + 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, + 3, 4, 1, 3, 0, 7, 1, 3, 0, 1, + 1, 3, 1, 3, 2, 3, 2, 2, 8 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -853,34 +853,34 @@ static const yytype_uint8 yydefact[] = { 0, 4, 21, 10, 5, 6, 7, 8, 0, 11, 12, 13, 0, 0, 0, 14, 0, 23, 24, 0, - 0, 0, 0, 125, 125, 0, 87, 89, 90, 0, - 88, 91, 93, 94, 95, 96, 97, 102, 0, 100, - 0, 101, 0, 0, 0, 98, 99, 103, 104, 116, - 106, 107, 117, 2, 123, 3, 0, 0, 110, 111, - 112, 108, 164, 165, 166, 167, 168, 169, 109, 113, - 114, 115, 92, 0, 118, 0, 105, 22, 125, 9, - 0, 154, 152, 153, 28, 156, 155, 26, 0, 0, - 80, 0, 193, 0, 81, 74, 191, 126, 73, 0, - 126, 203, 1, 0, 49, 0, 51, 52, 35, 36, - 37, 44, 50, 53, 55, 57, 16, 56, 58, 41, - 45, 25, 125, 61, 38, 46, 27, 62, 39, 47, - 35, 0, 31, 30, 36, 33, 0, 34, 42, 0, - 32, 43, 59, 60, 65, 125, 63, 64, 0, 0, + 0, 0, 0, 126, 126, 0, 88, 90, 91, 0, + 89, 92, 94, 95, 96, 97, 98, 103, 0, 101, + 0, 102, 0, 0, 0, 99, 100, 104, 105, 117, + 107, 108, 118, 2, 124, 3, 0, 0, 111, 112, + 113, 109, 165, 166, 167, 168, 169, 170, 110, 114, + 115, 116, 93, 0, 119, 0, 106, 22, 126, 9, + 0, 155, 153, 154, 28, 157, 156, 26, 0, 0, + 81, 0, 194, 0, 82, 75, 192, 127, 74, 0, + 127, 204, 1, 0, 50, 0, 52, 53, 35, 36, + 37, 38, 45, 51, 54, 56, 58, 16, 57, 59, + 42, 46, 25, 126, 62, 39, 47, 27, 63, 40, + 48, 35, 0, 31, 30, 36, 33, 37, 34, 43, + 0, 32, 44, 60, 61, 66, 126, 64, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 125, 121, 0, 149, 150, - 0, 0, 0, 0, 0, 0, 0, 151, 54, 125, - 205, 206, 67, 40, 48, 66, 0, 71, 0, 29, - 125, 17, 75, 127, 129, 130, 128, 131, 133, 134, - 135, 136, 137, 142, 76, 141, 77, 139, 79, 145, - 78, 148, 0, 132, 144, 146, 197, 0, 18, 125, - 125, 15, 119, 120, 188, 0, 187, 0, 0, 176, - 177, 178, 183, 184, 181, 182, 175, 186, 179, 180, - 185, 170, 171, 172, 173, 174, 124, 125, 157, 158, - 159, 160, 161, 163, 162, 83, 84, 85, 82, 204, - 125, 68, 125, 0, 125, 201, 198, 0, 199, 0, - 19, 192, 189, 0, 69, 86, 122, 72, 0, 70, - 0, 0, 0, 125, 190, 125, 70, 195, 0, 202, - 200, 20, 0, 0, 194, 207, 196 + 0, 0, 0, 0, 0, 0, 126, 122, 0, 150, + 151, 0, 0, 0, 0, 0, 0, 0, 152, 55, + 126, 206, 207, 68, 41, 49, 67, 0, 72, 0, + 29, 126, 17, 76, 128, 130, 131, 129, 132, 134, + 135, 136, 137, 138, 143, 77, 142, 78, 140, 80, + 146, 79, 149, 0, 133, 145, 147, 198, 0, 18, + 126, 126, 15, 120, 121, 189, 0, 188, 0, 0, + 177, 178, 179, 184, 185, 182, 183, 176, 187, 180, + 181, 186, 171, 172, 173, 174, 175, 125, 126, 158, + 159, 160, 161, 162, 164, 163, 84, 85, 86, 83, + 205, 126, 69, 126, 0, 126, 202, 199, 0, 200, + 0, 19, 193, 190, 0, 70, 87, 123, 73, 0, + 71, 0, 0, 0, 126, 191, 126, 71, 196, 0, + 203, 201, 20, 0, 0, 195, 208, 197 }; /* YYDEFGOTO[NTERM-NUM]. */ @@ -888,244 +888,255 @@ static const yytype_int16 yydefgoto[] = { -1, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 93, 37, 38, 39, 40, 41, 42, - 43, 44, 110, 45, 46, 47, 48, 49, 186, 94, - 95, 187, 50, 258, 51, 52, 100, 224, 54, 247, - 55, 98, 57, 177, 58, 59, 60, 61, 62, 63, + 43, 44, 111, 45, 46, 47, 48, 49, 187, 94, + 95, 188, 50, 259, 51, 52, 100, 225, 54, 248, + 55, 98, 57, 178, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 104, 105, - 99, 72, 216, 288, 267, 268, 73, 74, 75, 76 + 99, 72, 217, 289, 268, 269, 73, 74, 75, 76 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -248 +#define YYPACT_NINF -260 static const yytype_int16 yypact[] = { - 287, -248, -16, -248, -248, -13, -248, -248, -45, -248, - -248, -248, 815, 815, 815, -248, 5, -248, -248, 815, - 815, -33, 31, 185, 815, 40, 409, 426, 443, 2, - 461, 478, 495, 513, 530, 931, 547, 565, 2, 313, - 2, 330, 2, 26, 82, 582, 599, 948, 617, -248, - 361, 634, -248, 992, -248, -4, 10, 966, -248, -248, - -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, - -248, -248, 651, -35, 378, 2, 669, -248, 709, -248, - 815, 1197, -248, -248, 33, -248, -248, -248, 12, 37, - -248, 921, -248, 124, -248, -248, -248, 1064, -248, 129, - 1132, -248, -248, 762, -248, -34, -248, -248, -248, -248, - -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, - -248, -248, 709, -248, -248, -248, -248, -248, -248, -248, - 76, -13, -248, -248, 86, -248, 87, -248, -248, 99, - -248, -248, -248, -248, -248, 709, -248, -248, 815, 815, - 815, 815, 815, 815, 815, 815, 815, 815, 815, 815, - 815, 815, 815, 815, 815, 815, -248, 815, -248, -248, - 815, 815, 815, 815, 815, 815, 8, -248, -248, 815, - -248, -248, -248, -248, -248, -248, 62, -248, 1028, -248, - 709, -248, -6, 72, 72, 72, 72, 72, 72, 72, - 72, -248, 72, 72, 60, -15, 125, 72, 42, 72, - 20, 72, 78, 72, 6, 72, 32, 815, -248, 815, - 709, -248, -248, 1132, -248, 762, 75, 64, 77, 1166, - 1132, 1197, 1197, 1197, 807, 807, 102, 1197, 807, 807, - 807, 79, 79, 93, 93, 93, -248, 815, 1132, 1132, - 1132, 1132, 1132, 1132, 1132, -248, -248, -248, -248, -248, - 709, -248, 868, 90, 709, -248, -248, 81, 92, 1098, - -248, -248, -248, 762, -248, -248, -248, -248, 113, -248, - 91, 815, 63, 815, -248, 868, 128, 1132, 148, -248, - -248, -248, 112, 815, -248, -248, 1132 + 346, -260, -15, -260, -260, -12, -260, -260, -38, -260, + -260, -260, 843, 843, 843, -260, -4, -260, -260, 843, + 843, -31, 32, 288, 843, 42, 437, 454, 471, 5, + 489, 506, 523, 541, 558, 959, 575, 593, 5, 172, + 5, 372, 5, 2, 8, 610, 627, 976, 645, -260, + 389, 662, -260, 1020, -260, 15, 30, 994, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, 679, 70, 406, 5, 697, -260, 737, -260, + 843, 1225, -260, -260, 58, -260, -260, -260, -7, 14, + -260, 949, -260, 46, -260, -260, -260, 1092, -260, 87, + 1160, -260, -260, 790, -260, -37, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, 737, -260, -260, -260, -260, -260, -260, + -260, 51, -12, -260, -260, 77, -260, 83, -260, -260, + 88, -260, -260, -260, -260, -260, 737, -260, -260, 843, + 843, 843, 843, 843, 843, 843, 843, 843, 843, 843, + 843, 843, 843, 843, 843, 843, 843, -260, 843, -260, + -260, 843, 843, 843, 843, 843, 843, 41, -260, -260, + 843, -260, -260, -260, -260, -260, -260, 73, -260, 1056, + -260, 737, -260, -6, 64, 64, 64, 64, 64, 64, + 64, 64, -260, 64, 64, 17, 7, 138, 64, 90, + 64, 22, 64, 91, 64, 16, 64, 19, 843, -260, + 843, 737, -260, -260, 1160, -260, 790, 68, 84, 127, + 1194, 1160, 1225, 1225, 1225, 835, 835, 100, 1225, 835, + 835, 835, 74, 74, 97, 97, 97, -260, 843, 1160, + 1160, 1160, 1160, 1160, 1160, 1160, -260, -260, -260, -260, + -260, 737, -260, 896, 132, 737, -260, -260, 106, 117, + 1126, -260, -260, -260, 790, -260, -260, -260, -260, 125, + -260, 133, 843, 25, 843, -260, 896, 142, 1160, 157, + -260, -260, -260, 126, 843, -260, -260, 1160 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -248, -248, 95, 100, 116, 126, 119, 120, 127, 130, - 132, 133, 135, -248, 136, 134, 3, 160, -39, 161, - 131, -248, 30, 139, 140, 141, 142, -248, -119, -247, - -248, -21, 143, -248, 146, -248, 0, -217, -248, -248, - -248, 1, 150, -248, -248, -248, -248, -248, -248, -248, - -248, -248, -248, -248, -248, -248, -248, -248, 56, -248, - -248, 151, -248, -248, -248, -248, -248, 21, 173, 152 + -260, -260, 96, 99, 105, 148, 115, 119, 121, 122, + 123, 124, 128, -260, 129, 173, 3, 174, 21, 179, + 139, -260, 71, 134, 137, 141, 143, -260, -120, -259, + -260, -21, 144, -260, 145, -260, 0, -220, -260, -260, + -260, 1, 146, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, 56, -260, + -260, 147, -260, -260, -260, -260, -260, 95, 181, 150 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -149 +#define YYTABLE_NINF -150 static const yytype_int16 yytable[] = { - 53, 56, 96, 227, 136, 108, 77, 126, 272, 79, - 80, 255, 81, 82, 83, 278, 77, 179, 225, 85, - 86, 180, 24, 97, 226, 101, 228, 84, 181, 130, - 17, 18, 109, 131, 88, 265, 17, 18, 292, 78, - 102, 109, 87, 109, 103, 109, 134, 109, 165, 264, - 111, -21, 205, -21, 17, 18, 284, 24, 21, 120, - 16, 125, 166, 129, 139, 103, 289, 190, 119, 266, - 124, 263, 128, 138, 141, 145, 21, -147, 109, 103, - 188, 24, 121, 106, 107, 108, 112, 113, 114, 115, - 116, 191, 117, 118, 204, 123, 184, 127, 77, -143, - 290, 142, 143, 223, 144, 183, 146, 147, 121, 126, - 17, 18, 214, 155, 260, 122, 260, -140, 261, 103, - 274, 181, 160, 161, 162, 163, 164, 155, 178, 260, - 182, 103, 185, 275, 273, 176, 155, 257, 162, 163, - 164, 281, 260, 260, 282, 280, 279, 286, 229, 230, + 53, 56, 96, 228, 279, 131, 273, 77, 108, 132, + 79, 108, 81, 82, 83, 226, 77, 80, 84, 85, + 86, 227, 266, 97, 24, 101, 229, 293, 290, 127, + 17, 18, 109, 17, 18, 88, 17, 18, 182, 122, + 78, 109, 102, 109, 256, 109, 135, 109, 191, 265, + 110, -21, 21, -21, 285, 21, 267, 24, 21, 110, + 24, 110, 291, 110, 137, 110, 103, 166, 192, 17, + 18, 264, 123, 77, -141, 103, 103, 146, 109, -148, + 189, 103, 167, 106, 107, 16, 113, 114, 115, 116, + 117, 21, 118, 119, 205, 124, 110, 128, 218, 122, + 219, 143, 144, 224, 145, 127, 147, 148, 156, 120, + 182, 125, 206, 129, 139, 142, 87, 161, 162, 163, + 164, 165, 180, 103, 112, 261, 181, 274, 179, 262, + 183, 156, 186, 121, 156, 126, 261, 130, 140, 221, + 275, 222, 163, 164, 165, 281, 184, -144, 177, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 285, 246, 248, 295, 132, - 249, 250, 251, 252, 253, 254, 217, 133, 218, 256, - 259, 220, -138, 221, 103, -68, 193, -68, 2, 3, - 4, 194, 5, 6, 7, 8, 9, 10, 11, 271, - 293, 12, 294, 135, 137, 13, 14, 195, 89, 15, - 196, 197, 16, 17, 18, 189, 140, 269, 198, 0, - 270, 199, 90, 200, 201, 223, 202, 203, 19, 20, - 206, 207, 208, 209, 210, 21, 91, 211, 23, 277, - 24, 212, 213, 215, 0, 92, 0, 0, 276, 0, - 106, 107, 112, 113, 114, 115, 116, 0, 117, 118, - 123, 127, 142, 143, 0, 144, 146, 147, 0, 178, - 182, 185, 0, 223, 0, 0, 0, 0, 0, 0, - 0, 287, 0, 0, 291, 0, 0, 0, 1, 0, - 2, 3, 4, 296, 5, 6, 7, 8, 9, 10, - 11, 0, 0, 12, 0, 0, 0, 13, 14, 0, - 0, 15, 0, 0, 16, 17, 18, 0, 0, -140, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 19, 20, 0, -140, -140, 121, -141, 21, 22, -125, - 23, 0, 24, -140, -140, -140, -140, 0, -140, -140, - -141, -141, 126, 0, 0, 0, 0, 0, 0, 0, - -141, -141, -141, -141, 0, -141, -141, -147, 122, 0, - -140, 0, 103, 0, 0, 0, 0, 0, 0, 0, - 0, -147, -147, 0, -144, 0, 0, -141, 0, 103, - 0, -147, -147, -147, -147, 0, -147, -147, -144, -144, - 181, 0, 0, 0, 0, 0, 0, 0, -144, -144, - -144, -144, 0, -144, -144, -127, 145, 0, -147, 0, - 103, 0, 0, 0, 0, 0, 0, 0, 0, -127, - -127, 0, -129, 0, 0, -144, 0, 103, 0, -127, - -127, -127, -127, 0, -127, -127, -129, -129, 0, -130, - 0, 0, 0, 0, 0, 0, -129, -129, -129, -129, - 0, -129, -129, -130, -130, 0, -127, -128, 103, 0, - 0, 0, 0, -130, -130, -130, -130, 0, -130, -130, - 0, -128, -128, -129, -131, 103, 0, 0, 0, 0, - 0, -128, -128, -128, -128, 0, -128, -128, -131, -131, - -130, -133, 103, 0, 0, 0, 0, 0, -131, -131, - -131, -131, 0, -131, -131, -133, -133, 0, -128, -134, - 103, 0, 0, 0, 0, -133, -133, -133, -133, 0, - -133, -133, 0, -134, -134, -131, -135, 103, 0, 0, - 0, 0, 0, -134, -134, -134, -134, 0, -134, -134, - -135, -135, -133, -137, 103, 0, 0, 0, 0, 0, - -135, -135, -135, -135, 0, -135, -135, -137, -137, 0, - -134, -142, 103, 0, 0, 0, 0, -137, -137, -137, - -137, 0, -137, -137, 0, -142, -142, -135, -138, 103, - 0, 0, 0, 0, 0, -142, -142, -142, -142, 0, - -142, -142, -138, -138, -137, -139, 103, 0, 0, 0, - 0, 0, -138, -138, -138, -138, 0, -138, -138, -139, - -139, 0, -142, -145, 103, 0, 0, 0, 0, -139, - -139, -139, -139, 0, -139, -139, 0, -145, -145, -138, - -148, 103, 0, 0, 0, 0, 0, -145, -145, -145, - -145, 0, -145, -145, -148, -148, -139, -132, 103, 0, - 0, 0, 0, 0, -148, -148, -148, -148, 0, -148, - -148, -132, -132, 0, -145, -146, 103, 0, 0, 0, - 0, -132, -132, -132, -132, 0, -132, -132, 0, -146, - -146, -148, 0, 103, 0, 0, 0, 0, 0, -146, - -146, -146, -146, 0, -146, -146, 0, 0, -132, 0, - 103, 0, 2, 3, 4, 0, 5, 6, 7, 8, - 9, 10, 11, 0, 0, 12, -146, 0, 103, 13, - 14, 0, 0, 15, 0, 0, 16, 17, 18, 0, - 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, - 0, 0, 19, 20, 0, 0, 0, 0, 0, 21, - 91, 0, 23, 0, 24, 2, 3, 4, 0, 5, - 6, 7, 8, 9, 10, 11, 0, 0, 12, 0, - 0, 0, 13, 14, 0, 0, 15, 0, 0, 16, - 17, 18, 0, 0, 0, 0, 0, 0, 0, 222, - 0, 0, 0, 0, 0, 19, 20, 0, 0, 0, - 0, 0, 21, 22, 0, 23, 0, 24, 2, 3, - 4, 0, 5, 6, 7, 8, 9, 10, 11, 0, - 0, 12, 153, 154, 0, 13, 14, 0, 0, 15, - 0, 155, 16, 17, 18, 0, 0, 157, 158, 159, - 160, 161, 162, 163, 164, 0, 0, 0, 19, 20, - 0, 0, 0, 0, 0, 21, 22, 0, 23, 0, - 24, 2, 3, 4, 0, 5, 6, 7, 8, 9, + 241, 242, 243, 244, 245, 246, 282, 247, 249, 283, + 185, 250, 251, 252, 253, 254, 255, 286, -141, 261, + 257, 260, 296, 276, 261, 261, 215, 194, 280, 287, + 195, 133, -141, -141, 122, -139, 196, 103, 258, -69, + 272, -69, -141, -141, -141, -141, 197, -141, -141, 294, + 198, 295, 199, 200, 201, 202, 134, 136, 270, 203, + 204, 271, 138, 190, 141, 207, 224, 123, 208, -141, + 0, 103, 209, 0, 210, 211, 212, 213, 214, 0, + 278, 216, 0, 0, 0, 0, 0, 0, 0, 277, + 0, 106, 107, 113, 114, 115, 116, 117, 0, 118, + 119, 124, 128, 143, 144, 0, 145, 147, 148, 0, + 179, 183, 186, 0, 224, 0, 0, 0, 0, 0, + 0, 0, 288, 0, 0, 292, 0, 0, 0, 0, + 0, 2, 3, 4, 297, 5, 6, 7, 8, 9, 10, 11, 0, 0, 12, 0, 0, 0, 13, 14, - 0, 0, 15, 0, 0, 16, 17, 18, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 89, 15, 0, 0, 16, 17, 18, 0, 0, + 0, 0, 0, 0, 0, 90, 0, 0, 0, 0, 0, 19, 20, 0, 0, 0, 0, 0, 21, 91, - 0, 23, 0, 24, 192, 3, 4, 0, 5, 6, - 7, 8, 9, 10, 11, 0, 0, -136, 0, 0, - 0, 0, 0, 0, 0, 15, 0, 0, 16, 17, - 18, -136, -136, 0, -143, 0, 0, 0, 0, 0, - 0, -136, -136, -136, -136, 0, -136, -136, -143, -143, - 0, 21, 167, 0, 23, 0, 24, 0, -143, -143, - -143, -143, 0, -143, -143, 0, 168, 169, -136, 0, - 0, 0, 0, 0, 0, 0, 170, 171, 172, 173, - 0, 174, 175, 0, 0, -143, 148, 149, 0, 150, - 151, 152, 0, 0, 0, 0, 0, 153, 154, 0, - 0, 0, 0, 176, 0, 0, 155, 0, 0, 0, - 0, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 0, 0, 148, 149, -126, 150, 151, 152, 0, 0, - 0, 0, 0, 153, 154, 0, 0, 0, 0, 0, - 0, 0, 155, 0, 0, 0, 0, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 0, 0, 148, 149, - 262, 150, 151, 152, 0, 0, 0, 219, 0, 153, - 154, 0, 0, 0, 0, 0, 0, 0, 155, 0, - 0, 0, 0, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 148, 149, 0, 150, 151, 152, 0, 0, - 0, 283, 0, 153, 154, 0, 0, 0, 0, 0, - 0, 0, 155, 0, 0, 0, 0, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 148, 149, 0, 150, - 151, 152, 0, 0, 0, 0, 0, 153, 154, 0, - 0, 0, 0, 0, 0, 0, 155, 0, 0, 0, - 0, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 148, 0, 0, 150, 151, 152, 0, 0, 0, 0, - 0, 153, 154, 0, 0, 0, 0, 0, 0, 0, - 155, 0, 0, 0, 0, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 150, 151, 152, 0, 0, 0, - 0, 0, 153, 154, 0, 0, 0, 0, 0, 0, - 0, 155, 0, 0, 0, 0, 156, 157, 158, 159, - 160, 161, 162, 163, 164 + 0, 23, 0, 24, 0, 0, 0, 1, 92, 2, + 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, + 0, 0, 12, 0, 0, 0, 13, 14, 0, 0, + 15, 0, 0, 16, 17, 18, 0, 0, -142, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, + 20, 0, -142, -142, 127, -148, 21, 22, -126, 23, + 0, 24, -142, -142, -142, -142, 0, -142, -142, -148, + -148, 0, -145, 0, 0, 0, 0, 0, 0, -148, + -148, -148, -148, 0, -148, -148, -145, -145, 182, -142, + 0, 103, 0, 0, 0, 0, -145, -145, -145, -145, + 0, -145, -145, -128, 146, 0, -148, 0, 103, 0, + 0, 0, 0, 0, 0, 0, 0, -128, -128, 0, + -130, 0, 0, -145, 0, 103, 0, -128, -128, -128, + -128, 0, -128, -128, -130, -130, 0, -131, 0, 0, + 0, 0, 0, 0, -130, -130, -130, -130, 0, -130, + -130, -131, -131, 0, -128, -129, 103, 0, 0, 0, + 0, -131, -131, -131, -131, 0, -131, -131, 0, -129, + -129, -130, -132, 103, 0, 0, 0, 0, 0, -129, + -129, -129, -129, 0, -129, -129, -132, -132, -131, -134, + 103, 0, 0, 0, 0, 0, -132, -132, -132, -132, + 0, -132, -132, -134, -134, 0, -129, -135, 103, 0, + 0, 0, 0, -134, -134, -134, -134, 0, -134, -134, + 0, -135, -135, -132, -136, 103, 0, 0, 0, 0, + 0, -135, -135, -135, -135, 0, -135, -135, -136, -136, + -134, -138, 103, 0, 0, 0, 0, 0, -136, -136, + -136, -136, 0, -136, -136, -138, -138, 0, -135, -143, + 103, 0, 0, 0, 0, -138, -138, -138, -138, 0, + -138, -138, 0, -143, -143, -136, -139, 103, 0, 0, + 0, 0, 0, -143, -143, -143, -143, 0, -143, -143, + -139, -139, -138, -140, 103, 0, 0, 0, 0, 0, + -139, -139, -139, -139, 0, -139, -139, -140, -140, 0, + -143, -146, 103, 0, 0, 0, 0, -140, -140, -140, + -140, 0, -140, -140, 0, -146, -146, -139, -149, 103, + 0, 0, 0, 0, 0, -146, -146, -146, -146, 0, + -146, -146, -149, -149, -140, -133, 103, 0, 0, 0, + 0, 0, -149, -149, -149, -149, 0, -149, -149, -133, + -133, 0, -146, -147, 103, 0, 0, 0, 0, -133, + -133, -133, -133, 0, -133, -133, 0, -147, -147, -149, + 0, 103, 0, 0, 0, 0, 0, -147, -147, -147, + -147, 0, -147, -147, 0, 0, -133, 0, 103, 0, + 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, + 11, 0, 0, 12, -147, 0, 103, 13, 14, 0, + 0, 15, 0, 0, 16, 17, 18, 0, 0, 0, + 0, 0, 0, 0, 90, 0, 0, 0, 0, 0, + 19, 20, 0, 0, 0, 0, 0, 21, 91, 0, + 23, 0, 24, 2, 3, 4, 0, 5, 6, 7, + 8, 9, 10, 11, 0, 0, 12, 0, 0, 0, + 13, 14, 0, 0, 15, 0, 0, 16, 17, 18, + 0, 0, 0, 0, 0, 0, 0, 223, 0, 0, + 0, 0, 0, 19, 20, 0, 0, 0, 0, 0, + 21, 22, 0, 23, 0, 24, 2, 3, 4, 0, + 5, 6, 7, 8, 9, 10, 11, 0, 0, 12, + 154, 155, 0, 13, 14, 0, 0, 15, 0, 156, + 16, 17, 18, 0, 0, 158, 159, 160, 161, 162, + 163, 164, 165, 0, 0, 0, 19, 20, 0, 0, + 0, 0, 0, 21, 22, 0, 23, 0, 24, 2, + 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, + 0, 0, 12, 0, 0, 0, 13, 14, 0, 0, + 15, 0, 0, 16, 17, 18, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, + 20, 0, 0, 0, 0, 0, 21, 91, 0, 23, + 0, 24, 193, 3, 4, 0, 5, 6, 7, 8, + 9, 10, 11, 0, 0, -137, 0, 0, 0, 0, + 0, 0, 0, 15, 0, 0, 16, 17, 18, -137, + -137, 0, -144, 0, 0, 0, 0, 0, 0, -137, + -137, -137, -137, 0, -137, -137, -144, -144, 0, 21, + 168, 0, 23, 0, 24, 0, -144, -144, -144, -144, + 0, -144, -144, 0, 169, 170, -137, 0, 0, 0, + 0, 0, 0, 0, 171, 172, 173, 174, 0, 175, + 176, 0, 0, -144, 149, 150, 0, 151, 152, 153, + 0, 0, 0, 0, 0, 154, 155, 0, 0, 0, + 0, 177, 0, 0, 156, 0, 0, 0, 0, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 0, 0, + 149, 150, -127, 151, 152, 153, 0, 0, 0, 0, + 0, 154, 155, 0, 0, 0, 0, 0, 0, 0, + 156, 0, 0, 0, 0, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 0, 0, 149, 150, 263, 151, + 152, 153, 0, 0, 0, 220, 0, 154, 155, 0, + 0, 0, 0, 0, 0, 0, 156, 0, 0, 0, + 0, 157, 158, 159, 160, 161, 162, 163, 164, 165, + 149, 150, 0, 151, 152, 153, 0, 0, 0, 284, + 0, 154, 155, 0, 0, 0, 0, 0, 0, 0, + 156, 0, 0, 0, 0, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 149, 150, 0, 151, 152, 153, + 0, 0, 0, 0, 0, 154, 155, 0, 0, 0, + 0, 0, 0, 0, 156, 0, 0, 0, 0, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 149, 0, + 0, 151, 152, 153, 0, 0, 0, 0, 0, 154, + 155, 0, 0, 0, 0, 0, 0, 0, 156, 0, + 0, 0, 0, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 151, 152, 153, 0, 0, 0, 0, 0, + 154, 155, 0, 0, 0, 0, 0, 0, 0, 156, + 0, 0, 0, 0, 157, 158, 159, 160, 161, 162, + 163, 164, 165 }; static const yytype_int16 yycheck[] = { - 0, 0, 23, 122, 43, 3, 22, 22, 225, 22, - 55, 3, 12, 13, 14, 262, 22, 52, 52, 19, - 20, 56, 55, 23, 58, 24, 145, 22, 22, 3, - 28, 29, 29, 7, 3, 3, 28, 29, 285, 55, - 0, 38, 21, 40, 59, 42, 43, 44, 52, 55, - 29, 57, 91, 59, 28, 29, 273, 55, 50, 38, - 27, 40, 52, 42, 43, 59, 3, 55, 38, 37, - 40, 190, 42, 43, 44, 55, 50, 57, 75, 59, - 80, 55, 22, 27, 28, 3, 30, 31, 32, 33, - 34, 54, 36, 37, 91, 39, 75, 41, 22, 57, - 37, 45, 46, 103, 48, 75, 50, 51, 22, 22, - 28, 29, 91, 34, 52, 55, 52, 57, 56, 59, - 56, 22, 43, 44, 45, 46, 47, 34, 72, 52, - 74, 59, 76, 56, 59, 57, 34, 176, 45, 46, - 47, 60, 52, 52, 52, 264, 56, 56, 148, 149, + 0, 0, 23, 123, 263, 3, 226, 22, 3, 7, + 22, 3, 12, 13, 14, 52, 22, 55, 22, 19, + 20, 58, 3, 23, 55, 24, 146, 286, 3, 22, + 28, 29, 29, 28, 29, 3, 28, 29, 22, 22, + 55, 38, 0, 40, 3, 42, 43, 44, 55, 55, + 29, 57, 50, 59, 274, 50, 37, 55, 50, 38, + 55, 40, 37, 42, 43, 44, 59, 52, 54, 28, + 29, 191, 55, 22, 57, 59, 59, 55, 75, 57, + 80, 59, 52, 27, 28, 27, 30, 31, 32, 33, + 34, 50, 36, 37, 91, 39, 75, 41, 52, 22, + 54, 45, 46, 103, 48, 22, 50, 51, 34, 38, + 22, 40, 91, 42, 43, 44, 21, 43, 44, 45, + 46, 47, 52, 59, 29, 52, 56, 59, 72, 56, + 74, 34, 76, 38, 34, 40, 52, 42, 43, 52, + 56, 54, 45, 46, 47, 265, 75, 57, 57, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 52, 165, 167, 56, 43, - 170, 171, 172, 173, 174, 175, 52, 43, 54, 176, - 179, 52, 57, 54, 59, 57, 91, 59, 3, 4, - 5, 91, 7, 8, 9, 10, 11, 12, 13, 220, - 52, 16, 54, 43, 43, 20, 21, 91, 23, 24, - 91, 91, 27, 28, 29, 84, 43, 217, 91, -1, - 219, 91, 37, 91, 91, 225, 91, 91, 43, 44, - 91, 91, 91, 91, 91, 50, 51, 91, 53, 260, - 55, 91, 91, 91, -1, 60, -1, -1, 247, -1, - 194, 195, 196, 197, 198, 199, 200, -1, 202, 203, - 204, 205, 206, 207, -1, 209, 210, 211, -1, 213, - 214, 215, -1, 273, -1, -1, -1, -1, -1, -1, - -1, 281, -1, -1, 283, -1, -1, -1, 1, -1, - 3, 4, 5, 293, 7, 8, 9, 10, 11, 12, - 13, -1, -1, 16, -1, -1, -1, 20, 21, -1, - -1, 24, -1, -1, 27, 28, 29, -1, -1, 6, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 43, 44, -1, 20, 21, 22, 6, 50, 51, 52, - 53, -1, 55, 30, 31, 32, 33, -1, 35, 36, - 20, 21, 22, -1, -1, -1, -1, -1, -1, -1, - 30, 31, 32, 33, -1, 35, 36, 6, 55, -1, - 57, -1, 59, -1, -1, -1, -1, -1, -1, -1, - -1, 20, 21, -1, 6, -1, -1, 57, -1, 59, - -1, 30, 31, 32, 33, -1, 35, 36, 20, 21, - 22, -1, -1, -1, -1, -1, -1, -1, 30, 31, - 32, 33, -1, 35, 36, 6, 55, -1, 57, -1, - 59, -1, -1, -1, -1, -1, -1, -1, -1, 20, - 21, -1, 6, -1, -1, 57, -1, 59, -1, 30, - 31, 32, 33, -1, 35, 36, 20, 21, -1, 6, - -1, -1, -1, -1, -1, -1, 30, 31, 32, 33, + 160, 161, 162, 163, 164, 165, 60, 166, 168, 52, + 75, 171, 172, 173, 174, 175, 176, 52, 6, 52, + 177, 180, 56, 56, 52, 52, 91, 91, 56, 56, + 91, 43, 20, 21, 22, 57, 91, 59, 177, 57, + 221, 59, 30, 31, 32, 33, 91, 35, 36, 52, + 91, 54, 91, 91, 91, 91, 43, 43, 218, 91, + 91, 220, 43, 84, 43, 91, 226, 55, 91, 57, + -1, 59, 91, -1, 91, 91, 91, 91, 91, -1, + 261, 91, -1, -1, -1, -1, -1, -1, -1, 248, + -1, 195, 196, 197, 198, 199, 200, 201, -1, 203, + 204, 205, 206, 207, 208, -1, 210, 211, 212, -1, + 214, 215, 216, -1, 274, -1, -1, -1, -1, -1, + -1, -1, 282, -1, -1, 284, -1, -1, -1, -1, + -1, 3, 4, 5, 294, 7, 8, 9, 10, 11, + 12, 13, -1, -1, 16, -1, -1, -1, 20, 21, + -1, 23, 24, -1, -1, 27, 28, 29, -1, -1, + -1, -1, -1, -1, -1, 37, -1, -1, -1, -1, + -1, 43, 44, -1, -1, -1, -1, -1, 50, 51, + -1, 53, -1, 55, -1, -1, -1, 1, 60, 3, + 4, 5, -1, 7, 8, 9, 10, 11, 12, 13, + -1, -1, 16, -1, -1, -1, 20, 21, -1, -1, + 24, -1, -1, 27, 28, 29, -1, -1, 6, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + 44, -1, 20, 21, 22, 6, 50, 51, 52, 53, + -1, 55, 30, 31, 32, 33, -1, 35, 36, 20, + 21, -1, 6, -1, -1, -1, -1, -1, -1, 30, + 31, 32, 33, -1, 35, 36, 20, 21, 22, 57, + -1, 59, -1, -1, -1, -1, 30, 31, 32, 33, + -1, 35, 36, 6, 55, -1, 57, -1, 59, -1, + -1, -1, -1, -1, -1, -1, -1, 20, 21, -1, + 6, -1, -1, 57, -1, 59, -1, 30, 31, 32, + 33, -1, 35, 36, 20, 21, -1, 6, -1, -1, + -1, -1, -1, -1, 30, 31, 32, 33, -1, 35, + 36, 20, 21, -1, 57, 6, 59, -1, -1, -1, + -1, 30, 31, 32, 33, -1, 35, 36, -1, 20, + 21, 57, 6, 59, -1, -1, -1, -1, -1, 30, + 31, 32, 33, -1, 35, 36, 20, 21, 57, 6, + 59, -1, -1, -1, -1, -1, 30, 31, 32, 33, -1, 35, 36, 20, 21, -1, 57, 6, 59, -1, -1, -1, -1, 30, 31, 32, 33, -1, 35, 36, -1, 20, 21, 57, 6, 59, -1, -1, -1, -1, @@ -1144,67 +1155,62 @@ static const yytype_int16 yycheck[] = -1, -1, 30, 31, 32, 33, -1, 35, 36, 20, 21, -1, 57, 6, 59, -1, -1, -1, -1, 30, 31, 32, 33, -1, 35, 36, -1, 20, 21, 57, - 6, 59, -1, -1, -1, -1, -1, 30, 31, 32, - 33, -1, 35, 36, 20, 21, 57, 6, 59, -1, + -1, 59, -1, -1, -1, -1, -1, 30, 31, 32, + 33, -1, 35, 36, -1, -1, 57, -1, 59, -1, + 3, 4, 5, -1, 7, 8, 9, 10, 11, 12, + 13, -1, -1, 16, 57, -1, 59, 20, 21, -1, + -1, 24, -1, -1, 27, 28, 29, -1, -1, -1, + -1, -1, -1, -1, 37, -1, -1, -1, -1, -1, + 43, 44, -1, -1, -1, -1, -1, 50, 51, -1, + 53, -1, 55, 3, 4, 5, -1, 7, 8, 9, + 10, 11, 12, 13, -1, -1, 16, -1, -1, -1, + 20, 21, -1, -1, 24, -1, -1, 27, 28, 29, + -1, -1, -1, -1, -1, -1, -1, 37, -1, -1, + -1, -1, -1, 43, 44, -1, -1, -1, -1, -1, + 50, 51, -1, 53, -1, 55, 3, 4, 5, -1, + 7, 8, 9, 10, 11, 12, 13, -1, -1, 16, + 25, 26, -1, 20, 21, -1, -1, 24, -1, 34, + 27, 28, 29, -1, -1, 40, 41, 42, 43, 44, + 45, 46, 47, -1, -1, -1, 43, 44, -1, -1, + -1, -1, -1, 50, 51, -1, 53, -1, 55, 3, + 4, 5, -1, 7, 8, 9, 10, 11, 12, 13, + -1, -1, 16, -1, -1, -1, 20, 21, -1, -1, + 24, -1, -1, 27, 28, 29, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + 44, -1, -1, -1, -1, -1, 50, 51, -1, 53, + -1, 55, 3, 4, 5, -1, 7, 8, 9, 10, + 11, 12, 13, -1, -1, 6, -1, -1, -1, -1, + -1, -1, -1, 24, -1, -1, 27, 28, 29, 20, + 21, -1, 6, -1, -1, -1, -1, -1, -1, 30, + 31, 32, 33, -1, 35, 36, 20, 21, -1, 50, + 6, -1, 53, -1, 55, -1, 30, 31, 32, 33, + -1, 35, 36, -1, 20, 21, 57, -1, -1, -1, -1, -1, -1, -1, 30, 31, 32, 33, -1, 35, - 36, 20, 21, -1, 57, 6, 59, -1, -1, -1, - -1, 30, 31, 32, 33, -1, 35, 36, -1, 20, - 21, 57, -1, 59, -1, -1, -1, -1, -1, 30, - 31, 32, 33, -1, 35, 36, -1, -1, 57, -1, - 59, -1, 3, 4, 5, -1, 7, 8, 9, 10, - 11, 12, 13, -1, -1, 16, 57, -1, 59, 20, - 21, -1, -1, 24, -1, -1, 27, 28, 29, -1, - -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, - -1, -1, 43, 44, -1, -1, -1, -1, -1, 50, - 51, -1, 53, -1, 55, 3, 4, 5, -1, 7, - 8, 9, 10, 11, 12, 13, -1, -1, 16, -1, - -1, -1, 20, 21, -1, -1, 24, -1, -1, 27, - 28, 29, -1, -1, -1, -1, -1, -1, -1, 37, - -1, -1, -1, -1, -1, 43, 44, -1, -1, -1, - -1, -1, 50, 51, -1, 53, -1, 55, 3, 4, - 5, -1, 7, 8, 9, 10, 11, 12, 13, -1, - -1, 16, 25, 26, -1, 20, 21, -1, -1, 24, - -1, 34, 27, 28, 29, -1, -1, 40, 41, 42, - 43, 44, 45, 46, 47, -1, -1, -1, 43, 44, - -1, -1, -1, -1, -1, 50, 51, -1, 53, -1, - 55, 3, 4, 5, -1, 7, 8, 9, 10, 11, - 12, 13, -1, -1, 16, -1, -1, -1, 20, 21, - -1, -1, 24, -1, -1, 27, 28, 29, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 43, 44, -1, -1, -1, -1, -1, 50, 51, - -1, 53, -1, 55, 3, 4, 5, -1, 7, 8, - 9, 10, 11, 12, 13, -1, -1, 6, -1, -1, - -1, -1, -1, -1, -1, 24, -1, -1, 27, 28, - 29, 20, 21, -1, 6, -1, -1, -1, -1, -1, - -1, 30, 31, 32, 33, -1, 35, 36, 20, 21, - -1, 50, 6, -1, 53, -1, 55, -1, 30, 31, - 32, 33, -1, 35, 36, -1, 20, 21, 57, -1, - -1, -1, -1, -1, -1, -1, 30, 31, 32, 33, - -1, 35, 36, -1, -1, 57, 14, 15, -1, 17, - 18, 19, -1, -1, -1, -1, -1, 25, 26, -1, - -1, -1, -1, 57, -1, -1, 34, -1, -1, -1, - -1, 39, 40, 41, 42, 43, 44, 45, 46, 47, - -1, -1, 14, 15, 52, 17, 18, 19, -1, -1, - -1, -1, -1, 25, 26, -1, -1, -1, -1, -1, - -1, -1, 34, -1, -1, -1, -1, 39, 40, 41, - 42, 43, 44, 45, 46, 47, -1, -1, 14, 15, - 52, 17, 18, 19, -1, -1, -1, 23, -1, 25, - 26, -1, -1, -1, -1, -1, -1, -1, 34, -1, - -1, -1, -1, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 14, 15, -1, 17, 18, 19, -1, -1, - -1, 23, -1, 25, 26, -1, -1, -1, -1, -1, - -1, -1, 34, -1, -1, -1, -1, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 14, 15, -1, 17, - 18, 19, -1, -1, -1, -1, -1, 25, 26, -1, - -1, -1, -1, -1, -1, -1, 34, -1, -1, -1, - -1, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 14, -1, -1, 17, 18, 19, -1, -1, -1, -1, + 36, -1, -1, 57, 14, 15, -1, 17, 18, 19, + -1, -1, -1, -1, -1, 25, 26, -1, -1, -1, + -1, 57, -1, -1, 34, -1, -1, -1, -1, 39, + 40, 41, 42, 43, 44, 45, 46, 47, -1, -1, + 14, 15, 52, 17, 18, 19, -1, -1, -1, -1, -1, 25, 26, -1, -1, -1, -1, -1, -1, -1, 34, -1, -1, -1, -1, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 17, 18, 19, -1, -1, -1, - -1, -1, 25, 26, -1, -1, -1, -1, -1, -1, - -1, 34, -1, -1, -1, -1, 39, 40, 41, 42, - 43, 44, 45, 46, 47 + 44, 45, 46, 47, -1, -1, 14, 15, 52, 17, + 18, 19, -1, -1, -1, 23, -1, 25, 26, -1, + -1, -1, -1, -1, -1, -1, 34, -1, -1, -1, + -1, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 14, 15, -1, 17, 18, 19, -1, -1, -1, 23, + -1, 25, 26, -1, -1, -1, -1, -1, -1, -1, + 34, -1, -1, -1, -1, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 14, 15, -1, 17, 18, 19, + -1, -1, -1, -1, -1, 25, 26, -1, -1, -1, + -1, -1, -1, -1, 34, -1, -1, -1, -1, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 14, -1, + -1, 17, 18, 19, -1, -1, -1, -1, -1, 25, + 26, -1, -1, -1, -1, -1, -1, -1, 34, -1, + -1, -1, -1, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 17, 18, 19, -1, -1, -1, -1, -1, + 25, 26, -1, -1, -1, -1, -1, -1, -1, 34, + -1, -1, -1, -1, 39, 40, 41, 42, 43, 44, + 45, 46, 47 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -1222,25 +1228,25 @@ static const yytype_uint8 yystos[] = 55, 97, 97, 97, 22, 97, 97, 128, 3, 23, 37, 51, 60, 74, 90, 91, 92, 97, 102, 121, 97, 102, 0, 59, 119, 120, 119, 119, 3, 77, - 83, 128, 119, 119, 119, 119, 119, 119, 119, 83, - 128, 22, 55, 119, 83, 128, 22, 119, 83, 128, - 3, 7, 66, 76, 77, 78, 79, 80, 83, 128, - 129, 83, 119, 119, 119, 55, 119, 119, 14, 15, - 17, 18, 19, 25, 26, 34, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 52, 52, 6, 20, 21, - 30, 31, 32, 33, 35, 36, 57, 104, 119, 52, - 56, 22, 119, 83, 128, 119, 89, 92, 97, 81, - 55, 54, 3, 63, 64, 65, 67, 68, 69, 70, - 71, 72, 73, 75, 77, 79, 84, 85, 86, 87, - 93, 95, 103, 122, 128, 130, 123, 52, 54, 23, - 52, 54, 37, 97, 98, 52, 58, 89, 89, 97, + 79, 83, 128, 119, 119, 119, 119, 119, 119, 119, + 83, 128, 22, 55, 119, 83, 128, 22, 119, 83, + 128, 3, 7, 66, 76, 77, 78, 79, 80, 83, + 128, 129, 83, 119, 119, 119, 55, 119, 119, 14, + 15, 17, 18, 19, 25, 26, 34, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 52, 52, 6, 20, + 21, 30, 31, 32, 33, 35, 36, 57, 104, 119, + 52, 56, 22, 119, 83, 128, 119, 89, 92, 97, + 81, 55, 54, 3, 63, 64, 65, 67, 68, 69, + 70, 71, 72, 73, 75, 77, 79, 84, 85, 86, + 87, 93, 95, 103, 122, 128, 130, 123, 52, 54, + 23, 52, 54, 37, 97, 98, 52, 58, 89, 89, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, - 97, 97, 97, 97, 97, 97, 102, 100, 97, 97, - 97, 97, 97, 97, 97, 3, 77, 79, 94, 102, - 52, 56, 52, 89, 55, 3, 37, 125, 126, 97, - 102, 92, 98, 59, 56, 56, 102, 92, 90, 56, - 89, 60, 52, 23, 98, 52, 56, 97, 124, 3, - 37, 102, 90, 52, 54, 56, 97 + 97, 97, 97, 97, 97, 97, 97, 102, 100, 97, + 97, 97, 97, 97, 97, 97, 3, 77, 79, 94, + 102, 52, 56, 52, 89, 55, 3, 37, 125, 126, + 97, 102, 92, 98, 59, 56, 56, 102, 92, 90, + 56, 89, 60, 52, 23, 98, 52, 56, 97, 124, + 3, 37, 102, 90, 52, 54, 56, 97 }; #define yyerrok (yyerrstatus = 0) @@ -2265,11 +2271,6 @@ yyreduce: { (yyval.asExpr) = hb_compExprNewVar( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; - case 37: -#line 398 "macro.y" - { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - case 38: #line 399 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} @@ -2301,8 +2302,8 @@ yyreduce: break; case 44: -#line 413 "macro.y" - { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} +#line 405 "macro.y" + { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 45: @@ -2326,8 +2327,8 @@ yyreduce: break; case 49: -#line 422 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} +#line 418 "macro.y" + { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 50: @@ -2421,21 +2422,26 @@ yyreduce: break; case 68: -#line 445 "macro.y" +#line 441 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 69: +#line 446 "macro.y" { (yyval.asExpr) = hb_macroExprNewFunCall( hb_compExprNewFunName( (yyvsp[(1) - (4)].string), HB_COMP_PARAM ), (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ); HB_MACRO_CHECK( (yyval.asExpr) ); ;} break; - case 69: -#line 448 "macro.y" + case 70: +#line 449 "macro.y" { (yyval.asExpr) = hb_macroExprNewFunCall( (yyvsp[(1) - (4)].asExpr), (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ); HB_MACRO_CHECK( (yyval.asExpr) ); ;} break; - case 70: -#line 453 "macro.y" + case 71: +#line 454 "macro.y" { if( hb_compExprParamListLen( (yyvsp[(4) - (5)].asExpr) ) != 0 ) { hb_macroError( EG_SYNTAX, HB_COMP_PARAM ); @@ -2446,24 +2452,19 @@ yyreduce: ;} break; - case 71: -#line 463 "macro.y" + case 72: +#line 464 "macro.y" { (yyval.asExpr) = hb_compExprNewArgList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; - case 72: -#line 464 "macro.y" + case 73: +#line 465 "macro.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; - case 75: -#line 471 "macro.y" - { (yyval.asExpr) = hb_compExprNewVarRef( (yyvsp[(2) - (2)].string), HB_COMP_PARAM ); ;} - break; - case 76: #line 472 "macro.y" - { (yyval.asExpr) = hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprNewVarRef( (yyvsp[(2) - (2)].string), HB_COMP_PARAM ); ;} break; case 77: @@ -2478,27 +2479,27 @@ yyreduce: case 79: #line 475 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); (yyval.asExpr)->value.asList.reference = HB_TRUE; ;} + { (yyval.asExpr) = hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 80: -#line 478 "macro.y" +#line 476 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); (yyval.asExpr)->value.asList.reference = HB_TRUE; ;} + break; + + case 81: +#line 479 "macro.y" { (yyval.asExpr) = hb_compExprNewArgRef( HB_COMP_PARAM ); ;} break; - case 82: -#line 484 "macro.y" - { (yyval.asExpr) = hb_compExprNewMethodObject( (yyvsp[(3) - (3)].asExpr), (yyvsp[(1) - (3)].asExpr) ); ;} - break; - case 83: -#line 487 "macro.y" - { (yyval.asExpr) = hb_compExprNewSend( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} +#line 485 "macro.y" + { (yyval.asExpr) = hb_compExprNewMethodObject( (yyvsp[(3) - (3)].asExpr), (yyvsp[(1) - (3)].asExpr) ); ;} break; case 84: #line 488 "macro.y" - { (yyval.asExpr) = hb_compExprNewMacroSend( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprNewSend( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 85: @@ -2507,13 +2508,13 @@ yyreduce: break; case 86: -#line 494 "macro.y" - { (yyval.asExpr) = hb_compExprNewMethodCall( (yyvsp[(1) - (4)].asExpr), (yyvsp[(3) - (4)].asExpr) ); ;} +#line 490 "macro.y" + { (yyval.asExpr) = hb_compExprNewMacroSend( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; - case 109: -#line 520 "macro.y" - { HB_MACRO_IFENABLED( (yyval.asExpr), (yyvsp[(1) - (1)].asExpr), HB_SM_HARBOUR ); ;} + case 87: +#line 495 "macro.y" + { (yyval.asExpr) = hb_compExprNewMethodCall( (yyvsp[(1) - (4)].asExpr), (yyvsp[(3) - (4)].asExpr) ); ;} break; case 110: @@ -2526,9 +2527,9 @@ yyreduce: { HB_MACRO_IFENABLED( (yyval.asExpr), (yyvsp[(1) - (1)].asExpr), HB_SM_HARBOUR ); ;} break; - case 117: -#line 530 "macro.y" - { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); HB_MACRO_CHECK( (yyval.asExpr) ); ;} + case 112: +#line 523 "macro.y" + { HB_MACRO_IFENABLED( (yyval.asExpr), (yyvsp[(1) - (1)].asExpr), HB_SM_HARBOUR ); ;} break; case 118: @@ -2537,12 +2538,17 @@ yyreduce: break; case 119: -#line 534 "macro.y" +#line 532 "macro.y" + { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); HB_MACRO_CHECK( (yyval.asExpr) ); ;} + break; + + case 120: +#line 535 "macro.y" { (yyval.asExpr) = hb_compExprNewArgRef( HB_COMP_PARAM ); ;} break; - case 121: -#line 538 "macro.y" + case 122: +#line 539 "macro.y" { if( !(HB_MACRO_DATA->Flags & HB_MACRO_GEN_LIST) ) { @@ -2553,173 +2559,168 @@ yyreduce: ;} break; - case 122: -#line 546 "macro.y" + case 123: +#line 547 "macro.y" { HB_MACRO_DATA->uiListElements = 1; (yyval.asExpr) = hb_compExprAddListExpr( ( HB_MACRO_DATA->Flags & HB_MACRO_GEN_PARE ) ? hb_compExprNewList( (yyvsp[(1) - (4)].asExpr), HB_COMP_PARAM ) : hb_compExprNewArgList( (yyvsp[(1) - (4)].asExpr), HB_COMP_PARAM ), (yyvsp[(4) - (4)].asExpr) ); ;} break; - case 124: -#line 553 "macro.y" + case 125: +#line 554 "macro.y" { HB_MACRO_DATA->uiListElements++; (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; - case 125: -#line 557 "macro.y" + case 126: +#line 558 "macro.y" { (yyval.asExpr) = hb_compExprNewEmpty( HB_COMP_PARAM ); ;} break; - case 147: -#line 581 "macro.y" + case 148: +#line 582 "macro.y" { HB_MACRO_IFENABLED( (yyval.asExpr), (yyvsp[(1) - (1)].asExpr), HB_SM_HARBOUR ); ;} break; - case 149: -#line 588 "macro.y" - { (yyval.asExpr) = hb_compExprNewPostInc( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} - break; - case 150: #line 589 "macro.y" - { (yyval.asExpr) = hb_compExprNewPostDec( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprNewPostInc( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 151: -#line 595 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} +#line 590 "macro.y" + { (yyval.asExpr) = hb_compExprNewPostDec( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 152: -#line 598 "macro.y" - { (yyval.asExpr) = hb_compExprNewPreInc( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} +#line 596 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 153: #line 599 "macro.y" - { (yyval.asExpr) = hb_compExprNewPreDec( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprNewPreInc( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 154: -#line 602 "macro.y" - { (yyval.asExpr) = hb_compExprNewNot( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} +#line 600 "macro.y" + { (yyval.asExpr) = hb_compExprNewPreDec( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 155: #line 603 "macro.y" - { (yyval.asExpr) = hb_compExprNewNegate( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprNewNot( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 156: #line 604 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + { (yyval.asExpr) = hb_compExprNewNegate( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 157: -#line 607 "macro.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 605 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 158: -#line 610 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 608 "macro.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 159: -#line 613 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 611 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 160: -#line 616 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMultEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 614 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 161: -#line 619 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDivEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 617 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMultEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 162: -#line 622 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewModEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 620 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDivEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 163: -#line 625 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewExpEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 623 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewModEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 170: -#line 636 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + case 164: +#line 626 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewExpEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 171: #line 637 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 172: #line 638 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMult( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 173: #line 639 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDiv( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMult( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 174: #line 640 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMod( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDiv( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 175: #line 641 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPower( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMod( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 176: -#line 644 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewAnd( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 642 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPower( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 177: #line 645 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewOr( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewAnd( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 178: -#line 648 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEQ( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} +#line 646 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewOr( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 179: #line 649 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEQ( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 180: #line 650 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 181: #line 651 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 182: #line 652 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 183: #line 653 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewNE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 184: @@ -2729,107 +2730,112 @@ yyreduce: case 185: #line 655 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewIN( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewNE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 186: #line 656 "macro.y" - { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEqual( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewIN( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 188: -#line 665 "macro.y" - { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(0) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + case 187: +#line 657 "macro.y" + { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEqual( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 189: #line 666 "macro.y" - { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(0) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 190: #line 667 "macro.y" - { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(1) - (4)].asExpr), (yyvsp[(4) - (4)].asExpr), HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 191: -#line 670 "macro.y" - { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} +#line 668 "macro.y" + { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(1) - (4)].asExpr), (yyvsp[(4) - (4)].asExpr), HB_COMP_PARAM ); ;} break; case 192: #line 671 "macro.y" - { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} + { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 193: -#line 675 "macro.y" - { (yyval.asExpr) = hb_compExprNewCodeBlock( NULL, 0, 0, HB_COMP_PARAM ); ;} +#line 672 "macro.y" + { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 194: -#line 677 "macro.y" - { (yyval.asExpr) = (yyvsp[(3) - (7)].asExpr); ;} +#line 676 "macro.y" + { (yyval.asExpr) = hb_compExprNewCodeBlock( NULL, 0, 0, HB_COMP_PARAM ); ;} break; case 195: -#line 682 "macro.y" - { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-2) - (1)].asExpr), (yyvsp[(1) - (1)].asExpr) ); ;} +#line 678 "macro.y" + { (yyval.asExpr) = (yyvsp[(3) - (7)].asExpr); ;} break; case 196: #line 683 "macro.y" - { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-2) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} + { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-2) - (1)].asExpr), (yyvsp[(1) - (1)].asExpr) ); ;} break; case 197: -#line 688 "macro.y" - { (yyval.asExpr) = NULL; ;} +#line 684 "macro.y" + { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-2) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 198: #line 689 "macro.y" - { (yyval.asExpr) = NULL; (yyvsp[(0) - (1)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} + { (yyval.asExpr) = NULL; ;} break; case 199: #line 690 "macro.y" - { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); ;} + { (yyval.asExpr) = NULL; (yyvsp[(0) - (1)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} break; case 200: #line 691 "macro.y" - { (yyval.asExpr) = (yyvsp[(1) - (3)].asExpr); (yyvsp[(0) - (3)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} + { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); ;} break; case 201: -#line 694 "macro.y" - { (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (1)].asExpr), (yyvsp[(1) - (1)].string), ' ', HB_COMP_PARAM ); ;} +#line 692 "macro.y" + { (yyval.asExpr) = (yyvsp[(1) - (3)].asExpr); (yyvsp[(0) - (3)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} break; case 202: #line 695 "macro.y" - { (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (3)].asExpr), (yyvsp[(3) - (3)].string), ' ', HB_COMP_PARAM ); HB_MACRO_CHECK( (yyval.asExpr) ); ;} + { (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (1)].asExpr), (yyvsp[(1) - (1)].string), ' ', HB_COMP_PARAM ); ;} break; case 203: -#line 698 "macro.y" - { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} +#line 696 "macro.y" + { (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (3)].asExpr), (yyvsp[(3) - (3)].string), ' ', HB_COMP_PARAM ); HB_MACRO_CHECK( (yyval.asExpr) ); ;} break; case 204: #line 699 "macro.y" + { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 205: +#line 700 "macro.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; - case 207: -#line 710 "macro.y" + case 208: +#line 711 "macro.y" { (yyval.asExpr) = hb_compExprNewIIF( hb_compExprAddListExpr( hb_compExprAddListExpr( hb_compExprNewList( (yyvsp[(3) - (8)].asExpr), HB_COMP_PARAM ), (yyvsp[(5) - (8)].asExpr) ), (yyvsp[(7) - (8)].asExpr) ) ); ;} break; /* Line 1268 of yacc.c. */ -#line 2833 "macroy.c" +#line 2839 "macroy.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -3048,7 +3054,7 @@ yyreturn: } -#line 713 "macro.y" +#line 714 "macro.y"