diff --git a/harbour/ChangeLog b/harbour/ChangeLog index d33e7278e8..bf8d296f6c 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,16 @@ 2009-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-04-23 22:11 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/source/common/hbprintf.c + * harbour/source/macro/macro.yyc + * harbour/source/macro/macro.y + * harbour/source/macro/macro.yyh + * harbour/source/compiler/harbour.yyc + * harbour/source/compiler/harbour.y + * harbour/source/compiler/harbour.yyh + * pacified some MSVC warnings + 2009-04-23 17:46 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapiitm.h * harbour/source/vm/itemapi.c diff --git a/harbour/source/common/hbprintf.c b/harbour/source/common/hbprintf.c index a224b0dcee..df90b764ed 100644 --- a/harbour/source/common/hbprintf.c +++ b/harbour/source/common/hbprintf.c @@ -921,7 +921,7 @@ int hb_snprintf( char * buffer, size_t bufsize, const char * format, ... ) flags |= _F_SIGN; c = *format++; break; -#if _SUSV2_COMPAT_ +#ifdef _SUSV2_COMPAT_ case '\'': /* group with locale thousands' grouping characters */ c = *format++; break; diff --git a/harbour/source/compiler/harbour.y b/harbour/source/compiler/harbour.y index f47a682e0a..07cd4eba47 100644 --- a/harbour/source/compiler/harbour.y +++ b/harbour/source/compiler/harbour.y @@ -64,6 +64,10 @@ #define NO_YYERROR +/* NOTE: these symbols are defined explicitly to pacify warnings */ +#define YYENABLE_NLS 0 +#define YYLTYPE_IS_TRIVIAL 0 + static void hb_compLoopStart( HB_COMP_DECL, BOOL ); static void hb_compLoopEnd( HB_COMP_DECL ); static void hb_compLoopLoop( HB_COMP_DECL ); diff --git a/harbour/source/compiler/harbour.yyc b/harbour/source/compiler/harbour.yyc index 4b12bce134..88d7004efa 100644 --- a/harbour/source/compiler/harbour.yyc +++ b/harbour/source/compiler/harbour.yyc @@ -363,6 +363,10 @@ #define NO_YYERROR +/* NOTE: these symbols are defined explicitly to pacify warnings */ +#define YYENABLE_NLS 0 +#define YYLTYPE_IS_TRIVIAL 0 + static void hb_compLoopStart( HB_COMP_DECL, BOOL ); static void hb_compLoopEnd( HB_COMP_DECL ); static void hb_compLoopLoop( HB_COMP_DECL ); @@ -424,7 +428,7 @@ static void hb_compDebugStart( void ) { } #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 109 "harbour.y" +#line 113 "harbour.y" { char * string; /* to hold a string returned by lex */ int iNumber; /* to hold a temporary integer number */ @@ -473,7 +477,7 @@ typedef union YYSTYPE PHB_VARTYPE asVarType; } /* Line 187 of yacc.c. */ -#line 477 "harboury.c" +#line 481 "harboury.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -483,7 +487,7 @@ typedef union YYSTYPE /* Copy the second part of user declarations. */ -#line 157 "harbour.y" +#line 161 "harbour.y" /* This must be placed after the above union - the union is * typedef-ined to YYSTYPE @@ -493,7 +497,7 @@ extern void yyerror( HB_COMP_DECL, const char * ); /* parsing error manageme /* Line 216 of yacc.c. */ -#line 497 "harboury.c" +#line 501 "harboury.c" #ifdef short # undef short @@ -1032,70 +1036,70 @@ static const yytype_int16 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 280, 280, 281, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 298, 303, 311, 311, - 312, 312, 313, 313, 314, 314, 317, 318, 319, 320, - 323, 324, 325, 326, 329, 330, 333, 334, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 359, 360, 368, 369, - 370, 371, 372, 373, 379, 385, 386, 387, 388, 389, - 390, 391, 392, 394, 394, 400, 401, 402, 414, 414, - 434, 436, 434, 440, 442, 440, 446, 447, 448, 449, - 450, 451, 451, 465, 468, 476, 495, 495, 498, 499, - 500, 501, 502, 503, 516, 517, 518, 519, 522, 523, - 524, 525, 528, 529, 532, 533, 536, 537, 540, 541, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 554, 555, 556, 557, 558, 559, 560, 561, 562, 567, - 568, 571, 574, 577, 578, 583, 586, 591, 597, 602, - 607, 608, 611, 616, 619, 630, 633, 638, 641, 644, - 645, 648, 651, 652, 657, 660, 665, 666, 669, 674, - 677, 684, 685, 690, 691, 692, 693, 694, 695, 696, - 697, 698, 699, 700, 701, 702, 703, 706, 707, 708, - 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, - 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, - 739, 740, 741, 742, 743, 744, 749, 750, 751, 752, - 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, - 763, 764, 765, 766, 767, 770, 774, 777, 778, 779, - 783, 786, 789, 790, 793, 794, 797, 798, 799, 800, - 801, 804, 805, 810, 811, 812, 818, 819, 820, 823, - 826, 831, 834, 843, 844, 845, 846, 847, 848, 849, - 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, - 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, - 870, 871, 872, 873, 874, 877, 878, 879, 880, 881, - 882, 885, 886, 889, 890, 893, 894, 895, 896, 897, - 898, 899, 906, 907, 908, 909, 910, 911, 912, 913, - 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, - 924, 925, 926, 927, 933, 934, 937, 940, 941, 944, - 945, 946, 949, 950, 951, 952, 953, 954, 955, 956, - 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, - 967, 968, 969, 970, 973, 976, 979, 982, 985, 988, - 991, 994, 995, 996, 997, 998, 999, 1002, 1003, 1004, - 1005, 1006, 1007, 1010, 1011, 1014, 1015, 1016, 1017, 1018, - 1019, 1020, 1021, 1022, 1025, 1031, 1032, 1033, 1036, 1037, - 1040, 1040, 1046, 1047, 1048, 1049, 1052, 1053, 1056, 1057, - 1061, 1064, 1060, 1067, 1066, 1102, 1103, 1105, 1108, 1117, - 1121, 1124, 1124, 1126, 1126, 1128, 1128, 1130, 1130, 1140, - 1141, 1144, 1145, 1153, 1154, 1156, 1160, 1167, 1185, 1185, - 1214, 1220, 1223, 1224, 1225, 1228, 1228, 1235, 1236, 1239, - 1240, 1243, 1243, 1246, 1247, 1250, 1250, 1269, 1269, 1270, - 1271, 1272, 1273, 1273, 1276, 1277, 1280, 1281, 1282, 1283, - 1286, 1286, 1305, 1305, 1360, 1361, 1362, 1363, 1366, 1367, - 1370, 1373, 1374, 1375, 1376, 1377, 1378, 1381, 1382, 1383, - 1384, 1385, 1386, 1389, 1390, 1391, 1392, 1393, 1394, 1395, - 1396, 1399, 1400, 1401, 1402, 1406, 1408, 1405, 1413, 1413, - 1417, 1419, 1417, 1427, 1429, 1427, 1438, 1446, 1447, 1450, - 1454, 1458, 1461, 1467, 1474, 1475, 1478, 1478, 1481, 1482, - 1490, 1491, 1490, 1502, 1503, 1502, 1515, 1515, 1515, 1517, - 1517, 1522, 1527, 1521, 1541, 1550, 1554, 1555, 1559, 1572, - 1577, 1558, 1625, 1626, 1629, 1630, 1633, 1641, 1642, 1643, - 1644, 1647, 1648, 1651, 1652, 1655, 1656, 1659, 1660, 1665, - 1671, 1682, 1664, 1702, 1703, 1707, 1706, 1719, 1726, 1734, - 1735, 1739, 1738, 1748, 1749, 1758, 1758, 1761, 1761, 1764, - 1766, 1769, 1769, 1769, 1774, 1782, 1793, 1803, 1773, 1834, - 1835, 1838, 1839, 1847, 1848, 1851, 1860, 1861, 1862, 1865, - 1876, 1894, 1895, 1898, 1902, 1910, 1911, 1914, 1915, 1916, - 1917, 1918, 1921, 1922, 1923, 1924, 1925, 1929, 1928, 1951, - 1952, 1955, 1956 + 0, 284, 284, 285, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 297, 298, 299, 302, 307, 315, 315, + 316, 316, 317, 317, 318, 318, 321, 322, 323, 324, + 327, 328, 329, 330, 333, 334, 337, 338, 341, 342, + 343, 344, 345, 346, 347, 348, 349, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 363, 364, 372, 373, + 374, 375, 376, 377, 383, 389, 390, 391, 392, 393, + 394, 395, 396, 398, 398, 404, 405, 406, 418, 418, + 438, 440, 438, 444, 446, 444, 450, 451, 452, 453, + 454, 455, 455, 469, 472, 480, 499, 499, 502, 503, + 504, 505, 506, 507, 520, 521, 522, 523, 526, 527, + 528, 529, 532, 533, 536, 537, 540, 541, 544, 545, + 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 562, 563, 564, 565, 566, 571, + 572, 575, 578, 581, 582, 587, 590, 595, 601, 606, + 611, 612, 615, 620, 623, 634, 637, 642, 645, 648, + 649, 652, 655, 656, 661, 664, 669, 670, 673, 678, + 681, 688, 689, 694, 695, 696, 697, 698, 699, 700, + 701, 702, 703, 704, 705, 706, 707, 710, 711, 712, + 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, + 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, + 743, 744, 745, 746, 747, 748, 753, 754, 755, 756, + 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, + 767, 768, 769, 770, 771, 774, 778, 781, 782, 783, + 787, 790, 793, 794, 797, 798, 801, 802, 803, 804, + 805, 808, 809, 814, 815, 816, 822, 823, 824, 827, + 830, 835, 838, 847, 848, 849, 850, 851, 852, 853, + 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, + 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, + 874, 875, 876, 877, 878, 881, 882, 883, 884, 885, + 886, 889, 890, 893, 894, 897, 898, 899, 900, 901, + 902, 903, 910, 911, 912, 913, 914, 915, 916, 917, + 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, + 928, 929, 930, 931, 937, 938, 941, 944, 945, 948, + 949, 950, 953, 954, 955, 956, 957, 958, 959, 960, + 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, + 971, 972, 973, 974, 977, 980, 983, 986, 989, 992, + 995, 998, 999, 1000, 1001, 1002, 1003, 1006, 1007, 1008, + 1009, 1010, 1011, 1014, 1015, 1018, 1019, 1020, 1021, 1022, + 1023, 1024, 1025, 1026, 1029, 1035, 1036, 1037, 1040, 1041, + 1044, 1044, 1050, 1051, 1052, 1053, 1056, 1057, 1060, 1061, + 1065, 1068, 1064, 1071, 1070, 1106, 1107, 1109, 1112, 1121, + 1125, 1128, 1128, 1130, 1130, 1132, 1132, 1134, 1134, 1144, + 1145, 1148, 1149, 1157, 1158, 1160, 1164, 1171, 1189, 1189, + 1218, 1224, 1227, 1228, 1229, 1232, 1232, 1239, 1240, 1243, + 1244, 1247, 1247, 1250, 1251, 1254, 1254, 1273, 1273, 1274, + 1275, 1276, 1277, 1277, 1280, 1281, 1284, 1285, 1286, 1287, + 1290, 1290, 1309, 1309, 1364, 1365, 1366, 1367, 1370, 1371, + 1374, 1377, 1378, 1379, 1380, 1381, 1382, 1385, 1386, 1387, + 1388, 1389, 1390, 1393, 1394, 1395, 1396, 1397, 1398, 1399, + 1400, 1403, 1404, 1405, 1406, 1410, 1412, 1409, 1417, 1417, + 1421, 1423, 1421, 1431, 1433, 1431, 1442, 1450, 1451, 1454, + 1458, 1462, 1465, 1471, 1478, 1479, 1482, 1482, 1485, 1486, + 1494, 1495, 1494, 1506, 1507, 1506, 1519, 1519, 1519, 1521, + 1521, 1526, 1531, 1525, 1545, 1554, 1558, 1559, 1563, 1576, + 1581, 1562, 1629, 1630, 1633, 1634, 1637, 1645, 1646, 1647, + 1648, 1651, 1652, 1655, 1656, 1659, 1660, 1663, 1664, 1669, + 1675, 1686, 1668, 1706, 1707, 1711, 1710, 1723, 1730, 1738, + 1739, 1743, 1742, 1752, 1753, 1762, 1762, 1765, 1765, 1768, + 1770, 1773, 1773, 1773, 1778, 1786, 1797, 1807, 1777, 1838, + 1839, 1842, 1843, 1851, 1852, 1855, 1864, 1865, 1866, 1869, + 1880, 1898, 1899, 1902, 1906, 1914, 1915, 1918, 1919, 1920, + 1921, 1922, 1925, 1926, 1927, 1928, 1929, 1933, 1932, 1955, + 1956, 1959, 1960 }; #endif @@ -3995,14 +3999,14 @@ yydestruct (yymsg, yytype, yyvaluep, pComp) switch (yytype) { case 19: /* "LITERAL" */ -#line 276 "harbour.y" +#line 280 "harbour.y" { if( (yyvaluep->valChar).dealloc ) hb_xfree( (yyvaluep->valChar).string ); }; -#line 4001 "harboury.c" +#line 4005 "harboury.c" break; case 96: /* "CBSTART" */ -#line 275 "harbour.y" +#line 279 "harbour.y" { if( (yyvaluep->asCodeblock).string ) hb_xfree( (yyvaluep->asCodeblock).string ); }; -#line 4006 "harboury.c" +#line 4010 "harboury.c" break; default: @@ -4312,17 +4316,17 @@ yyreduce: switch (yyn) { case 9: -#line 289 "harbour.y" +#line 293 "harbour.y" { yyclearin; yyerrok; ;} break; case 15: -#line 295 "harbour.y" +#line 299 "harbour.y" { yyclearin; yyerrok; ;} break; case 16: -#line 299 "harbour.y" +#line 303 "harbour.y" { HB_COMP_PARAM->currModule = hb_compIdentifierNew( HB_COMP_PARAM, (yyvsp[(3) - (4)].valChar).string, (yyvsp[(3) - (4)].valChar).dealloc ? HB_IDENT_FREE : HB_IDENT_STATIC ); HB_COMP_PARAM->currLine = ( int ) (yyvsp[(2) - (4)].valLong).lNumber; HB_COMP_PARAM->pLex->fEol = FALSE; @@ -4330,7 +4334,7 @@ yyreduce: break; case 17: -#line 304 "harbour.y" +#line 308 "harbour.y" { HB_COMP_PARAM->currModule = hb_compIdentifierNew( HB_COMP_PARAM, (yyvsp[(5) - (6)].valChar).string, (yyvsp[(5) - (6)].valChar).dealloc ? HB_IDENT_FREE : HB_IDENT_STATIC ); HB_COMP_PARAM->currLine = ( int ) (yyvsp[(2) - (6)].valLong).lNumber; HB_COMP_PARAM->pLex->fEol = FALSE; @@ -4339,187 +4343,187 @@ yyreduce: break; case 18: -#line 311 "harbour.y" +#line 315 "harbour.y" { hb_compFunctionAdd( HB_COMP_PARAM, (yyvsp[(3) - (3)].string), ( HB_SYMBOLSCOPE ) (yyvsp[(1) - (3)].iNumber), 0 ); ;} break; case 20: -#line 312 "harbour.y" +#line 316 "harbour.y" { hb_compFunctionAdd( HB_COMP_PARAM, (yyvsp[(3) - (3)].string), ( HB_SYMBOLSCOPE ) (yyvsp[(1) - (3)].iNumber), FUN_PROCEDURE ); ;} break; case 22: -#line 313 "harbour.y" +#line 317 "harbour.y" { hb_compFunctionAdd( HB_COMP_PARAM, (yyvsp[(3) - (3)].string), ( HB_SYMBOLSCOPE ) (yyvsp[(1) - (3)].iNumber), 0 ); HB_COMP_PARAM->iVarScope = VS_PARAMETER; ;} break; case 24: -#line 314 "harbour.y" +#line 318 "harbour.y" { hb_compFunctionAdd( HB_COMP_PARAM, (yyvsp[(3) - (3)].string), ( HB_SYMBOLSCOPE ) (yyvsp[(1) - (3)].iNumber), FUN_PROCEDURE ); HB_COMP_PARAM->iVarScope = VS_PARAMETER;;} break; case 26: -#line 317 "harbour.y" +#line 321 "harbour.y" { (yyval.iNumber) = HB_FS_PUBLIC; ;} break; case 27: -#line 318 "harbour.y" +#line 322 "harbour.y" { (yyval.iNumber) = HB_FS_STATIC; ;} break; case 28: -#line 319 "harbour.y" +#line 323 "harbour.y" { (yyval.iNumber) = HB_FS_INIT; ;} break; case 29: -#line 320 "harbour.y" +#line 324 "harbour.y" { (yyval.iNumber) = HB_FS_EXIT; ;} break; case 30: -#line 323 "harbour.y" +#line 327 "harbour.y" { (yyval.iNumber) = 0; ;} break; case 31: -#line 324 "harbour.y" +#line 328 "harbour.y" { HB_COMP_PARAM->functions.pLast->fVParams = TRUE; (yyval.iNumber) = 0; ;} break; case 33: -#line 326 "harbour.y" +#line 330 "harbour.y" { HB_COMP_PARAM->functions.pLast->fVParams = TRUE; (yyval.iNumber) = (yyvsp[(1) - (3)].iNumber); ;} break; case 34: -#line 329 "harbour.y" - { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, ' ', NULL ); ;} - break; - - case 36: #line 333 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, ' ', NULL ); ;} break; - case 38: + case 36: #line 337 "harbour.y" + { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, ' ', NULL ); ;} + break; + + case 38: +#line 341 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'N', NULL ); ;} break; case 39: -#line 338 "harbour.y" +#line 342 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'C', NULL ); ;} break; case 40: -#line 339 "harbour.y" +#line 343 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'D', NULL ); ;} break; case 41: -#line 340 "harbour.y" +#line 344 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'L', NULL ); ;} break; case 42: -#line 341 "harbour.y" +#line 345 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'B', NULL ); ;} break; case 43: -#line 342 "harbour.y" +#line 346 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'O', NULL ); ;} break; case 44: -#line 343 "harbour.y" +#line 347 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'S', (yyvsp[(2) - (2)].string) ); ;} break; case 45: -#line 344 "harbour.y" +#line 348 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, ' ', NULL ); ;} break; case 47: -#line 348 "harbour.y" +#line 352 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'A', NULL ); ;} break; case 48: -#line 349 "harbour.y" +#line 353 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'n', NULL ); ;} break; case 49: -#line 350 "harbour.y" +#line 354 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'c', NULL ); ;} break; case 50: -#line 351 "harbour.y" +#line 355 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'd', NULL ); ;} break; case 51: -#line 352 "harbour.y" +#line 356 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'l', NULL ); ;} break; case 52: -#line 353 "harbour.y" +#line 357 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'a', NULL ); ;} break; case 53: -#line 354 "harbour.y" +#line 358 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'b', NULL ); ;} break; case 54: -#line 355 "harbour.y" +#line 359 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 'o', NULL ); ;} break; case 55: -#line 356 "harbour.y" +#line 360 "harbour.y" { (yyval.asVarType) = hb_compVarTypeNew( HB_COMP_PARAM, 's', (yyvsp[(2) - (2)].string) ); ;} break; case 56: -#line 359 "harbour.y" +#line 363 "harbour.y" { hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].asVarType) ); (yyval.iNumber) = 1; ;} break; case 57: -#line 360 "harbour.y" +#line 364 "harbour.y" { hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(3) - (4)].string), (yyvsp[(4) - (4)].asVarType) ); (yyval.iNumber)++; ;} break; case 59: -#line 369 "harbour.y" +#line 373 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; case 60: -#line 370 "harbour.y" +#line 374 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; case 61: -#line 371 "harbour.y" +#line 375 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; case 62: -#line 372 "harbour.y" +#line 376 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; case 63: -#line 373 "harbour.y" +#line 377 "harbour.y" { if( HB_COMP_ISSUPPORTED( HB_COMPFLAG_XBASE ) ) HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); else @@ -4529,7 +4533,7 @@ yyreduce: break; case 64: -#line 379 "harbour.y" +#line 383 "harbour.y" { if( HB_COMP_ISSUPPORTED( HB_COMPFLAG_XBASE ) ) HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); else @@ -4539,53 +4543,53 @@ yyreduce: break; case 65: -#line 385 "harbour.y" - { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} - break; - - case 66: -#line 386 "harbour.y" - { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} - break; - - case 67: -#line 387 "harbour.y" - { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} - break; - - case 68: -#line 388 "harbour.y" - { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} - break; - - case 69: #line 389 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; - case 70: + case 66: #line 390 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; - case 71: + case 67: #line 391 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; - case 72: + case 68: #line 392 "harbour.y" + { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} + break; + + case 69: +#line 393 "harbour.y" + { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} + break; + + case 70: +#line 394 "harbour.y" + { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} + break; + + case 71: +#line 395 "harbour.y" + { HB_COMP_EXPR_DELETE( hb_compExprGenStatement( (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ) ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} + break; + + case 72: +#line 396 "harbour.y" { hb_compGenBreak( HB_COMP_PARAM ); hb_compGenPCode2( HB_P_DOSHORT, 0, HB_COMP_PARAM ); HB_COMP_PARAM->functions.pLast->funFlags |= FUN_BREAK_CODE; ;} break; case 73: -#line 394 "harbour.y" +#line 398 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); ;} break; case 74: -#line 395 "harbour.y" +#line 399 "harbour.y" { hb_compGenBreak( HB_COMP_PARAM ); HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ) ); hb_compGenPCode2( HB_P_DOSHORT, 1, HB_COMP_PARAM ); @@ -4594,17 +4598,17 @@ yyreduce: break; case 75: -#line 400 "harbour.y" +#line 404 "harbour.y" { hb_compLoopExit( HB_COMP_PARAM ); HB_COMP_PARAM->functions.pLast->funFlags |= FUN_BREAK_CODE; ;} break; case 76: -#line 401 "harbour.y" +#line 405 "harbour.y" { hb_compLoopLoop( HB_COMP_PARAM ); HB_COMP_PARAM->functions.pLast->funFlags |= FUN_BREAK_CODE; ;} break; case 77: -#line 402 "harbour.y" +#line 406 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->wSeqCounter ) { @@ -4620,12 +4624,12 @@ yyreduce: break; case 78: -#line 414 "harbour.y" +#line 418 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); ;} break; case 79: -#line 416 "harbour.y" +#line 420 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->wSeqCounter ) { @@ -4647,12 +4651,12 @@ yyreduce: break; case 80: -#line 434 "harbour.y" +#line 438 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); HB_COMP_PARAM->iVarScope = VS_PUBLIC; ;} break; case 81: -#line 436 "harbour.y" +#line 440 "harbour.y" { hb_compRTVariableGen( HB_COMP_PARAM, "__MVPUBLIC" ); HB_COMP_PARAM->iVarScope = VS_NONE; HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; @@ -4660,12 +4664,12 @@ yyreduce: break; case 83: -#line 440 "harbour.y" +#line 444 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); HB_COMP_PARAM->iVarScope = VS_PRIVATE; ;} break; case 84: -#line 442 "harbour.y" +#line 446 "harbour.y" { hb_compRTVariableGen( HB_COMP_PARAM, "__MVPRIVATE" ); HB_COMP_PARAM->iVarScope = VS_NONE; HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; @@ -4673,7 +4677,7 @@ yyreduce: break; case 91: -#line 451 "harbour.y" +#line 455 "harbour.y" { if( HB_COMP_PARAM->szAnnounce == NULL ) { @@ -4691,12 +4695,12 @@ yyreduce: break; case 93: -#line 465 "harbour.y" +#line 469 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_WITH_RETURN; ;} break; case 94: -#line 468 "harbour.y" +#line 472 "harbour.y" { if( (yyvsp[(1) - (1)].valChar).dealloc ) { @@ -4708,7 +4712,7 @@ yyreduce: break; case 95: -#line 476 "harbour.y" +#line 480 "harbour.y" { { char szFileName[ HB_PATH_MAX ]; @@ -4729,37 +4733,37 @@ yyreduce: break; case 96: -#line 495 "harbour.y" +#line 499 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); ;} break; case 98: -#line 498 "harbour.y" +#line 502 "harbour.y" { (yyval.lNumber) = 0; ;} break; case 99: -#line 499 "harbour.y" +#line 503 "harbour.y" { (yyval.lNumber) = 1; ;} break; case 100: -#line 500 "harbour.y" +#line 504 "harbour.y" { (yyval.lNumber) = 1; ;} break; case 101: -#line 501 "harbour.y" +#line 505 "harbour.y" { (yyval.lNumber) = 0; ;} break; case 102: -#line 502 "harbour.y" +#line 506 "harbour.y" { (yyval.lNumber) = 0; hb_compCheckUnclosedStru( HB_COMP_PARAM, HB_COMP_PARAM->functions.pLast ); ;} break; case 103: -#line 503 "harbour.y" +#line 507 "harbour.y" { if( HB_COMP_PARAM->ilastLineErr && HB_COMP_PARAM->ilastLineErr == HB_COMP_PARAM->currLine ) { yyclearin; @@ -4774,162 +4778,162 @@ yyreduce: break; case 113: -#line 529 "harbour.y" +#line 533 "harbour.y" { (yyval.lNumber) += (yyvsp[(2) - (2)].lNumber); ;} break; case 114: -#line 532 "harbour.y" +#line 536 "harbour.y" { (yyval.lNumber) = 0; ;} break; case 116: -#line 536 "harbour.y" +#line 540 "harbour.y" { hb_compExternAdd( HB_COMP_PARAM, (yyvsp[(1) - (1)].string), 0 ); ;} break; case 117: -#line 537 "harbour.y" +#line 541 "harbour.y" { hb_compExternAdd( HB_COMP_PARAM, (yyvsp[(3) - (3)].string), 0 ); ;} break; case 118: -#line 540 "harbour.y" +#line 544 "harbour.y" { hb_compExternAdd( HB_COMP_PARAM, (yyvsp[(1) - (1)].string), HB_FS_DEFERRED ); ;} break; case 119: -#line 541 "harbour.y" +#line 545 "harbour.y" { hb_compExternAdd( HB_COMP_PARAM, (yyvsp[(3) - (3)].string), HB_FS_DEFERRED ); ;} break; case 121: -#line 545 "harbour.y" +#line 549 "harbour.y" { (yyval.string) = ( char * ) "STEP"; ;} break; case 122: -#line 546 "harbour.y" +#line 550 "harbour.y" { (yyval.string) = ( char * ) "TO"; ;} break; case 123: -#line 547 "harbour.y" +#line 551 "harbour.y" { (yyval.string) = ( char * ) "LOOP"; ;} break; case 124: -#line 548 "harbour.y" +#line 552 "harbour.y" { (yyval.string) = ( char * ) "EXIT"; ;} break; case 125: -#line 549 "harbour.y" +#line 553 "harbour.y" { (yyval.string) = ( char * ) "IN"; ;} break; case 126: -#line 550 "harbour.y" - { (yyval.string) = (yyvsp[(1) - (1)].string); ;} - break; - - case 127: -#line 551 "harbour.y" - { (yyval.string) = (yyvsp[(1) - (1)].string); ;} - break; - - case 128: -#line 552 "harbour.y" - { (yyval.string) = (yyvsp[(1) - (1)].string); ;} - break; - - case 129: -#line 553 "harbour.y" - { (yyval.string) = (yyvsp[(1) - (1)].string); ;} - break; - - case 130: #line 554 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 131: + case 127: #line 555 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 132: + case 128: #line 556 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 133: + case 129: #line 557 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 134: + case 130: #line 558 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 135: + case 131: #line 559 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 136: + case 132: #line 560 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 137: + case 133: #line 561 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; - case 138: + case 134: #line 562 "harbour.y" { (yyval.string) = (yyvsp[(1) - (1)].string); ;} break; + case 135: +#line 563 "harbour.y" + { (yyval.string) = (yyvsp[(1) - (1)].string); ;} + break; + + case 136: +#line 564 "harbour.y" + { (yyval.string) = (yyvsp[(1) - (1)].string); ;} + break; + + case 137: +#line 565 "harbour.y" + { (yyval.string) = (yyvsp[(1) - (1)].string); ;} + break; + + case 138: +#line 566 "harbour.y" + { (yyval.string) = (yyvsp[(1) - (1)].string); ;} + break; + case 139: -#line 567 "harbour.y" +#line 571 "harbour.y" { (yyval.asExpr) = hb_compExprNewDouble( (yyvsp[(1) - (1)].valDouble).dNumber, (yyvsp[(1) - (1)].valDouble).bWidth, (yyvsp[(1) - (1)].valDouble).bDec, HB_COMP_PARAM ); ;} break; case 140: -#line 568 "harbour.y" +#line 572 "harbour.y" { (yyval.asExpr) = hb_compExprNewLong( (yyvsp[(1) - (1)].valLong).lNumber, HB_COMP_PARAM ); ;} break; case 141: -#line 571 "harbour.y" +#line 575 "harbour.y" { (yyval.asExpr) = hb_compExprNewDate( ( LONG ) (yyvsp[(1) - (1)].valLong).lNumber, HB_COMP_PARAM ); ;} break; case 142: -#line 574 "harbour.y" +#line 578 "harbour.y" { (yyval.asExpr) = hb_compExprNewTimeStamp( (yyvsp[(1) - (1)].valTimeStamp).date, (yyvsp[(1) - (1)].valTimeStamp).time, HB_COMP_PARAM ); ;} break; case 143: -#line 577 "harbour.y" +#line 581 "harbour.y" { (yyval.asExpr) = hb_compExprNewLong( (yyvsp[(1) - (2)].valLong).lNumber, HB_COMP_PARAM ); ;} break; case 144: -#line 578 "harbour.y" +#line 582 "harbour.y" { (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, hb_compExprNewDouble( (yyvsp[(1) - (2)].valDouble).dNumber, (yyvsp[(1) - (2)].valDouble).bWidth, (yyvsp[(1) - (2)].valDouble).bDec, HB_COMP_PARAM ) ); ;} break; case 145: -#line 583 "harbour.y" +#line 587 "harbour.y" { (yyval.asExpr) = hb_compExprNewNil( HB_COMP_PARAM ); ;} break; case 147: -#line 591 "harbour.y" +#line 595 "harbour.y" { (yyval.asExpr) = hb_compExprNewString( (yyvsp[(1) - (1)].valChar).string, (yyvsp[(1) - (1)].valChar).length, (yyvsp[(1) - (1)].valChar).dealloc, HB_COMP_PARAM ); (yyvsp[(1) - (1)].valChar).dealloc = FALSE; @@ -4937,457 +4941,457 @@ yyreduce: break; case 150: -#line 607 "harbour.y" +#line 611 "harbour.y" { (yyval.asExpr) = hb_compExprNewLogical( TRUE, HB_COMP_PARAM ); ;} break; case 151: -#line 608 "harbour.y" +#line 612 "harbour.y" { (yyval.asExpr) = hb_compExprNewLogical( FALSE, HB_COMP_PARAM ); ;} break; case 153: -#line 616 "harbour.y" +#line 620 "harbour.y" { (yyval.asExpr) = hb_compExprNewSelf( HB_COMP_PARAM ); ;} break; case 155: -#line 630 "harbour.y" +#line 634 "harbour.y" { (yyval.asExpr) = hb_compExprNewArray( (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 157: -#line 638 "harbour.y" +#line 642 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 159: -#line 644 "harbour.y" +#line 648 "harbour.y" { (yyval.asExpr) = hb_compExprNewHash( NULL, HB_COMP_PARAM ); ;} break; case 160: -#line 645 "harbour.y" +#line 649 "harbour.y" { (yyval.asExpr) = hb_compExprNewHash( (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 162: -#line 651 "harbour.y" +#line 655 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( hb_compExprNewList( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 163: -#line 652 "harbour.y" +#line 656 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( hb_compExprAddListExpr( (yyvsp[(1) - (5)].asExpr), (yyvsp[(3) - (5)].asExpr) ), (yyvsp[(5) - (5)].asExpr) ); ;} break; case 164: -#line 657 "harbour.y" +#line 661 "harbour.y" { (yyval.asExpr) = hb_compExprNewVar( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 165: -#line 660 "harbour.y" +#line 664 "harbour.y" { (yyval.asExpr) = hb_compExprNewAlias( (yyvsp[(1) - (2)].string), HB_COMP_PARAM ); ;} break; case 166: -#line 665 "harbour.y" +#line 669 "harbour.y" { (yyval.asExpr) = hb_compExprNewMacro( NULL, '&', (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 167: -#line 666 "harbour.y" +#line 670 "harbour.y" { (yyval.asExpr) = hb_compExprNewMacro( NULL, 0, (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 169: -#line 674 "harbour.y" +#line 678 "harbour.y" { (yyval.asExpr) = hb_compExprNewMacro( (yyvsp[(2) - (2)].asExpr), 0, NULL, HB_COMP_PARAM ); ;} break; case 171: -#line 684 "harbour.y" +#line 688 "harbour.y" { (yyval.asExpr) = hb_compExprNewAlias( "FIELD", HB_COMP_PARAM ); ;} break; case 172: -#line 685 "harbour.y" +#line 689 "harbour.y" { (yyval.asExpr) = (yyvsp[(3) - (3)].asExpr); ;} break; case 173: -#line 690 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 174: -#line 691 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 175: -#line 692 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 176: -#line 693 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 177: #line 694 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 178: + case 174: #line 695 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 179: + case 175: #line 696 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 180: + case 176: #line 697 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 181: + case 177: #line 698 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 182: + case 178: #line 699 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} break; - case 183: + case 179: #line 700 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} break; - case 184: + case 180: #line 701 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} break; - case 185: + case 181: #line 702 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} break; - case 186: + case 182: #line 703 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} break; - case 187: + case 183: +#line 704 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + break; + + case 184: +#line 705 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + break; + + case 185: #line 706 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + break; + + case 186: +#line 707 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} + break; + + case 187: +#line 710 "harbour.y" { (yyval.asExpr) = hb_compExprNewVar( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 190: -#line 711 "harbour.y" +#line 715 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 191: -#line 712 "harbour.y" +#line 716 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 192: -#line 713 "harbour.y" +#line 717 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 193: -#line 714 "harbour.y" +#line 718 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 194: -#line 715 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} - break; - - case 195: -#line 716 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} - break; - - case 196: -#line 717 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} - break; - - case 197: -#line 718 "harbour.y" - { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} - break; - - case 198: #line 719 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 199: + case 195: #line 720 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 200: + case 196: #line 721 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 201: + case 197: #line 722 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 202: + case 198: #line 723 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 203: + case 199: #line 724 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 204: + case 200: #line 725 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 205: + case 201: #line 726 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 206: + case 202: #line 727 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} break; - case 207: + case 203: #line 728 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} + break; + + case 204: +#line 729 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} + break; + + case 205: +#line 730 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} + break; + + case 206: +#line 731 "harbour.y" + { HB_COMP_EXPR_DELETE( (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(1) - (2)].asExpr) ); ;} + break; + + case 207: +#line 732 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 208: -#line 729 "harbour.y" +#line 733 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 209: -#line 730 "harbour.y" +#line 734 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 210: -#line 739 "harbour.y" - { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 211: -#line 740 "harbour.y" - { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 212: -#line 741 "harbour.y" - { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 213: -#line 742 "harbour.y" - { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 214: #line 743 "harbour.y" { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; - case 215: + case 211: #line 744 "harbour.y" + { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 212: +#line 745 "harbour.y" + { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 213: +#line 746 "harbour.y" + { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 214: +#line 747 "harbour.y" + { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 215: +#line 748 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (2)].asExpr) ); (yyval.asExpr) = hb_compErrorAlias( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} break; case 216: -#line 749 "harbour.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 217: -#line 750 "harbour.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 218: -#line 751 "harbour.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 219: -#line 752 "harbour.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 220: #line 753 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 221: + case 217: #line 754 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 222: + case 218: #line 755 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 223: + case 219: #line 756 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 224: + case 220: #line 757 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 225: + case 221: #line 758 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 226: + case 222: #line 759 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 227: + case 223: #line 760 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 228: + case 224: #line 761 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 229: + case 225: #line 762 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 230: + case 226: #line 763 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 231: + case 227: #line 764 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 232: + case 228: #line 765 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 233: + case 229: #line 766 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 234: + case 230: #line 767 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; + case 231: +#line 768 "harbour.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 232: +#line 769 "harbour.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 233: +#line 770 "harbour.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 234: +#line 771 "harbour.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + case 236: -#line 774 "harbour.y" +#line 778 "harbour.y" { (yyval.asExpr) = hb_compExprNewFunCall( hb_compExprNewFunName( (yyvsp[(1) - (4)].string), HB_COMP_PARAM ), (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ); ;} break; case 238: -#line 778 "harbour.y" +#line 782 "harbour.y" { (yyval.asExpr) = hb_compExprNewFunCall( (yyvsp[(1) - (4)].asExpr), (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ); ;} break; case 239: -#line 779 "harbour.y" +#line 783 "harbour.y" { (yyval.asExpr) = hb_compExprNewFunCall( (yyvsp[(1) - (4)].asExpr), (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ); ;} break; case 240: -#line 783 "harbour.y" +#line 787 "harbour.y" { (yyval.asExpr) = hb_compCheckPassByRef( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); ;} break; case 242: -#line 789 "harbour.y" +#line 793 "harbour.y" { (yyval.asExpr) = hb_compExprNewArgList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 243: -#line 790 "harbour.y" +#line 794 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 246: -#line 797 "harbour.y" +#line 801 "harbour.y" { (yyval.asExpr) = hb_compCheckPassByRef( HB_COMP_PARAM, hb_compExprNewVarRef( (yyvsp[(2) - (2)].string), HB_COMP_PARAM ) ); ;} break; case 247: -#line 798 "harbour.y" +#line 802 "harbour.y" { (yyval.asExpr) = hb_compCheckPassByRef( HB_COMP_PARAM, hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ) ); ;} break; case 248: -#line 799 "harbour.y" +#line 803 "harbour.y" { (yyval.asExpr) = hb_compCheckPassByRef( HB_COMP_PARAM, hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ) ); ;} break; case 249: -#line 800 "harbour.y" +#line 804 "harbour.y" { (yyval.asExpr) = hb_compCheckPassByRef( HB_COMP_PARAM, hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ) ); ;} break; case 250: -#line 801 "harbour.y" +#line 805 "harbour.y" { (yyval.asExpr) = hb_compCheckPassByRef( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); (yyval.asExpr)->value.asList.reference = TRUE; ;} break; case 251: -#line 804 "harbour.y" +#line 808 "harbour.y" { (yyval.asExpr) = hb_compExprNewArgRef( HB_COMP_PARAM ); ;} break; case 253: -#line 810 "harbour.y" +#line 814 "harbour.y" { (yyval.asExpr) = ((yyvsp[(3) - (3)].asMessage).bMacro ? hb_compExprNewSend( (yyvsp[(1) - (3)].asExpr), NULL, (yyvsp[(3) - (3)].asMessage).value.macro, HB_COMP_PARAM ) : hb_compExprNewSend( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asMessage).value.string, NULL, HB_COMP_PARAM )); ;} break; case 254: -#line 811 "harbour.y" +#line 815 "harbour.y" { (yyval.asExpr) = ((yyvsp[(3) - (3)].asMessage).bMacro ? hb_compExprNewSend( (yyvsp[(1) - (3)].asExpr), NULL, (yyvsp[(3) - (3)].asMessage).value.macro, HB_COMP_PARAM ) : hb_compExprNewSend( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asMessage).value.string, NULL, HB_COMP_PARAM )); ;} break; case 255: -#line 812 "harbour.y" +#line 816 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->wWithObjectCnt == 0 ) hb_compGenError( HB_COMP_PARAM, hb_comp_szErrors, 'E', HB_COMP_ERR_WITHOBJECT, NULL, NULL ); (yyval.asExpr) = ((yyvsp[(2) - (2)].asMessage).bMacro ? hb_compExprNewSend( NULL, NULL, (yyvsp[(2) - (2)].asMessage).value.macro, HB_COMP_PARAM ) : hb_compExprNewSend( NULL, (yyvsp[(2) - (2)].asMessage).value.string, NULL, HB_COMP_PARAM )); @@ -5395,438 +5399,438 @@ yyreduce: break; case 256: -#line 818 "harbour.y" +#line 822 "harbour.y" { (yyval.asMessage).value.string = (yyvsp[(1) - (1)].string); (yyval.asMessage).bMacro=FALSE; ;} break; case 257: -#line 819 "harbour.y" +#line 823 "harbour.y" { (yyval.asMessage).value.macro = (yyvsp[(1) - (1)].asExpr); (yyval.asMessage).bMacro=TRUE; ;} break; case 258: -#line 820 "harbour.y" +#line 824 "harbour.y" { (yyval.asMessage).value.macro = (yyvsp[(1) - (1)].asExpr); (yyval.asMessage).bMacro=TRUE; ;} break; case 259: -#line 823 "harbour.y" +#line 827 "harbour.y" { (yyval.asExpr) = hb_compExprNewVarRef( (yyvsp[(3) - (4)].string), HB_COMP_PARAM ); ;} break; case 261: -#line 831 "harbour.y" +#line 835 "harbour.y" { (yyval.asExpr) = hb_compExprNewMethodCall( (yyvsp[(1) - (4)].asExpr), (yyvsp[(3) - (4)].asExpr) ); ;} break; case 271: -#line 851 "harbour.y" +#line 855 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (2)].asExpr); ;} break; case 281: -#line 861 "harbour.y" +#line 865 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (2)].asExpr); ;} break; case 284: -#line 864 "harbour.y" +#line 868 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (2)].asExpr); ;} break; case 286: -#line 866 "harbour.y" +#line 870 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (2)].asExpr); ;} break; case 298: -#line 880 "harbour.y" +#line 884 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (2)].asExpr); ;} break; case 299: -#line 881 "harbour.y" +#line 885 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (2)].asExpr); ;} break; case 301: -#line 885 "harbour.y" +#line 889 "harbour.y" { (yyval.asExpr) = hb_compExprNewArgRef( HB_COMP_PARAM ); ;} break; case 303: -#line 889 "harbour.y" +#line 893 "harbour.y" { (yyval.asExpr) = hb_compExprNewEmpty( HB_COMP_PARAM ); ;} break; case 305: -#line 893 "harbour.y" +#line 897 "harbour.y" { (yyval.asExpr) = hb_compExprNewVar( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 311: -#line 899 "harbour.y" +#line 903 "harbour.y" { (yyval.asExpr) = hb_compExprListStrip( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 334: -#line 933 "harbour.y" +#line 937 "harbour.y" { (yyval.asExpr) = hb_compExprNewPostInc( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 335: -#line 934 "harbour.y" +#line 938 "harbour.y" { (yyval.asExpr) = hb_compExprNewPostDec( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 336: -#line 937 "harbour.y" +#line 941 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 337: -#line 940 "harbour.y" +#line 944 "harbour.y" { (yyval.asExpr) = hb_compExprNewPreInc( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 338: -#line 941 "harbour.y" +#line 945 "harbour.y" { (yyval.asExpr) = hb_compExprNewPreDec( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 339: -#line 944 "harbour.y" +#line 948 "harbour.y" { (yyval.asExpr) = hb_compExprNewNot( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 340: -#line 945 "harbour.y" +#line 949 "harbour.y" { (yyval.asExpr) = hb_compExprNewNegate( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 341: -#line 946 "harbour.y" +#line 950 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 342: -#line 949 "harbour.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 343: -#line 950 "harbour.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 344: -#line 951 "harbour.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 345: -#line 952 "harbour.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 346: #line 953 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 347: + case 343: #line 954 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 348: + case 344: #line 955 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 349: + case 345: #line 956 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 350: + case 346: #line 957 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 351: + case 347: #line 958 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 352: + case 348: #line 959 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 353: + case 349: #line 960 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 354: + case 350: #line 961 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 355: + case 351: #line 962 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 356: + case 352: #line 963 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 357: + case 353: #line 964 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 358: + case 354: #line 965 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 359: + case 355: #line 966 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 360: + case 356: #line 967 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 361: + case 357: #line 968 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 362: + case 358: #line 969 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 363: + case 359: #line 970 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 364: + case 360: +#line 971 "harbour.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 361: +#line 972 "harbour.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 362: #line 973 "harbour.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; + case 363: +#line 974 "harbour.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 364: +#line 977 "harbour.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + case 365: -#line 976 "harbour.y" +#line 980 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 366: -#line 979 "harbour.y" +#line 983 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 367: -#line 982 "harbour.y" +#line 986 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMultEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 368: -#line 985 "harbour.y" +#line 989 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDivEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 369: -#line 988 "harbour.y" +#line 992 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewModEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 370: -#line 991 "harbour.y" +#line 995 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewExpEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 377: -#line 1002 "harbour.y" +#line 1006 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 378: -#line 1003 "harbour.y" +#line 1007 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 379: -#line 1004 "harbour.y" +#line 1008 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMult( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 380: -#line 1005 "harbour.y" +#line 1009 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDiv( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 381: -#line 1006 "harbour.y" +#line 1010 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMod( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 382: -#line 1007 "harbour.y" +#line 1011 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPower( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 383: -#line 1010 "harbour.y" +#line 1014 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewAnd( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 384: -#line 1011 "harbour.y" +#line 1015 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewOr( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 385: -#line 1014 "harbour.y" +#line 1018 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEQ( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 386: -#line 1015 "harbour.y" +#line 1019 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 387: -#line 1016 "harbour.y" +#line 1020 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 388: -#line 1017 "harbour.y" +#line 1021 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 389: -#line 1018 "harbour.y" +#line 1022 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 390: -#line 1019 "harbour.y" +#line 1023 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewNE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 391: -#line 1020 "harbour.y" +#line 1024 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewNE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 392: -#line 1021 "harbour.y" +#line 1025 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewIN( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 393: -#line 1022 "harbour.y" +#line 1026 "harbour.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEqual( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 395: -#line 1031 "harbour.y" +#line 1035 "harbour.y" { (yyval.asExpr) = hb_compExprNewArrayAt( (yyvsp[(0) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 396: -#line 1032 "harbour.y" +#line 1036 "harbour.y" { (yyval.asExpr) = hb_compExprNewArrayAt( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 397: -#line 1033 "harbour.y" +#line 1037 "harbour.y" { (yyval.asExpr) = hb_compExprNewArrayAt( (yyvsp[(1) - (4)].asExpr), (yyvsp[(4) - (4)].asExpr), HB_COMP_PARAM ); ;} break; case 398: -#line 1036 "harbour.y" +#line 1040 "harbour.y" { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 399: -#line 1037 "harbour.y" +#line 1041 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 400: -#line 1040 "harbour.y" +#line 1044 "harbour.y" { (yyval.asExpr) = hb_compExprNewCodeBlock( (yyvsp[(1) - (1)].asCodeblock).string, (yyvsp[(1) - (1)].asCodeblock).length, (yyvsp[(1) - (1)].asCodeblock).flags, HB_COMP_PARAM ); (yyvsp[(1) - (1)].asCodeblock).string = NULL; ;} break; case 401: -#line 1041 "harbour.y" +#line 1045 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (4)].asExpr); ;} break; case 402: -#line 1046 "harbour.y" +#line 1050 "harbour.y" { (yyval.asExpr) = NULL; ;} break; case 403: -#line 1047 "harbour.y" +#line 1051 "harbour.y" { (yyval.asExpr) = NULL; (yyvsp[(0) - (1)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} break; case 404: -#line 1048 "harbour.y" +#line 1052 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); ;} break; case 405: -#line 1049 "harbour.y" +#line 1053 "harbour.y" { (yyval.asExpr) = (yyvsp[(1) - (3)].asExpr); (yyvsp[(0) - (3)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} break; case 406: -#line 1052 "harbour.y" +#line 1056 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_LOCAL; (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (2)].asExpr), (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].asVarType)->cVarType, HB_COMP_PARAM ); ;} break; case 407: -#line 1053 "harbour.y" +#line 1057 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_LOCAL; (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (4)].asExpr), (yyvsp[(3) - (4)].string), (yyvsp[(4) - (4)].asVarType)->cVarType, HB_COMP_PARAM ); ;} break; case 408: -#line 1056 "harbour.y" +#line 1060 "harbour.y" { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-1) - (1)].asExpr), (yyvsp[(1) - (1)].asExpr) ); ;} break; case 409: -#line 1057 "harbour.y" +#line 1061 "harbour.y" { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 410: -#line 1061 "harbour.y" +#line 1065 "harbour.y" { (yyval.bTrue) = HB_COMP_PARAM->functions.pLast->bBlock; HB_COMP_PARAM->functions.pLast->bBlock = TRUE; ;} break; case 411: -#line 1064 "harbour.y" +#line 1068 "harbour.y" { HB_COMP_PARAM->functions.pLast->bBlock = (yyvsp[(2) - (3)].bTrue); ;} break; case 413: -#line 1067 "harbour.y" +#line 1071 "harbour.y" { /* 3 */ HB_CBVAR_PTR pVar; (yyval.lNumber) = HB_COMP_PARAM->functions.pLast->lPCodePos; @@ -5854,7 +5858,7 @@ yyreduce: break; case 414: -#line 1092 "harbour.y" +#line 1096 "harbour.y" { /* 6 */ hb_compCodeBlockEnd( HB_COMP_PARAM ); (yyval.asExpr) = hb_compExprSetCodeblockBody( (yyvsp[(1) - (5)].asExpr), @@ -5866,42 +5870,42 @@ yyreduce: break; case 415: -#line 1102 "harbour.y" +#line 1106 "harbour.y" { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 416: -#line 1103 "harbour.y" +#line 1107 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 417: -#line 1105 "harbour.y" +#line 1109 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (3)].asExpr) ;} break; case 419: -#line 1118 "harbour.y" +#line 1122 "harbour.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; case 421: -#line 1124 "harbour.y" +#line 1128 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_LOCAL; hb_compLinePush( HB_COMP_PARAM ); ;} break; case 423: -#line 1126 "harbour.y" +#line 1130 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_STATIC; hb_compLinePush( HB_COMP_PARAM ); ;} break; case 425: -#line 1128 "harbour.y" +#line 1132 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_TH_STATIC; hb_compLinePush( HB_COMP_PARAM ); ;} break; case 427: -#line 1130 "harbour.y" +#line 1134 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->funFlags & FUN_USES_LOCAL_PARAMS ) hb_compGenError( HB_COMP_PARAM, hb_comp_szErrors, 'E', HB_COMP_ERR_PARAMETERS_NOT_ALLOWED, NULL, NULL ); else @@ -5913,44 +5917,44 @@ yyreduce: break; case 428: -#line 1137 "harbour.y" +#line 1141 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_NONE; ;} break; case 429: -#line 1140 "harbour.y" - { (yyval.iNumber) = 1; ;} - break; - - case 430: -#line 1141 "harbour.y" - { (yyval.iNumber)++; ;} - break; - - case 431: #line 1144 "harbour.y" { (yyval.iNumber) = 1; ;} break; - case 432: + case 430: #line 1145 "harbour.y" { (yyval.iNumber)++; ;} break; + case 431: +#line 1148 "harbour.y" + { (yyval.iNumber) = 1; ;} + break; + + case 432: +#line 1149 "harbour.y" + { (yyval.iNumber)++; ;} + break; + case 434: -#line 1155 "harbour.y" +#line 1159 "harbour.y" { hb_compRTVariableAdd( HB_COMP_PARAM, hb_compExprNewRTVar( NULL, (yyvsp[(1) - (2)].asExpr), HB_COMP_PARAM ), FALSE ); ;} break; case 435: -#line 1157 "harbour.y" +#line 1161 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(4) - (4)].asExpr), HB_COMP_PARAM ) ); hb_compRTVariableAdd( HB_COMP_PARAM, hb_compExprNewRTVar( NULL, (yyvsp[(1) - (4)].asExpr), HB_COMP_PARAM ), TRUE ); ;} break; case 436: -#line 1161 "harbour.y" +#line 1165 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compArrayDimPush( (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ) ); hb_compRTVariableAdd( HB_COMP_PARAM, hb_compExprNewRTVar( NULL, (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), TRUE ); @@ -5958,7 +5962,7 @@ yyreduce: break; case 437: -#line 1168 "harbour.y" +#line 1172 "harbour.y" { hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].asVarType) ); if( HB_COMP_PARAM->iVarScope & VS_STATIC ) @@ -5979,14 +5983,14 @@ yyreduce: break; case 438: -#line 1185 "harbour.y" +#line 1189 "harbour.y" { (yyval.iNumber) = HB_COMP_PARAM->iVarScope; hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].asVarType) ); ;} break; case 439: -#line 1189 "harbour.y" +#line 1193 "harbour.y" { HB_COMP_PARAM->iVarScope = (yyvsp[(3) - (5)].iNumber); if( HB_COMP_PARAM->iVarScope & VS_STATIC ) @@ -6014,79 +6018,79 @@ yyreduce: break; case 440: -#line 1214 "harbour.y" +#line 1218 "harbour.y" { hb_compVariableDim( (yyvsp[(1) - (3)].string), (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 442: -#line 1223 "harbour.y" +#line 1227 "harbour.y" { (yyval.asExpr) = hb_compExprNewArgList( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 443: -#line 1224 "harbour.y" +#line 1228 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 444: -#line 1225 "harbour.y" +#line 1229 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (4)].asExpr), (yyvsp[(4) - (4)].asExpr) ); ;} break; case 445: -#line 1228 "harbour.y" +#line 1232 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_FIELD; ;} break; case 446: -#line 1230 "harbour.y" +#line 1234 "harbour.y" { if( (yyvsp[(4) - (5)].string) ) hb_compFieldSetAlias( HB_COMP_PARAM, (yyvsp[(4) - (5)].string), (yyvsp[(3) - (5)].iNumber) ); ;} break; case 447: -#line 1235 "harbour.y" +#line 1239 "harbour.y" { (yyval.iNumber) = hb_compFieldsCount( HB_COMP_PARAM ); hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].asVarType) ); ;} break; case 448: -#line 1236 "harbour.y" +#line 1240 "harbour.y" { hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(3) - (4)].string), (yyvsp[(4) - (4)].asVarType) ); ;} break; case 449: -#line 1239 "harbour.y" +#line 1243 "harbour.y" { (yyval.string) = NULL; ;} break; case 450: -#line 1240 "harbour.y" +#line 1244 "harbour.y" { (yyval.string) = (yyvsp[(2) - (2)].string); ;} break; case 451: -#line 1243 "harbour.y" +#line 1247 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_MEMVAR; ;} break; case 453: -#line 1246 "harbour.y" +#line 1250 "harbour.y" { hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].asVarType) ); ;} break; case 454: -#line 1247 "harbour.y" +#line 1251 "harbour.y" { hb_compVariableAdd( HB_COMP_PARAM, (yyvsp[(3) - (4)].string), (yyvsp[(4) - (4)].asVarType) ); ;} break; case 455: -#line 1250 "harbour.y" +#line 1254 "harbour.y" { hb_compDeclaredAdd( HB_COMP_PARAM, (yyvsp[(2) - (3)].string) ); HB_COMP_PARAM->szDeclaredFun = (yyvsp[(2) - (3)].string); ;} break; case 456: -#line 1251 "harbour.y" +#line 1255 "harbour.y" { if( HB_COMP_PARAM->pLastDeclared ) { @@ -6108,47 +6112,47 @@ yyreduce: break; case 457: -#line 1269 "harbour.y" +#line 1273 "harbour.y" { HB_COMP_PARAM->pLastClass = hb_compClassAdd( HB_COMP_PARAM, (yyvsp[(2) - (2)].string), NULL ); ;} break; case 458: -#line 1269 "harbour.y" +#line 1273 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_NONE; ;} break; case 459: -#line 1270 "harbour.y" +#line 1274 "harbour.y" { HB_COMP_PARAM->pLastClass = hb_compClassAdd( HB_COMP_PARAM, (yyvsp[(2) - (3)].string), NULL ); HB_COMP_PARAM->iVarScope = VS_NONE; ;} break; case 460: -#line 1271 "harbour.y" +#line 1275 "harbour.y" { HB_COMP_PARAM->pLastClass = hb_compClassAdd( HB_COMP_PARAM, (yyvsp[(2) - (4)].string), (yyvsp[(3) - (4)].string) ); HB_COMP_PARAM->iVarScope = VS_NONE; ;} break; case 461: -#line 1272 "harbour.y" +#line 1276 "harbour.y" { HB_COMP_PARAM->iVarScope = VS_NONE; ;} break; case 462: -#line 1273 "harbour.y" +#line 1277 "harbour.y" { HB_COMP_PARAM->cDataListType = (yyvsp[(3) - (3)].asVarType)->cVarType; ;} break; case 463: -#line 1273 "harbour.y" +#line 1277 "harbour.y" { HB_COMP_PARAM->cDataListType = 0; HB_COMP_PARAM->iVarScope = VS_NONE; ;} break; case 470: -#line 1286 "harbour.y" +#line 1290 "harbour.y" { HB_COMP_PARAM->pLastMethod = hb_compMethodAdd( HB_COMP_PARAM, HB_COMP_PARAM->pLastClass, (yyvsp[(1) - (2)].string) ); ;} break; case 471: -#line 1287 "harbour.y" +#line 1291 "harbour.y" { if( HB_COMP_PARAM->pLastMethod ) { @@ -6168,12 +6172,12 @@ yyreduce: break; case 472: -#line 1305 "harbour.y" +#line 1309 "harbour.y" { HB_COMP_PARAM->pLastMethod = hb_compMethodAdd( HB_COMP_PARAM, HB_COMP_PARAM->pLastClass, (yyvsp[(1) - (1)].string) ); ;} break; case 473: -#line 1306 "harbour.y" +#line 1310 "harbour.y" { if( HB_COMP_PARAM->pLastMethod ) { @@ -6229,150 +6233,150 @@ yyreduce: break; case 480: -#line 1370 "harbour.y" +#line 1374 "harbour.y" { HB_COMP_EXPR_DELETE( (yyvsp[(1) - (1)].asExpr) ); ;} break; case 481: -#line 1373 "harbour.y" +#line 1377 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].asVarType) ); ;} break; case 482: -#line 1374 "harbour.y" +#line 1378 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(2) - (3)].string), hb_compVarTypeNew( HB_COMP_PARAM, (yyvsp[(3) - (3)].asVarType)->cVarType + VT_OFFSET_BYREF, NULL ) ); ;} break; case 483: -#line 1375 "harbour.y" +#line 1379 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(2) - (5)].string), hb_compVarTypeNew( HB_COMP_PARAM, 'F', NULL ) ); ;} break; case 484: -#line 1376 "harbour.y" +#line 1380 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(3) - (4)].string), (yyvsp[(4) - (4)].asVarType) ); ;} break; case 485: -#line 1377 "harbour.y" +#line 1381 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(4) - (5)].string), hb_compVarTypeNew( HB_COMP_PARAM, (yyvsp[(5) - (5)].asVarType)->cVarType + VT_OFFSET_BYREF, NULL ) ); ;} break; case 486: -#line 1378 "harbour.y" +#line 1382 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(4) - (7)].string), hb_compVarTypeNew( HB_COMP_PARAM, 'F', NULL ) ); ;} break; case 487: -#line 1381 "harbour.y" +#line 1385 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(2) - (3)].string), hb_compVarTypeNew( HB_COMP_PARAM, (yyvsp[(3) - (3)].asVarType)->cVarType + VT_OFFSET_OPTIONAL, NULL ) ); ;} break; case 488: -#line 1382 "harbour.y" +#line 1386 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(3) - (4)].string), hb_compVarTypeNew( HB_COMP_PARAM, (yyvsp[(4) - (4)].asVarType)->cVarType + VT_OFFSET_OPTIONAL + VT_OFFSET_BYREF, NULL ) ); ;} break; case 489: -#line 1383 "harbour.y" +#line 1387 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(3) - (6)].string), hb_compVarTypeNew( HB_COMP_PARAM, 'F' + VT_OFFSET_OPTIONAL + VT_OFFSET_BYREF, NULL ) ); ;} break; case 490: -#line 1384 "harbour.y" +#line 1388 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(4) - (5)].string), hb_compVarTypeNew( HB_COMP_PARAM, (yyvsp[(5) - (5)].asVarType)->cVarType + VT_OFFSET_OPTIONAL, NULL ) ); ;} break; case 491: -#line 1385 "harbour.y" +#line 1389 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(5) - (6)].string), hb_compVarTypeNew( HB_COMP_PARAM, (yyvsp[(6) - (6)].asVarType)->cVarType + VT_OFFSET_OPTIONAL + VT_OFFSET_BYREF, NULL ) ); ;} break; case 492: -#line 1386 "harbour.y" +#line 1390 "harbour.y" { hb_compDeclaredParameterAdd( HB_COMP_PARAM, (yyvsp[(5) - (8)].string), hb_compVarTypeNew( HB_COMP_PARAM, 'F' + VT_OFFSET_OPTIONAL + VT_OFFSET_BYREF, NULL ) ); ;} break; case 501: -#line 1399 "harbour.y" +#line 1403 "harbour.y" { hb_compGenJumpHere( (yyvsp[(1) - (2)].iNumber), HB_COMP_PARAM ); ;} break; case 502: -#line 1400 "harbour.y" +#line 1404 "harbour.y" { hb_compGenJumpHere( (yyvsp[(1) - (3)].iNumber), HB_COMP_PARAM ); ;} break; case 503: -#line 1401 "harbour.y" +#line 1405 "harbour.y" { hb_compGenJumpHere( (yyvsp[(1) - (3)].iNumber), HB_COMP_PARAM ); hb_compElseIfFix( HB_COMP_PARAM, (yyvsp[(2) - (3)].pVoid) ); ;} break; case 504: -#line 1402 "harbour.y" +#line 1406 "harbour.y" { hb_compGenJumpHere( (yyvsp[(1) - (4)].iNumber), HB_COMP_PARAM ); hb_compElseIfFix( HB_COMP_PARAM, (yyvsp[(2) - (4)].pVoid) ); ;} break; case 505: -#line 1406 "harbour.y" +#line 1410 "harbour.y" { ++HB_COMP_PARAM->functions.pLast->wIfCounter; hb_compLinePushIfInside( HB_COMP_PARAM ); ;} break; case 506: -#line 1408 "harbour.y" +#line 1412 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(2) - (4)].asExpr), HB_COMP_PARAM ) ); (yyval.iNumber) = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); ;} break; case 507: -#line 1410 "harbour.y" +#line 1414 "harbour.y" { (yyval.iNumber) = hb_compGenJump( 0, HB_COMP_PARAM ); hb_compGenJumpHere( (yyvsp[(5) - (6)].iNumber), HB_COMP_PARAM ); ;} break; case 508: -#line 1413 "harbour.y" +#line 1417 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; ;} break; case 510: -#line 1417 "harbour.y" +#line 1421 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; hb_compLinePush( HB_COMP_PARAM ); ;} break; case 511: -#line 1419 "harbour.y" +#line 1423 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ) ); (yyval.iNumber) = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); ;} break; case 512: -#line 1423 "harbour.y" +#line 1427 "harbour.y" { (yyval.pVoid) = hb_compElseIfGen( HB_COMP_PARAM, NULL, hb_compGenJump( 0, HB_COMP_PARAM ) ); hb_compGenJumpHere( (yyvsp[(5) - (6)].iNumber), HB_COMP_PARAM ); ;} break; case 513: -#line 1427 "harbour.y" +#line 1431 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; hb_compLinePush( HB_COMP_PARAM ); ;} break; case 514: -#line 1429 "harbour.y" +#line 1433 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(4) - (5)].asExpr), HB_COMP_PARAM ) ); (yyval.iNumber) = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); ;} break; case 515: -#line 1433 "harbour.y" +#line 1437 "harbour.y" { (yyval.pVoid) = hb_compElseIfGen( HB_COMP_PARAM, (yyvsp[(1) - (7)].pVoid), hb_compGenJump( 0, HB_COMP_PARAM ) ); hb_compGenJumpHere( (yyvsp[(6) - (7)].iNumber), HB_COMP_PARAM ); ;} break; case 516: -#line 1439 "harbour.y" +#line 1443 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->wIfCounter ) --HB_COMP_PARAM->functions.pLast->wIfCounter; @@ -6381,17 +6385,17 @@ yyreduce: break; case 519: -#line 1452 "harbour.y" +#line 1456 "harbour.y" { hb_compElseIfFix( HB_COMP_PARAM, (yyvsp[(2) - (3)].pVoid) ); ;} break; case 522: -#line 1464 "harbour.y" +#line 1468 "harbour.y" { hb_compElseIfFix( HB_COMP_PARAM, (yyvsp[(2) - (4)].pVoid) ); ;} break; case 523: -#line 1468 "harbour.y" +#line 1472 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->wCaseCounter ) --HB_COMP_PARAM->functions.pLast->wCaseCounter; HB_COMP_PARAM->functions.pLast->funFlags &= ~ ( FUN_WITH_RETURN | FUN_BREAK_CODE ); @@ -6399,12 +6403,12 @@ yyreduce: break; case 526: -#line 1478 "harbour.y" +#line 1482 "harbour.y" { ++HB_COMP_PARAM->functions.pLast->wCaseCounter; hb_compLinePushIfDebugger( HB_COMP_PARAM );;} break; case 529: -#line 1482 "harbour.y" +#line 1486 "harbour.y" { if( (yyvsp[(2) - (2)].lNumber) > 0 ) { @@ -6414,12 +6418,12 @@ yyreduce: break; case 530: -#line 1490 "harbour.y" +#line 1494 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); ;} break; case 531: -#line 1491 "harbour.y" +#line 1495 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ) ); (yyval.iNumber) = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); @@ -6427,7 +6431,7 @@ yyreduce: break; case 532: -#line 1496 "harbour.y" +#line 1500 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; (yyval.pVoid) = hb_compElseIfGen( HB_COMP_PARAM, NULL, hb_compGenJump( 0, HB_COMP_PARAM ) ); @@ -6436,12 +6440,12 @@ yyreduce: break; case 533: -#line 1502 "harbour.y" +#line 1506 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); ;} break; case 534: -#line 1503 "harbour.y" +#line 1507 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(4) - (5)].asExpr), HB_COMP_PARAM ) ); (yyval.iNumber) = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); @@ -6449,7 +6453,7 @@ yyreduce: break; case 535: -#line 1508 "harbour.y" +#line 1512 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; (yyval.pVoid) = hb_compElseIfGen( HB_COMP_PARAM, (yyvsp[(1) - (7)].pVoid), hb_compGenJump( 0, HB_COMP_PARAM ) ); @@ -6458,22 +6462,22 @@ yyreduce: break; case 536: -#line 1515 "harbour.y" +#line 1519 "harbour.y" {hb_compLinePushIfDebugger( HB_COMP_PARAM ); ;} break; case 537: -#line 1515 "harbour.y" +#line 1519 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; ;} break; case 539: -#line 1517 "harbour.y" +#line 1521 "harbour.y" { hb_compGenError( HB_COMP_PARAM, hb_comp_szErrors, 'E', HB_COMP_ERR_MAYHEM_IN_CASE, NULL, NULL ); ;} break; case 541: -#line 1522 "harbour.y" +#line 1526 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ) ); (yyval.lNumber) = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); @@ -6481,7 +6485,7 @@ yyreduce: break; case 542: -#line 1527 "harbour.y" +#line 1531 "harbour.y" { hb_compLoopHere( HB_COMP_PARAM ); hb_compGenJump( ( ULONG ) (yyvsp[(1) - (5)].lNumber) - HB_COMP_PARAM->functions.pLast->lPCodePos, HB_COMP_PARAM ); @@ -6489,7 +6493,7 @@ yyreduce: break; case 543: -#line 1532 "harbour.y" +#line 1536 "harbour.y" { hb_compGenJumpHere( ( ULONG ) (yyvsp[(4) - (7)].lNumber), HB_COMP_PARAM ); if( HB_COMP_PARAM->functions.pLast->wWhileCounter ) @@ -6500,7 +6504,7 @@ yyreduce: break; case 544: -#line 1542 "harbour.y" +#line 1546 "harbour.y" { (yyval.lNumber) = HB_COMP_PARAM->functions.pLast->lPCodePos; hb_compLinePushIfInside( HB_COMP_PARAM ); @@ -6510,12 +6514,12 @@ yyreduce: break; case 545: -#line 1551 "harbour.y" +#line 1555 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; ;} break; case 548: -#line 1559 "harbour.y" +#line 1563 "harbour.y" { /* 5 */ hb_compLinePushIfInside( HB_COMP_PARAM ); (yyvsp[(1) - (4)].lNumber) = HB_COMP_PARAM->currLine; @@ -6531,7 +6535,7 @@ yyreduce: break; case 549: -#line 1572 "harbour.y" +#line 1576 "harbour.y" { /* 9 */ hb_compLoopStart( HB_COMP_PARAM, TRUE ); (yyval.lNumber) = hb_compGenJump( 0, HB_COMP_PARAM ); @@ -6539,14 +6543,14 @@ yyreduce: break; case 550: -#line 1577 "harbour.y" +#line 1581 "harbour.y" { /* 11 */ (yyval.lNumber) = HB_COMP_PARAM->functions.pLast->lPCodePos; ;} break; case 551: -#line 1581 "harbour.y" +#line 1585 "harbour.y" { int iSign, iLine; @@ -6592,17 +6596,17 @@ yyreduce: break; case 554: -#line 1629 "harbour.y" +#line 1633 "harbour.y" { (yyval.asExpr) = NULL; ;} break; case 555: -#line 1630 "harbour.y" +#line 1634 "harbour.y" { (yyval.asExpr) = hb_compExprReduce( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 556: -#line 1634 "harbour.y" +#line 1638 "harbour.y" { hb_compLinePush( HB_COMP_PARAM ); if( HB_COMP_PARAM->functions.pLast->wForCounter ) @@ -6611,42 +6615,42 @@ yyreduce: break; case 561: -#line 1647 "harbour.y" +#line 1651 "harbour.y" { (yyval.asExpr) = hb_compExprNewVarRef( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 562: -#line 1648 "harbour.y" +#line 1652 "harbour.y" { (yyval.asExpr) = hb_compExprNewRef( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 563: -#line 1651 "harbour.y" +#line 1655 "harbour.y" { (yyval.asExpr) = hb_compExprNewArgList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 564: -#line 1652 "harbour.y" +#line 1656 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 565: -#line 1655 "harbour.y" +#line 1659 "harbour.y" { (yyval.asExpr) = hb_compExprNewVarRef( (yyvsp[(2) - (2)].string), HB_COMP_PARAM ); ;} break; case 567: -#line 1659 "harbour.y" +#line 1663 "harbour.y" { (yyval.asExpr) = hb_compExprNewArgList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 568: -#line 1660 "harbour.y" +#line 1664 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 569: -#line 1665 "harbour.y" +#line 1669 "harbour.y" { ++HB_COMP_PARAM->functions.pLast->wForCounter; /* 5 */ hb_compLinePushIfInside( HB_COMP_PARAM ); @@ -6655,7 +6659,7 @@ yyreduce: break; case 570: -#line 1671 "harbour.y" +#line 1675 "harbour.y" { /* 7 */ @@ -6669,7 +6673,7 @@ yyreduce: break; case 571: -#line 1682 "harbour.y" +#line 1686 "harbour.y" { /* 9 */ @@ -6678,7 +6682,7 @@ yyreduce: break; case 572: -#line 1688 "harbour.y" +#line 1692 "harbour.y" { hb_compLoopHere( HB_COMP_PARAM ); hb_compEnumNext( HB_COMP_PARAM, (yyvsp[(2) - (10)].asExpr), (yyvsp[(6) - (10)].iNumber) ); @@ -6694,17 +6698,17 @@ yyreduce: break; case 573: -#line 1702 "harbour.y" +#line 1706 "harbour.y" { (yyval.iNumber) = 1; ;} break; case 574: -#line 1703 "harbour.y" +#line 1707 "harbour.y" { (yyval.iNumber) = -1; ;} break; case 575: -#line 1707 "harbour.y" +#line 1711 "harbour.y" { hb_compLoopStart( HB_COMP_PARAM, FALSE ); hb_compSwitchStart( HB_COMP_PARAM ); @@ -6713,7 +6717,7 @@ yyreduce: break; case 576: -#line 1714 "harbour.y" +#line 1718 "harbour.y" { hb_compSwitchEnd( HB_COMP_PARAM ); hb_compLoopEnd( HB_COMP_PARAM ); @@ -6721,14 +6725,14 @@ yyreduce: break; case 577: -#line 1721 "harbour.y" +#line 1725 "harbour.y" { hb_compGenPCode1( HB_P_POP, HB_COMP_PARAM ); ;} break; case 578: -#line 1727 "harbour.y" +#line 1731 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->wSwitchCounter ) --HB_COMP_PARAM->functions.pLast->wSwitchCounter; @@ -6737,21 +6741,21 @@ yyreduce: break; case 581: -#line 1739 "harbour.y" +#line 1743 "harbour.y" { ++HB_COMP_PARAM->functions.pLast->wSwitchCounter; hb_compLinePushIfInside( HB_COMP_PARAM ); ;} break; case 582: -#line 1743 "harbour.y" +#line 1747 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(3) - (4)].asExpr), HB_COMP_PARAM ) ); ;} break; case 584: -#line 1750 "harbour.y" +#line 1754 "harbour.y" { if( (yyvsp[(2) - (2)].lNumber) > 0 ) { @@ -6761,27 +6765,27 @@ yyreduce: break; case 585: -#line 1758 "harbour.y" +#line 1762 "harbour.y" { hb_compSwitchAdd( HB_COMP_PARAM, (yyvsp[(2) - (2)].asExpr) ); hb_compLinePush( HB_COMP_PARAM ); ;} break; case 587: -#line 1761 "harbour.y" +#line 1765 "harbour.y" { hb_compSwitchAdd( HB_COMP_PARAM, (yyvsp[(3) - (3)].asExpr) ); hb_compLinePush( HB_COMP_PARAM ); ;} break; case 591: -#line 1769 "harbour.y" +#line 1773 "harbour.y" { hb_compSwitchAdd( HB_COMP_PARAM, NULL ); hb_compLinePush( HB_COMP_PARAM ); ;} break; case 592: -#line 1769 "harbour.y" +#line 1773 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; ;} break; case 594: -#line 1774 "harbour.y" +#line 1778 "harbour.y" { /* 2 */ hb_compLinePushIfInside( HB_COMP_PARAM ); ++HB_COMP_PARAM->functions.pLast->wSeqCounter; @@ -6790,7 +6794,7 @@ yyreduce: break; case 595: -#line 1782 "harbour.y" +#line 1786 "harbour.y" { /* 6 */ /* Set jump address for HB_P_SEQBEGIN opcode - this address * will be used in BREAK code if there is no RECOVER clause @@ -6804,7 +6808,7 @@ yyreduce: break; case 596: -#line 1793 "harbour.y" +#line 1797 "harbour.y" { /* 8 */ /* Replace END address with RECOVER address in * HB_P_SEQBEGIN opcode if there is RECOVER clause @@ -6817,7 +6821,7 @@ yyreduce: break; case 597: -#line 1803 "harbour.y" +#line 1807 "harbour.y" { /* 10 */ long lLoopCount = hb_compLoopCount( HB_COMP_PARAM ); HB_COMP_PARAM->functions.pLast->funFlags &= ~ ( FUN_WITH_RETURN | FUN_BREAK_CODE ); @@ -6849,12 +6853,12 @@ yyreduce: break; case 601: -#line 1838 "harbour.y" +#line 1842 "harbour.y" { (yyval.lNumber) = 0; ;} break; case 602: -#line 1840 "harbour.y" +#line 1844 "harbour.y" { HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ) ); hb_compGenPCode1( HB_P_SEQBLOCK, HB_COMP_PARAM ); @@ -6863,12 +6867,12 @@ yyreduce: break; case 603: -#line 1847 "harbour.y" +#line 1851 "harbour.y" { (yyval.lNumber) = 0; ;} break; case 605: -#line 1852 "harbour.y" +#line 1856 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ ( FUN_WITH_RETURN | FUN_BREAK_CODE ); (yyval.lNumber) = HB_COMP_PARAM->functions.pLast->lPCodePos; @@ -6878,12 +6882,12 @@ yyreduce: break; case 606: -#line 1860 "harbour.y" +#line 1864 "harbour.y" { (yyval.lNumber) = 0; HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; ;} break; case 609: -#line 1866 "harbour.y" +#line 1870 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; (yyval.lNumber) = HB_COMP_PARAM->functions.pLast->lPCodePos; @@ -6895,7 +6899,7 @@ yyreduce: break; case 610: -#line 1877 "harbour.y" +#line 1881 "harbour.y" { HB_COMP_PARAM->functions.pLast->funFlags &= ~ FUN_BREAK_CODE; (yyval.lNumber) = HB_COMP_PARAM->functions.pLast->lPCodePos; @@ -6908,14 +6912,14 @@ yyreduce: break; case 613: -#line 1899 "harbour.y" +#line 1903 "harbour.y" { (yyval.asExpr) = hb_compExprNewFunCall( (yyvsp[(2) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 614: -#line 1903 "harbour.y" +#line 1907 "harbour.y" { hb_compAutoOpenAdd( HB_COMP_PARAM, (yyvsp[(1) - (2)].string) ); /* DOIDENT is the only one identifier which can be returned in lower letters */ @@ -6924,47 +6928,47 @@ yyreduce: break; case 615: -#line 1910 "harbour.y" +#line 1914 "harbour.y" { (yyval.asExpr) = NULL; ;} break; case 616: -#line 1911 "harbour.y" +#line 1915 "harbour.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 617: -#line 1914 "harbour.y" +#line 1918 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( hb_compExprNewArgList( hb_compExprNewNil( HB_COMP_PARAM ), HB_COMP_PARAM ), hb_compExprNewNil( HB_COMP_PARAM ) ); ;} break; case 618: -#line 1915 "harbour.y" +#line 1919 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( hb_compExprNewArgList( hb_compExprNewNil( HB_COMP_PARAM ), HB_COMP_PARAM ), (yyvsp[(2) - (2)].asExpr) ); ;} break; case 619: -#line 1916 "harbour.y" +#line 1920 "harbour.y" { (yyval.asExpr) = hb_compExprNewArgList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 620: -#line 1917 "harbour.y" +#line 1921 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (2)].asExpr), hb_compExprNewNil( HB_COMP_PARAM ) ); ;} break; case 621: -#line 1918 "harbour.y" +#line 1922 "harbour.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 622: -#line 1921 "harbour.y" +#line 1925 "harbour.y" { (yyval.asExpr) = hb_compExprNewVarRef( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 627: -#line 1929 "harbour.y" +#line 1933 "harbour.y" { hb_compLinePushIfInside( HB_COMP_PARAM ); HB_COMP_EXPR_DELETE( hb_compExprGenPush( (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ) ); @@ -6975,7 +6979,7 @@ yyreduce: break; case 628: -#line 1938 "harbour.y" +#line 1942 "harbour.y" { if( HB_COMP_PARAM->functions.pLast->wWithObjectCnt ) --HB_COMP_PARAM->functions.pLast->wWithObjectCnt; if( (yyvsp[(5) - (6)].lNumber) ) @@ -6990,13 +6994,13 @@ yyreduce: break; case 631: -#line 1955 "harbour.y" +#line 1959 "harbour.y" { HB_COMP_PARAM->fError = FALSE; ;} break; /* Line 1268 of yacc.c. */ -#line 7000 "harboury.c" +#line 7004 "harboury.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -7215,7 +7219,7 @@ yyreturn: } -#line 1959 "harbour.y" +#line 1963 "harbour.y" /* diff --git a/harbour/source/compiler/harbour.yyh b/harbour/source/compiler/harbour.yyh index b1e19d9627..9fcbd21316 100644 --- a/harbour/source/compiler/harbour.yyh +++ b/harbour/source/compiler/harbour.yyh @@ -266,7 +266,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 109 "harbour.y" +#line 113 "harbour.y" { char * string; /* to hold a string returned by lex */ int iNumber; /* to hold a temporary integer number */ diff --git a/harbour/source/macro/macro.y b/harbour/source/macro/macro.y index 408cffe3aa..0500c5c87a 100644 --- a/harbour/source/macro/macro.y +++ b/harbour/source/macro/macro.y @@ -95,6 +95,11 @@ #define NO_YYERROR +/* NOTE: these symbols are defined explicitly to pacify warnings */ +#define YYENABLE_NLS 0 +#define YYLTYPE_IS_TRIVIAL 0 + + /* yacc/lex related definitions */ diff --git a/harbour/source/macro/macro.yyc b/harbour/source/macro/macro.yyc index 35f4c140f0..b45bf5a73e 100644 --- a/harbour/source/macro/macro.yyc +++ b/harbour/source/macro/macro.yyc @@ -251,6 +251,11 @@ #define NO_YYERROR +/* NOTE: these symbols are defined explicitly to pacify warnings */ +#define YYENABLE_NLS 0 +#define YYLTYPE_IS_TRIVIAL 0 + + /* yacc/lex related definitions */ @@ -302,7 +307,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 130 "macro.y" +#line 135 "macro.y" { const char * string; /* to hold a string returned by lex */ int iNumber; /* to hold a temporary integer number */ @@ -336,7 +341,7 @@ typedef union YYSTYPE } valTimeStamp; } /* Line 187 of yacc.c. */ -#line 340 "macroy.c" +#line 345 "macroy.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -346,7 +351,7 @@ typedef union YYSTYPE /* Copy the second part of user declarations. */ -#line 163 "macro.y" +#line 168 "macro.y" /* This must be placed after the above union - the union is * typedef-ined to YYSTYPE @@ -360,7 +365,7 @@ static void hb_macroIdentNew( HB_COMP_DECL, char * ); /* Line 216 of yacc.c. */ -#line 364 "macroy.c" +#line 369 "macroy.c" #ifdef short # undef short @@ -733,29 +738,29 @@ static const yytype_int16 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 248, 248, 256, 264, 273, 274, 277, 280, 283, - 288, 293, 298, 299, 304, 309, 314, 319, 320, 323, - 324, 330, 333, 338, 341, 360, 365, 368, 375, 376, - 381, 382, 383, 384, 385, 388, 389, 392, 393, 394, - 395, 396, 397, 398, 407, 408, 409, 410, 411, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, 434, 439, 442, - 447, 457, 458, 461, 462, 465, 466, 467, 468, 469, - 472, 473, 478, 479, 480, 485, 489, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 521, 522, 525, 526, - 529, 529, 543, 544, 548, 549, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, - 566, 567, 568, 569, 570, 571, 572, 573, 579, 580, - 586, 589, 590, 593, 594, 595, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 618, 619, 622, 625, - 628, 631, 634, 637, 640, 641, 642, 643, 644, 645, - 648, 649, 650, 651, 652, 653, 656, 657, 660, 661, - 662, 663, 664, 665, 666, 667, 668, 671, 677, 678, - 679, 682, 683, 687, 686, 694, 695, 700, 701, 702, - 703, 706, 707, 710, 711, 714, 717, 721 + 0, 253, 253, 261, 269, 278, 279, 282, 285, 288, + 293, 298, 303, 304, 309, 314, 319, 324, 325, 328, + 329, 335, 338, 343, 346, 365, 370, 373, 380, 381, + 386, 387, 388, 389, 390, 393, 394, 397, 398, 399, + 400, 401, 402, 403, 412, 413, 414, 415, 416, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 444, 447, + 452, 462, 463, 466, 467, 470, 471, 472, 473, 474, + 477, 478, 483, 484, 485, 490, 494, 495, 496, 497, + 498, 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, 526, 527, 530, 531, + 534, 534, 548, 549, 553, 554, 557, 558, 559, 560, + 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, + 571, 572, 573, 574, 575, 576, 577, 578, 584, 585, + 591, 594, 595, 598, 599, 600, 603, 604, 605, 606, + 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 627, 630, + 633, 636, 639, 642, 645, 646, 647, 648, 649, 650, + 653, 654, 655, 656, 657, 658, 661, 662, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 676, 682, 683, + 684, 687, 688, 692, 691, 699, 700, 705, 706, 707, + 708, 711, 712, 715, 716, 719, 722, 726 }; #endif @@ -2094,7 +2099,7 @@ yyreduce: switch (yyn) { case 2: -#line 248 "macro.y" +#line 253 "macro.y" { HB_MACRO_DATA->exprType = hb_compExprType( (yyvsp[(1) - (1)].asExpr) ); if( HB_MACRO_DATA->Flags & HB_MACRO_GEN_PUSH ) @@ -2106,7 +2111,7 @@ yyreduce: break; case 3: -#line 256 "macro.y" +#line 261 "macro.y" { HB_MACRO_DATA->exprType = hb_compExprType( (yyvsp[(1) - (1)].asExpr) ); if( HB_MACRO_DATA->Flags & HB_MACRO_GEN_PUSH ) @@ -2118,7 +2123,7 @@ yyreduce: break; case 4: -#line 264 "macro.y" +#line 269 "macro.y" { HB_TRACE(HB_TR_DEBUG, ("macro -> invalid syntax: %s", HB_MACRO_DATA->string)); hb_macroError( EG_SYNTAX, HB_COMP_PARAM ); @@ -2127,104 +2132,104 @@ yyreduce: break; case 5: -#line 273 "macro.y" +#line 278 "macro.y" { (yyval.asExpr) = hb_compExprNewDouble( (yyvsp[(1) - (1)].valDouble).dNumber, (yyvsp[(1) - (1)].valDouble).bWidth, (yyvsp[(1) - (1)].valDouble).bDec, HB_COMP_PARAM ); ;} break; case 6: -#line 274 "macro.y" +#line 279 "macro.y" { (yyval.asExpr) = hb_compExprNewLong( (yyvsp[(1) - (1)].valLong).lNumber, HB_COMP_PARAM ); ;} break; case 7: -#line 277 "macro.y" +#line 282 "macro.y" { (yyval.asExpr) = hb_compExprNewDate( (yyvsp[(1) - (1)].valLong).lNumber, HB_COMP_PARAM ); ;} break; case 8: -#line 280 "macro.y" +#line 285 "macro.y" { (yyval.asExpr) = hb_compExprNewTimeStamp( (yyvsp[(1) - (1)].valTimeStamp).date, (yyvsp[(1) - (1)].valTimeStamp).time, HB_COMP_PARAM ); ;} break; case 9: -#line 283 "macro.y" +#line 288 "macro.y" { (yyval.asExpr) = hb_compExprNewLong( (yyvsp[(1) - (2)].valLong).lNumber, HB_COMP_PARAM ); ;} break; case 10: -#line 288 "macro.y" +#line 293 "macro.y" { (yyval.asExpr) = hb_compExprNewNil( HB_COMP_PARAM ); ;} break; case 11: -#line 293 "macro.y" +#line 298 "macro.y" { (yyval.asExpr) = hb_compExprNewString( (yyvsp[(1) - (1)].valChar).string, (yyvsp[(1) - (1)].valChar).length, FALSE, HB_COMP_PARAM ); ;} break; case 12: -#line 298 "macro.y" +#line 303 "macro.y" { (yyval.asExpr) = hb_compExprNewLogical( TRUE, HB_COMP_PARAM ); ;} break; case 13: -#line 299 "macro.y" +#line 304 "macro.y" { (yyval.asExpr) = hb_compExprNewLogical( FALSE, HB_COMP_PARAM ); ;} break; case 14: -#line 304 "macro.y" +#line 309 "macro.y" { (yyval.asExpr) = hb_compExprNewSelf( HB_COMP_PARAM ); ;} break; case 15: -#line 309 "macro.y" +#line 314 "macro.y" { (yyval.asExpr) = hb_compExprNewArray( (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 16: -#line 314 "macro.y" +#line 319 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 17: -#line 319 "macro.y" +#line 324 "macro.y" { (yyval.asExpr) = hb_compExprNewHash( NULL, HB_COMP_PARAM ); ;} break; case 18: -#line 320 "macro.y" +#line 325 "macro.y" { (yyval.asExpr) = hb_compExprNewHash( (yyvsp[(2) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 19: -#line 323 "macro.y" +#line 328 "macro.y" { (yyval.asExpr) = hb_compExprAddListExpr( hb_compExprNewList( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 20: -#line 324 "macro.y" +#line 329 "macro.y" { (yyval.asExpr) = hb_compExprAddListExpr( hb_compExprAddListExpr( (yyvsp[(1) - (5)].asExpr), (yyvsp[(3) - (5)].asExpr) ), (yyvsp[(5) - (5)].asExpr) ); ;} break; case 21: -#line 330 "macro.y" +#line 335 "macro.y" { (yyval.asExpr) = hb_compExprNewVar( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 22: -#line 333 "macro.y" +#line 338 "macro.y" { (yyval.asExpr) = hb_compExprNewAlias( (yyvsp[(1) - (2)].string), HB_COMP_PARAM ); ;} break; case 23: -#line 338 "macro.y" +#line 343 "macro.y" { (yyval.asExpr) = hb_compExprNewMacro( NULL, '&', (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); HB_MACRO_CHECK( (yyval.asExpr) ); ;} break; case 24: -#line 341 "macro.y" +#line 346 "macro.y" { BOOL fNewString; char * szVarName = hb_macroTextSymbol( (yyvsp[(1) - (1)].string), strlen( (yyvsp[(1) - (1)].string) ), &fNewString ); if( szVarName ) @@ -2245,226 +2250,226 @@ yyreduce: break; case 25: -#line 360 "macro.y" +#line 365 "macro.y" { hb_compExprMacroAsAlias( (yyvsp[(1) - (2)].asExpr) ); ;} break; case 26: -#line 365 "macro.y" +#line 370 "macro.y" { (yyval.asExpr) = hb_compExprNewMacro( (yyvsp[(2) - (2)].asExpr), 0, NULL, HB_COMP_PARAM ); ;} break; case 28: -#line 375 "macro.y" +#line 380 "macro.y" { (yyval.asExpr) = hb_compExprNewAlias( "FIELD", HB_COMP_PARAM ); ;} break; case 29: -#line 376 "macro.y" +#line 381 "macro.y" { (yyval.asExpr) = (yyvsp[(3) - (3)].asExpr); ;} break; case 30: -#line 381 "macro.y" +#line 386 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 31: -#line 382 "macro.y" +#line 387 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 32: -#line 383 "macro.y" +#line 388 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 33: -#line 384 "macro.y" +#line 389 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 34: -#line 385 "macro.y" +#line 390 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 35: -#line 388 "macro.y" +#line 393 "macro.y" { (yyval.asExpr) = hb_compExprNewVar( (yyvsp[(1) - (1)].string), HB_COMP_PARAM ); ;} break; case 37: -#line 392 "macro.y" - { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 38: -#line 393 "macro.y" - { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 39: -#line 394 "macro.y" - { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 40: -#line 395 "macro.y" - { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 41: -#line 396 "macro.y" - { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 42: #line 397 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; - case 43: + case 38: #line 398 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; + case 39: +#line 399 "macro.y" + { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 40: +#line 400 "macro.y" + { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 41: +#line 401 "macro.y" + { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 42: +#line 402 "macro.y" + { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 43: +#line 403 "macro.y" + { (yyval.asExpr) = hb_compExprNewAliasVar( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} + break; + case 44: -#line 407 "macro.y" +#line 412 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 45: -#line 408 "macro.y" +#line 413 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 46: -#line 409 "macro.y" +#line 414 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 47: -#line 410 "macro.y" +#line 415 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 48: -#line 411 "macro.y" +#line 416 "macro.y" { (yyval.asExpr) = hb_compExprNewAliasExpr( (yyvsp[(1) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 49: -#line 416 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 50: -#line 417 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 51: -#line 418 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 52: -#line 419 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 53: -#line 420 "macro.y" - { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} - break; - - case 54: #line 421 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 55: + case 50: #line 422 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 56: + case 51: #line 423 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 57: + case 52: #line 424 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 58: + case 53: #line 425 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 59: + case 54: #line 426 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 60: + case 55: #line 427 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 61: + case 56: #line 428 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 62: + case 57: #line 429 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 63: + case 58: #line 430 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 64: + case 59: #line 431 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 65: + case 60: #line 432 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 66: + case 61: #line 433 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 67: + case 62: #line 434 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; - case 68: + case 63: +#line 435 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 64: +#line 436 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 65: +#line 437 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 66: +#line 438 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 67: #line 439 "macro.y" + { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} + break; + + case 68: +#line 444 "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 442 "macro.y" +#line 447 "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 447 "macro.y" +#line 452 "macro.y" { if( hb_compExprParamListLen( (yyvsp[(4) - (5)].asExpr) ) != 0 ) { hb_macroError( EG_SYNTAX, HB_COMP_PARAM ); @@ -2476,97 +2481,97 @@ yyreduce: break; case 71: -#line 457 "macro.y" +#line 462 "macro.y" { (yyval.asExpr) = hb_compExprNewArgList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 72: -#line 458 "macro.y" +#line 463 "macro.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 75: -#line 465 "macro.y" +#line 470 "macro.y" { (yyval.asExpr) = hb_compExprNewVarRef( (yyvsp[(2) - (2)].string), HB_COMP_PARAM ); ;} break; case 76: -#line 466 "macro.y" +#line 471 "macro.y" { (yyval.asExpr) = hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 77: -#line 467 "macro.y" +#line 472 "macro.y" { (yyval.asExpr) = hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 78: -#line 468 "macro.y" +#line 473 "macro.y" { (yyval.asExpr) = hb_compExprNewRef( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 79: -#line 469 "macro.y" +#line 474 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); (yyval.asExpr)->value.asList.reference = TRUE; ;} break; case 80: -#line 472 "macro.y" +#line 477 "macro.y" { (yyval.asExpr) = hb_compExprNewArgRef( HB_COMP_PARAM ); ;} break; case 82: -#line 478 "macro.y" +#line 483 "macro.y" { (yyval.asExpr) = hb_macroExprNewSend( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].string), NULL, HB_COMP_PARAM ); ;} break; case 83: -#line 479 "macro.y" +#line 484 "macro.y" { (yyval.asExpr) = hb_macroExprNewSend( (yyvsp[(1) - (3)].asExpr), NULL, (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 84: -#line 480 "macro.y" +#line 485 "macro.y" { (yyval.asExpr) = hb_macroExprNewSend( (yyvsp[(1) - (3)].asExpr), NULL, (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 85: -#line 485 "macro.y" +#line 490 "macro.y" { (yyval.asExpr) = hb_compExprNewMethodCall( (yyvsp[(1) - (4)].asExpr), (yyvsp[(3) - (4)].asExpr) ); ;} break; case 108: -#line 511 "macro.y" +#line 516 "macro.y" { HB_MACRO_IFENABLED( (yyval.asExpr), (yyvsp[(1) - (1)].asExpr), HB_SM_HARBOUR ); ;} break; case 109: -#line 512 "macro.y" +#line 517 "macro.y" { HB_MACRO_IFENABLED( (yyval.asExpr), (yyvsp[(1) - (1)].asExpr), HB_SM_HARBOUR ); ;} break; case 110: -#line 513 "macro.y" +#line 518 "macro.y" { HB_MACRO_IFENABLED( (yyval.asExpr), (yyvsp[(1) - (1)].asExpr), HB_SM_HARBOUR ); ;} break; case 116: -#line 521 "macro.y" +#line 526 "macro.y" { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); HB_MACRO_CHECK( (yyval.asExpr) ); ;} break; case 117: -#line 522 "macro.y" +#line 527 "macro.y" { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); HB_MACRO_CHECK( (yyval.asExpr) ); ;} break; case 118: -#line 525 "macro.y" +#line 530 "macro.y" { (yyval.asExpr) = hb_compExprNewArgRef( HB_COMP_PARAM ); ;} break; case 120: -#line 529 "macro.y" +#line 534 "macro.y" { if( !(HB_MACRO_DATA->Flags & HB_MACRO_GEN_LIST) ) { @@ -2578,7 +2583,7 @@ yyreduce: break; case 121: -#line 537 "macro.y" +#line 542 "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) ); @@ -2586,374 +2591,374 @@ yyreduce: break; case 123: -#line 544 "macro.y" +#line 549 "macro.y" { HB_MACRO_DATA->uiListElements++; (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 124: -#line 548 "macro.y" +#line 553 "macro.y" { (yyval.asExpr) = hb_compExprNewEmpty( HB_COMP_PARAM ); ;} break; case 148: -#line 579 "macro.y" +#line 584 "macro.y" { (yyval.asExpr) = hb_compExprNewPostInc( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 149: -#line 580 "macro.y" +#line 585 "macro.y" { (yyval.asExpr) = hb_compExprNewPostDec( (yyvsp[(0) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 150: -#line 586 "macro.y" +#line 591 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 151: -#line 589 "macro.y" +#line 594 "macro.y" { (yyval.asExpr) = hb_compExprNewPreInc( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 152: -#line 590 "macro.y" +#line 595 "macro.y" { (yyval.asExpr) = hb_compExprNewPreDec( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 153: -#line 593 "macro.y" +#line 598 "macro.y" { (yyval.asExpr) = hb_compExprNewNot( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 154: -#line 594 "macro.y" +#line 599 "macro.y" { (yyval.asExpr) = hb_compExprNewNegate( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 155: -#line 595 "macro.y" +#line 600 "macro.y" { (yyval.asExpr) = (yyvsp[(2) - (2)].asExpr); ;} break; case 156: -#line 598 "macro.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 157: -#line 599 "macro.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 158: -#line 600 "macro.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 159: -#line 601 "macro.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 160: -#line 602 "macro.y" - { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} - break; - - case 161: #line 603 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 162: + case 157: #line 604 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 163: + case 158: #line 605 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 164: + case 159: #line 606 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 165: + case 160: #line 607 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 166: + case 161: #line 608 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 167: + case 162: #line 609 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 168: + case 163: #line 610 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 169: + case 164: #line 611 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 170: + case 165: #line 612 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 171: + case 166: #line 613 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 172: + case 167: #line 614 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 173: + case 168: #line 615 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 174: + case 169: #line 616 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 175: + case 170: #line 617 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 176: + case 171: #line 618 "macro.y" - { HB_MACRO_IFENABLED( (yyval.asExpr), hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ), HB_SM_HARBOUR ); ;} + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 177: + case 172: #line 619 "macro.y" { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; - case 178: + case 173: +#line 620 "macro.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 174: +#line 621 "macro.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 175: #line 622 "macro.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 176: +#line 623 "macro.y" + { HB_MACRO_IFENABLED( (yyval.asExpr), hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ), HB_SM_HARBOUR ); ;} + break; + + case 177: +#line 624 "macro.y" + { (yyval.asExpr) = hb_compExprAssign( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} + break; + + case 178: +#line 627 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 179: -#line 625 "macro.y" +#line 630 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinusEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 180: -#line 628 "macro.y" +#line 633 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMultEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 181: -#line 631 "macro.y" +#line 636 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDivEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 182: -#line 634 "macro.y" +#line 639 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewModEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 183: -#line 637 "macro.y" +#line 642 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewExpEq( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 190: -#line 648 "macro.y" +#line 653 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPlus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 191: -#line 649 "macro.y" +#line 654 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMinus( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 192: -#line 650 "macro.y" +#line 655 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMult( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 193: -#line 651 "macro.y" +#line 656 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewDiv( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 194: -#line 652 "macro.y" +#line 657 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewMod( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 195: -#line 653 "macro.y" +#line 658 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewPower( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 196: -#line 656 "macro.y" +#line 661 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewAnd( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 197: -#line 657 "macro.y" +#line 662 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewOr( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 198: -#line 660 "macro.y" +#line 665 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEQ( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 199: -#line 661 "macro.y" +#line 666 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 200: -#line 662 "macro.y" +#line 667 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGT( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 201: -#line 663 "macro.y" +#line 668 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewLE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 202: -#line 664 "macro.y" +#line 669 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewGE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 203: -#line 665 "macro.y" +#line 670 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewNE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 204: -#line 666 "macro.y" +#line 671 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewNE( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 205: -#line 667 "macro.y" +#line 672 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewIN( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 206: -#line 668 "macro.y" +#line 673 "macro.y" { (yyval.asExpr) = hb_compExprSetOperand( hb_compExprNewEqual( (yyvsp[(1) - (3)].asExpr), HB_COMP_PARAM ), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 208: -#line 677 "macro.y" +#line 682 "macro.y" { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(0) - (2)].asExpr), (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 209: -#line 678 "macro.y" +#line 683 "macro.y" { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr), HB_COMP_PARAM ); ;} break; case 210: -#line 679 "macro.y" +#line 684 "macro.y" { (yyval.asExpr) = hb_macroExprNewArrayAt( (yyvsp[(1) - (4)].asExpr), (yyvsp[(4) - (4)].asExpr), HB_COMP_PARAM ); ;} break; case 211: -#line 682 "macro.y" +#line 687 "macro.y" { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(1) - (1)].asExpr), HB_COMP_PARAM ); ;} break; case 212: -#line 683 "macro.y" +#line 688 "macro.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 213: -#line 687 "macro.y" +#line 692 "macro.y" { (yyval.asExpr) = hb_compExprNewCodeBlock( NULL, 0, 0, HB_COMP_PARAM ); ;} break; case 214: -#line 689 "macro.y" +#line 694 "macro.y" { (yyval.asExpr) = (yyvsp[(3) - (7)].asExpr); ;} break; case 215: -#line 694 "macro.y" +#line 699 "macro.y" { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-2) - (1)].asExpr), (yyvsp[(1) - (1)].asExpr) ); ;} break; case 216: -#line 695 "macro.y" +#line 700 "macro.y" { (yyval.asExpr) = hb_compExprAddCodeblockExpr( (yyvsp[(-2) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 217: -#line 700 "macro.y" +#line 705 "macro.y" { (yyval.asExpr) = NULL; ;} break; case 218: -#line 701 "macro.y" +#line 706 "macro.y" { (yyval.asExpr) = NULL; (yyvsp[(0) - (1)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} break; case 219: -#line 702 "macro.y" +#line 707 "macro.y" { (yyval.asExpr) = (yyvsp[(1) - (1)].asExpr); ;} break; case 220: -#line 703 "macro.y" +#line 708 "macro.y" { (yyval.asExpr) = (yyvsp[(1) - (3)].asExpr); (yyvsp[(0) - (3)].asExpr)->value.asCodeblock.flags |= HB_BLOCK_VPARAMS; ;} break; case 221: -#line 706 "macro.y" +#line 711 "macro.y" { (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (1)].asExpr), (yyvsp[(1) - (1)].string), ' ', HB_COMP_PARAM ); ;} break; case 222: -#line 707 "macro.y" +#line 712 "macro.y" { (yyval.asExpr) = hb_compExprCBVarAdd( (yyvsp[(0) - (3)].asExpr), (yyvsp[(3) - (3)].string), ' ', HB_COMP_PARAM ); HB_MACRO_CHECK( (yyval.asExpr) ); ;} break; case 223: -#line 710 "macro.y" +#line 715 "macro.y" { (yyval.asExpr) = hb_compExprNewList( (yyvsp[(2) - (2)].asExpr), HB_COMP_PARAM ); ;} break; case 224: -#line 711 "macro.y" +#line 716 "macro.y" { (yyval.asExpr) = hb_compExprAddListExpr( (yyvsp[(1) - (3)].asExpr), (yyvsp[(3) - (3)].asExpr) ); ;} break; case 227: -#line 722 "macro.y" +#line 727 "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 2957 "macroy.c" +#line 2962 "macroy.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -3172,7 +3177,7 @@ yyreturn: } -#line 725 "macro.y" +#line 730 "macro.y" diff --git a/harbour/source/macro/macro.yyh b/harbour/source/macro/macro.yyh index a0038b5f22..c1b7e5b274 100644 --- a/harbour/source/macro/macro.yyh +++ b/harbour/source/macro/macro.yyh @@ -124,7 +124,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 130 "macro.y" +#line 135 "macro.y" { const char * string; /* to hold a string returned by lex */ int iNumber; /* to hold a temporary integer number */