diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index d6ed41768d077d4e5c83bb6754d6ca6f6a2c0a49..57c95aaf964590613037dabda9cb3c59c70a5f48 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -945,41 +945,41 @@ static const yytype_uint16 yyrline[] = 325, 327, 333, 437, 332, 455, 462, 473, 472, 490, 497, 508, 507, 524, 541, 564, 563, 577, 578, 579, 580, 581, 585, 586, 592, 594, 620, 647, 687, 697, - 705, 715, 727, 739, 748, 754, 763, 781, 799, 808, - 820, 825, 833, 853, 876, 887, 895, 917, 940, 968, - 980, 994, 994, 996, 998, 1009, 1021, 1020, 1033, 1034, - 1038, 1049, 1062, 1066, 1077, 1080, 1093, 1096, 1106, 1130, - 1129, 1149, 1171, 1189, 1210, 1228, 1258, 1288, 1306, 1324, - 1350, 1367, 1386, 1385, 1408, 1426, 1465, 1471, 1477, 1484, - 1509, 1534, 1550, 1567, 1599, 1598, 1622, 1640, 1657, 1674, - 1673, 1699, 1704, 1709, 1714, 1719, 1742, 1748, 1759, 1760, - 1765, 1768, 1772, 1795, 1818, 1841, 1869, 1890, 1913, 1934, - 1956, 1976, 2088, 2107, 2145, 2254, 2263, 2269, 2284, 2312, - 2329, 2343, 2349, 2355, 2364, 2378, 2420, 2437, 2452, 2471, - 2483, 2507, 2511, 2518, 2524, 2529, 2535, 2539, 2543, 2553, - 2570, 2587, 2606, 2625, 2655, 2663, 2669, 2676, 2680, 2689, - 2697, 2705, 2714, 2713, 2727, 2726, 2740, 2739, 2753, 2752, - 2765, 2772, 2779, 2786, 2793, 2800, 2807, 2814, 2821, 2829, - 2828, 2841, 2840, 2853, 2852, 2865, 2864, 2877, 2876, 2889, - 2888, 2901, 2900, 2913, 2912, 2925, 2924, 2940, 2943, 2949, - 2958, 2978, 3001, 3005, 3009, 3013, 3017, 3021, 3040, 3053, - 3056, 3072, 3075, 3088, 3091, 3097, 3100, 3107, 3163, 3233, - 3238, 3305, 3341, 3384, 3409, 3436, 3480, 3503, 3526, 3529, - 3538, 3542, 3552, 3589, 3626, 3662, 3697, 3737, 3738, 3739, - 3740, 3741, 3742, 3743, 3744, 3745, 3752, 3753, 3754, 3755, - 3756, 3757, 3758, 3759, 3760, 3761, 3762, 3763, 3764, 3765, - 3766, 3767, 3768, 3769, 3770, 3771, 3772, 3773, 3774, 3775, - 3776, 3777, 3778, 3779, 3780, 3781, 3782, 3783, 3785, 3786, - 3787, 3788, 3789, 3790, 3791, 3792, 3793, 3794, 3795, 3796, - 3797, 3798, 3799, 3800, 3801, 3802, 3803, 3804, 3805, 3814, - 3815, 3816, 3817, 3818, 3819, 3820, 3824, 3843, 3861, 3876, - 3886, 3902, 3920, 3925, 3930, 3940, 3950, 3958, 3962, 3966, - 3970, 3974, 3981, 3985, 3989, 3993, 4000, 4005, 4012, 4017, - 4021, 4026, 4030, 4038, 4049, 4053, 4065, 4073, 4081, 4088, - 4099, 4119, 4123, 4127, 4131, 4135, 4145, 4155, 4165, 4185, - 4190, 4194, 4198, 4210, 4214, 4226, 4233, 4243, 4247, 4262, - 4267, 4274, 4278, 4291, 4299, 4310, 4314, 4322, 4330, 4338, - 4346, 4360, 4374, 4378 + 705, 718, 730, 742, 751, 757, 766, 784, 802, 811, + 823, 828, 836, 856, 879, 890, 898, 920, 943, 971, + 983, 997, 997, 999, 1001, 1012, 1024, 1023, 1036, 1037, + 1041, 1052, 1065, 1069, 1080, 1083, 1096, 1099, 1109, 1133, + 1132, 1152, 1174, 1192, 1213, 1231, 1261, 1291, 1309, 1327, + 1353, 1370, 1389, 1388, 1411, 1429, 1468, 1474, 1480, 1487, + 1512, 1537, 1553, 1570, 1602, 1601, 1625, 1643, 1660, 1677, + 1676, 1702, 1707, 1712, 1717, 1722, 1745, 1751, 1762, 1763, + 1768, 1771, 1775, 1798, 1821, 1844, 1872, 1893, 1916, 1937, + 1959, 1979, 2091, 2110, 2148, 2257, 2266, 2272, 2287, 2315, + 2332, 2346, 2352, 2358, 2367, 2381, 2423, 2440, 2455, 2474, + 2486, 2510, 2514, 2521, 2527, 2532, 2538, 2542, 2546, 2556, + 2573, 2590, 2609, 2628, 2658, 2666, 2672, 2679, 2683, 2692, + 2700, 2708, 2717, 2716, 2730, 2729, 2743, 2742, 2756, 2755, + 2768, 2775, 2782, 2789, 2796, 2803, 2810, 2817, 2824, 2832, + 2831, 2844, 2843, 2856, 2855, 2868, 2867, 2880, 2879, 2892, + 2891, 2904, 2903, 2916, 2915, 2928, 2927, 2943, 2946, 2952, + 2961, 2981, 3004, 3008, 3012, 3016, 3020, 3024, 3043, 3056, + 3059, 3075, 3078, 3091, 3094, 3100, 3103, 3110, 3166, 3236, + 3241, 3308, 3344, 3387, 3412, 3439, 3483, 3506, 3529, 3532, + 3541, 3545, 3555, 3592, 3629, 3665, 3700, 3740, 3741, 3742, + 3743, 3744, 3745, 3746, 3747, 3748, 3755, 3756, 3757, 3758, + 3759, 3760, 3761, 3762, 3763, 3764, 3765, 3766, 3767, 3768, + 3769, 3770, 3771, 3772, 3773, 3774, 3775, 3776, 3777, 3778, + 3779, 3780, 3781, 3782, 3783, 3784, 3785, 3786, 3788, 3789, + 3790, 3791, 3792, 3793, 3794, 3795, 3796, 3797, 3798, 3799, + 3800, 3801, 3802, 3803, 3804, 3805, 3806, 3807, 3808, 3817, + 3818, 3819, 3820, 3821, 3822, 3823, 3827, 3846, 3864, 3879, + 3889, 3905, 3923, 3928, 3933, 3943, 3953, 3961, 3965, 3969, + 3973, 3977, 3984, 3988, 3992, 3996, 4003, 4008, 4015, 4020, + 4024, 4029, 4033, 4041, 4052, 4056, 4068, 4076, 4084, 4091, + 4102, 4122, 4126, 4130, 4134, 4138, 4148, 4158, 4168, 4188, + 4193, 4197, 4201, 4213, 4217, 4229, 4236, 4246, 4250, 4265, + 4270, 4277, 4281, 4294, 4302, 4313, 4317, 4325, 4333, 4341, + 4349, 4363, 4377, 4381 }; #endif @@ -4727,10 +4727,13 @@ yyreduce: #line 706 "Gmsh.y" { // remove from the list - for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++) - gmsh_yysymbols[(yyvsp[(1) - (6)].c)].erase(std::find(gmsh_yysymbols[(yyvsp[(1) - (6)].c)].begin(), - gmsh_yysymbols[(yyvsp[(1) - (6)].c)].end(), - *(double*)List_Pointer((yyvsp[(5) - (6)].l), i))); + for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++){ + double d = *(double*)List_Pointer((yyvsp[(5) - (6)].l), i); + std::vector<double>::iterator it = std::find + (gmsh_yysymbols[(yyvsp[(1) - (6)].c)].begin(), gmsh_yysymbols[(yyvsp[(1) - (6)].c)].end(), d); + if(it != gmsh_yysymbols[(yyvsp[(1) - (6)].c)].end()) + gmsh_yysymbols[(yyvsp[(1) - (6)].c)].erase(it); + } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(5) - (6)].l)); ;} @@ -4739,7 +4742,7 @@ yyreduce: case 71: /* Line 1464 of yacc.c */ -#line 716 "Gmsh.y" +#line 719 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); @@ -4756,7 +4759,7 @@ yyreduce: case 72: /* Line 1464 of yacc.c */ -#line 728 "Gmsh.y" +#line 731 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (6)].c)); @@ -4773,7 +4776,7 @@ yyreduce: case 73: /* Line 1464 of yacc.c */ -#line 740 "Gmsh.y" +#line 743 "Gmsh.y" { gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::string((yyvsp[(3) - (4)].c)); Free((yyvsp[(1) - (4)].c)); @@ -4784,7 +4787,7 @@ yyreduce: case 74: /* Line 1464 of yacc.c */ -#line 749 "Gmsh.y" +#line 752 "Gmsh.y" { std::string tmp((yyvsp[(5) - (6)].c)); StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), tmp); @@ -4795,7 +4798,7 @@ yyreduce: case 75: /* Line 1464 of yacc.c */ -#line 755 "Gmsh.y" +#line 758 "Gmsh.y" { std::string tmp((yyvsp[(8) - (9)].c)); StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), tmp); @@ -4806,7 +4809,7 @@ yyreduce: case 76: /* Line 1464 of yacc.c */ -#line 764 "Gmsh.y" +#line 767 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d)){ @@ -4829,7 +4832,7 @@ yyreduce: case 77: /* Line 1464 of yacc.c */ -#line 782 "Gmsh.y" +#line 785 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d)){ @@ -4852,7 +4855,7 @@ yyreduce: case 78: /* Line 1464 of yacc.c */ -#line 800 "Gmsh.y" +#line 803 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d)){ @@ -4866,7 +4869,7 @@ yyreduce: case 79: /* Line 1464 of yacc.c */ -#line 809 "Gmsh.y" +#line 812 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d)){ @@ -4880,7 +4883,7 @@ yyreduce: case 80: /* Line 1464 of yacc.c */ -#line 821 "Gmsh.y" +#line 824 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), 0, (yyvsp[(5) - (8)].c), (yyvsp[(7) - (8)].u)); Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(5) - (8)].c)); @@ -4890,7 +4893,7 @@ yyreduce: case 81: /* Line 1464 of yacc.c */ -#line 826 "Gmsh.y" +#line 829 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (11)].c), (int)(yyvsp[(3) - (11)].d), (yyvsp[(8) - (11)].c), (yyvsp[(10) - (11)].u)); Free((yyvsp[(1) - (11)].c)); Free((yyvsp[(8) - (11)].c)); @@ -4900,7 +4903,7 @@ yyreduce: case 82: /* Line 1464 of yacc.c */ -#line 834 "Gmsh.y" +#line 837 "Gmsh.y" { GmshColorTable *ct = GetColorTable(0); if(!ct) @@ -4925,7 +4928,7 @@ yyreduce: case 83: /* Line 1464 of yacc.c */ -#line 854 "Gmsh.y" +#line 857 "Gmsh.y" { GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (9)].d)); if(!ct) @@ -4950,7 +4953,7 @@ yyreduce: case 84: /* Line 1464 of yacc.c */ -#line 877 "Gmsh.y" +#line 880 "Gmsh.y" { #if defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (5)].c),"Background")) @@ -4966,7 +4969,7 @@ yyreduce: case 85: /* Line 1464 of yacc.c */ -#line 888 "Gmsh.y" +#line 891 "Gmsh.y" { #if defined(HAVE_MESH) if(!GModel::current()->getFields()->newField((int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c))) @@ -4979,7 +4982,7 @@ yyreduce: case 86: /* Line 1464 of yacc.c */ -#line 896 "Gmsh.y" +#line 899 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); @@ -5006,7 +5009,7 @@ yyreduce: case 87: /* Line 1464 of yacc.c */ -#line 918 "Gmsh.y" +#line 921 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); @@ -5034,7 +5037,7 @@ yyreduce: case 88: /* Line 1464 of yacc.c */ -#line 941 "Gmsh.y" +#line 944 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (11)].d)); @@ -5064,7 +5067,7 @@ yyreduce: case 89: /* Line 1464 of yacc.c */ -#line 969 "Gmsh.y" +#line 972 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -5081,7 +5084,7 @@ yyreduce: case 90: /* Line 1464 of yacc.c */ -#line 981 "Gmsh.y" +#line 984 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -5098,7 +5101,7 @@ yyreduce: case 94: /* Line 1464 of yacc.c */ -#line 999 "Gmsh.y" +#line 1002 "Gmsh.y" { std::string key((yyvsp[(3) - (3)].c)); std::vector<double> val(1, 0.); @@ -5114,7 +5117,7 @@ yyreduce: case 95: /* Line 1464 of yacc.c */ -#line 1010 "Gmsh.y" +#line 1013 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)); std::vector<double> val(1, (yyvsp[(5) - (5)].d)); @@ -5130,14 +5133,14 @@ yyreduce: case 96: /* Line 1464 of yacc.c */ -#line 1021 "Gmsh.y" +#line 1024 "Gmsh.y" { floatOptions.clear(); charOptions.clear(); ;} break; case 97: /* Line 1464 of yacc.c */ -#line 1023 "Gmsh.y" +#line 1026 "Gmsh.y" { std::string key((yyvsp[(3) - (9)].c)); std::vector<double> val(1, (yyvsp[(6) - (9)].d)); @@ -5151,7 +5154,7 @@ yyreduce: case 100: /* Line 1464 of yacc.c */ -#line 1039 "Gmsh.y" +#line 1042 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ @@ -5167,7 +5170,7 @@ yyreduce: case 101: /* Line 1464 of yacc.c */ -#line 1050 "Gmsh.y" +#line 1053 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); std::string val((yyvsp[(3) - (3)].c)); @@ -5180,7 +5183,7 @@ yyreduce: case 102: /* Line 1464 of yacc.c */ -#line 1063 "Gmsh.y" +#line 1066 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} @@ -5189,7 +5192,7 @@ yyreduce: case 103: /* Line 1464 of yacc.c */ -#line 1067 "Gmsh.y" +#line 1070 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName (std::string((yyvsp[(1) - (1)].c)), curPhysDim, @@ -5201,7 +5204,7 @@ yyreduce: case 104: /* Line 1464 of yacc.c */ -#line 1077 "Gmsh.y" +#line 1080 "Gmsh.y" { (yyval.l) = 0; ;} @@ -5210,7 +5213,7 @@ yyreduce: case 105: /* Line 1464 of yacc.c */ -#line 1081 "Gmsh.y" +#line 1084 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(Vertex*)); Vertex *v = FindPoint((int)(yyvsp[(4) - (5)].d)); @@ -5225,7 +5228,7 @@ yyreduce: case 106: /* Line 1464 of yacc.c */ -#line 1093 "Gmsh.y" +#line 1096 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = 0.; ;} @@ -5234,7 +5237,7 @@ yyreduce: case 107: /* Line 1464 of yacc.c */ -#line 1097 "Gmsh.y" +#line 1100 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} @@ -5243,7 +5246,7 @@ yyreduce: case 108: /* Line 1464 of yacc.c */ -#line 1107 "Gmsh.y" +#line 1110 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindPoint(num)){ @@ -5271,7 +5274,7 @@ yyreduce: case 109: /* Line 1464 of yacc.c */ -#line 1130 "Gmsh.y" +#line 1133 "Gmsh.y" { curPhysDim = 0; ;} @@ -5280,7 +5283,7 @@ yyreduce: case 110: /* Line 1464 of yacc.c */ -#line 1134 "Gmsh.y" +#line 1137 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_POINT)){ @@ -5301,7 +5304,7 @@ yyreduce: case 111: /* Line 1464 of yacc.c */ -#line 1150 "Gmsh.y" +#line 1153 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -5325,7 +5328,7 @@ yyreduce: case 112: /* Line 1464 of yacc.c */ -#line 1172 "Gmsh.y" +#line 1175 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5348,7 +5351,7 @@ yyreduce: case 113: /* Line 1464 of yacc.c */ -#line 1190 "Gmsh.y" +#line 1193 "Gmsh.y" { for (int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double dnum; @@ -5374,7 +5377,7 @@ yyreduce: case 114: /* Line 1464 of yacc.c */ -#line 1211 "Gmsh.y" +#line 1214 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5397,7 +5400,7 @@ yyreduce: case 115: /* Line 1464 of yacc.c */ -#line 1229 "Gmsh.y" +#line 1232 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); if(FindCurve(num)){ @@ -5432,7 +5435,7 @@ yyreduce: case 116: /* Line 1464 of yacc.c */ -#line 1259 "Gmsh.y" +#line 1262 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); if(FindCurve(num)){ @@ -5467,7 +5470,7 @@ yyreduce: case 117: /* Line 1464 of yacc.c */ -#line 1289 "Gmsh.y" +#line 1292 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5490,7 +5493,7 @@ yyreduce: case 118: /* Line 1464 of yacc.c */ -#line 1307 "Gmsh.y" +#line 1310 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5513,7 +5516,7 @@ yyreduce: case 119: /* Line 1464 of yacc.c */ -#line 1325 "Gmsh.y" +#line 1328 "Gmsh.y" { int num = (int)(yyvsp[(3) - (11)].d); if(List_Nbr((yyvsp[(6) - (11)].l)) + (int)(yyvsp[(10) - (11)].d) + 1 != List_Nbr((yyvsp[(8) - (11)].l))){ @@ -5544,7 +5547,7 @@ yyreduce: case 120: /* Line 1464 of yacc.c */ -#line 1351 "Gmsh.y" +#line 1354 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindEdgeLoop(num)){ @@ -5566,7 +5569,7 @@ yyreduce: case 121: /* Line 1464 of yacc.c */ -#line 1368 "Gmsh.y" +#line 1371 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindCurve(num)){ @@ -5589,7 +5592,7 @@ yyreduce: case 122: /* Line 1464 of yacc.c */ -#line 1386 "Gmsh.y" +#line 1389 "Gmsh.y" { curPhysDim = 1; ;} @@ -5598,7 +5601,7 @@ yyreduce: case 123: /* Line 1464 of yacc.c */ -#line 1390 "Gmsh.y" +#line 1393 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_LINE)){ @@ -5619,7 +5622,7 @@ yyreduce: case 124: /* Line 1464 of yacc.c */ -#line 1409 "Gmsh.y" +#line 1412 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -5642,7 +5645,7 @@ yyreduce: case 125: /* Line 1464 of yacc.c */ -#line 1427 "Gmsh.y" +#line 1430 "Gmsh.y" { int num = (int)(yyvsp[(4) - (9)].d), type = 0; if(FindSurface(num)){ @@ -5686,7 +5689,7 @@ yyreduce: case 126: /* Line 1464 of yacc.c */ -#line 1466 "Gmsh.y" +#line 1469 "Gmsh.y" { myGmshSurface = 0; (yyval.s).Type = 0; @@ -5697,7 +5700,7 @@ yyreduce: case 127: /* Line 1464 of yacc.c */ -#line 1472 "Gmsh.y" +#line 1475 "Gmsh.y" { myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); (yyval.s).Type = 0; @@ -5708,7 +5711,7 @@ yyreduce: case 128: /* Line 1464 of yacc.c */ -#line 1478 "Gmsh.y" +#line 1481 "Gmsh.y" { int num = (int)(yyvsp[(4) - (10)].d); myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c)); @@ -5720,7 +5723,7 @@ yyreduce: case 129: /* Line 1464 of yacc.c */ -#line 1485 "Gmsh.y" +#line 1488 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5750,7 +5753,7 @@ yyreduce: case 130: /* Line 1464 of yacc.c */ -#line 1510 "Gmsh.y" +#line 1513 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5780,7 +5783,7 @@ yyreduce: case 131: /* Line 1464 of yacc.c */ -#line 1535 "Gmsh.y" +#line 1538 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurfaceLoop(num)){ @@ -5801,7 +5804,7 @@ yyreduce: case 132: /* Line 1464 of yacc.c */ -#line 1551 "Gmsh.y" +#line 1554 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -5823,7 +5826,7 @@ yyreduce: case 133: /* Line 1464 of yacc.c */ -#line 1569 "Gmsh.y" +#line 1572 "Gmsh.y" { int num = (int)(yyvsp[(4) - (12)].d); if(FindSurface(num)){ @@ -5858,7 +5861,7 @@ yyreduce: case 134: /* Line 1464 of yacc.c */ -#line 1599 "Gmsh.y" +#line 1602 "Gmsh.y" { curPhysDim = 2; ;} @@ -5867,7 +5870,7 @@ yyreduce: case 135: /* Line 1464 of yacc.c */ -#line 1603 "Gmsh.y" +#line 1606 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_SURFACE)){ @@ -5888,7 +5891,7 @@ yyreduce: case 136: /* Line 1464 of yacc.c */ -#line 1623 "Gmsh.y" +#line 1626 "Gmsh.y" { yymsg(0, "'Complex Volume' command is deprecated: use 'Volume' instead"); int num = (int)(yyvsp[(4) - (8)].d); @@ -5911,7 +5914,7 @@ yyreduce: case 137: /* Line 1464 of yacc.c */ -#line 1641 "Gmsh.y" +#line 1644 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindVolume(num)){ @@ -5933,7 +5936,7 @@ yyreduce: case 138: /* Line 1464 of yacc.c */ -#line 1658 "Gmsh.y" +#line 1661 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindVolume(num)){ @@ -5954,7 +5957,7 @@ yyreduce: case 139: /* Line 1464 of yacc.c */ -#line 1674 "Gmsh.y" +#line 1677 "Gmsh.y" { curPhysDim = 3; ;} @@ -5963,7 +5966,7 @@ yyreduce: case 140: /* Line 1464 of yacc.c */ -#line 1678 "Gmsh.y" +#line 1681 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_VOLUME)){ @@ -5984,7 +5987,7 @@ yyreduce: case 141: /* Line 1464 of yacc.c */ -#line 1700 "Gmsh.y" +#line 1703 "Gmsh.y" { TranslateShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -5994,7 +5997,7 @@ yyreduce: case 142: /* Line 1464 of yacc.c */ -#line 1705 "Gmsh.y" +#line 1708 "Gmsh.y" { RotateShapes((yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d), (yyvsp[(10) - (11)].l)); (yyval.l) = (yyvsp[(10) - (11)].l); @@ -6004,7 +6007,7 @@ yyreduce: case 143: /* Line 1464 of yacc.c */ -#line 1710 "Gmsh.y" +#line 1713 "Gmsh.y" { SymmetryShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(2) - (5)].v)[3], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -6014,7 +6017,7 @@ yyreduce: case 144: /* Line 1464 of yacc.c */ -#line 1715 "Gmsh.y" +#line 1718 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); @@ -6024,7 +6027,7 @@ yyreduce: case 145: /* Line 1464 of yacc.c */ -#line 1720 "Gmsh.y" +#line 1723 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); if(!strcmp((yyvsp[(1) - (4)].c), "Duplicata")){ @@ -6052,7 +6055,7 @@ yyreduce: case 146: /* Line 1464 of yacc.c */ -#line 1743 "Gmsh.y" +#line 1746 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); IntersectCurvesWithSurface((yyvsp[(4) - (9)].l), (int)(yyvsp[(8) - (9)].d), (yyval.l)); @@ -6063,7 +6066,7 @@ yyreduce: case 147: /* Line 1464 of yacc.c */ -#line 1749 "Gmsh.y" +#line 1752 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape*)); List_T *tmp = ListOfDouble2ListOfInt((yyvsp[(7) - (9)].l)); @@ -6076,21 +6079,21 @@ yyreduce: case 148: /* Line 1464 of yacc.c */ -#line 1759 "Gmsh.y" +#line 1762 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 149: /* Line 1464 of yacc.c */ -#line 1760 "Gmsh.y" +#line 1763 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 150: /* Line 1464 of yacc.c */ -#line 1765 "Gmsh.y" +#line 1768 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); ;} @@ -6099,7 +6102,7 @@ yyreduce: case 151: /* Line 1464 of yacc.c */ -#line 1769 "Gmsh.y" +#line 1772 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); ;} @@ -6108,7 +6111,7 @@ yyreduce: case 152: /* Line 1464 of yacc.c */ -#line 1773 "Gmsh.y" +#line 1776 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6136,7 +6139,7 @@ yyreduce: case 153: /* Line 1464 of yacc.c */ -#line 1796 "Gmsh.y" +#line 1799 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6164,7 +6167,7 @@ yyreduce: case 154: /* Line 1464 of yacc.c */ -#line 1819 "Gmsh.y" +#line 1822 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6192,7 +6195,7 @@ yyreduce: case 155: /* Line 1464 of yacc.c */ -#line 1842 "Gmsh.y" +#line 1845 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6220,7 +6223,7 @@ yyreduce: case 156: /* Line 1464 of yacc.c */ -#line 1870 "Gmsh.y" +#line 1873 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){ @@ -6246,7 +6249,7 @@ yyreduce: case 157: /* Line 1464 of yacc.c */ -#line 1891 "Gmsh.y" +#line 1894 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) int t = (int)(yyvsp[(4) - (10)].d); @@ -6274,7 +6277,7 @@ yyreduce: case 158: /* Line 1464 of yacc.c */ -#line 1915 "Gmsh.y" +#line 1918 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(12) - (14)].l)) == 0){ @@ -6299,7 +6302,7 @@ yyreduce: case 159: /* Line 1464 of yacc.c */ -#line 1936 "Gmsh.y" +#line 1939 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(14) - (16)].l)) == 0){ @@ -6325,7 +6328,7 @@ yyreduce: case 160: /* Line 1464 of yacc.c */ -#line 1957 "Gmsh.y" +#line 1960 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){ @@ -6350,7 +6353,7 @@ yyreduce: case 161: /* Line 1464 of yacc.c */ -#line 1977 "Gmsh.y" +#line 1980 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "Union")){ @@ -6467,7 +6470,7 @@ yyreduce: case 162: /* Line 1464 of yacc.c */ -#line 2089 "Gmsh.y" +#line 2092 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){ @@ -6491,7 +6494,7 @@ yyreduce: case 163: /* Line 1464 of yacc.c */ -#line 2108 "Gmsh.y" +#line 2111 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){ @@ -6534,7 +6537,7 @@ yyreduce: case 164: /* Line 1464 of yacc.c */ -#line 2147 "Gmsh.y" +#line 2150 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (14)].c), "Cylinder") && List_Nbr((yyvsp[(12) - (14)].l)) == 1){ @@ -6642,7 +6645,7 @@ yyreduce: case 165: /* Line 1464 of yacc.c */ -#line 2255 "Gmsh.y" +#line 2258 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6656,7 +6659,7 @@ yyreduce: case 166: /* Line 1464 of yacc.c */ -#line 2264 "Gmsh.y" +#line 2267 "Gmsh.y" { #if defined(HAVE_MESH) GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); @@ -6667,7 +6670,7 @@ yyreduce: case 167: /* Line 1464 of yacc.c */ -#line 2270 "Gmsh.y" +#line 2273 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -6687,7 +6690,7 @@ yyreduce: case 168: /* Line 1464 of yacc.c */ -#line 2285 "Gmsh.y" +#line 2288 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ ClearProject(); @@ -6720,7 +6723,7 @@ yyreduce: case 169: /* Line 1464 of yacc.c */ -#line 2313 "Gmsh.y" +#line 2316 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ @@ -6737,7 +6740,7 @@ yyreduce: case 170: /* Line 1464 of yacc.c */ -#line 2330 "Gmsh.y" +#line 2333 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -6751,7 +6754,7 @@ yyreduce: case 171: /* Line 1464 of yacc.c */ -#line 2344 "Gmsh.y" +#line 2347 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 1); @@ -6762,7 +6765,7 @@ yyreduce: case 172: /* Line 1464 of yacc.c */ -#line 2350 "Gmsh.y" +#line 2353 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 0); @@ -6773,7 +6776,7 @@ yyreduce: case 173: /* Line 1464 of yacc.c */ -#line 2356 "Gmsh.y" +#line 2359 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6787,7 +6790,7 @@ yyreduce: case 174: /* Line 1464 of yacc.c */ -#line 2365 "Gmsh.y" +#line 2368 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6801,7 +6804,7 @@ yyreduce: case 175: /* Line 1464 of yacc.c */ -#line 2379 "Gmsh.y" +#line 2382 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); @@ -6848,7 +6851,7 @@ yyreduce: case 176: /* Line 1464 of yacc.c */ -#line 2421 "Gmsh.y" +#line 2424 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ @@ -6870,7 +6873,7 @@ yyreduce: case 177: /* Line 1464 of yacc.c */ -#line 2438 "Gmsh.y" +#line 2441 "Gmsh.y" { #if defined(HAVE_POST) && defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ @@ -6890,7 +6893,7 @@ yyreduce: case 178: /* Line 1464 of yacc.c */ -#line 2453 "Gmsh.y" +#line 2456 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ SleepInSeconds((yyvsp[(2) - (3)].d)); @@ -6914,7 +6917,7 @@ yyreduce: case 179: /* Line 1464 of yacc.c */ -#line 2472 "Gmsh.y" +#line 2475 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -6931,7 +6934,7 @@ yyreduce: case 180: /* Line 1464 of yacc.c */ -#line 2484 "Gmsh.y" +#line 2487 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) @@ -6960,7 +6963,7 @@ yyreduce: case 181: /* Line 1464 of yacc.c */ -#line 2508 "Gmsh.y" +#line 2511 "Gmsh.y" { exit(0); ;} @@ -6969,7 +6972,7 @@ yyreduce: case 182: /* Line 1464 of yacc.c */ -#line 2512 "Gmsh.y" +#line 2515 "Gmsh.y" { // FIXME: this is a hack to force a transfer from the old DB to // the new DB. This will become unnecessary if/when we fill the @@ -6981,7 +6984,7 @@ yyreduce: case 183: /* Line 1464 of yacc.c */ -#line 2519 "Gmsh.y" +#line 2522 "Gmsh.y" { CTX::instance()->forcedBBox = 0; GModel::current()->importGEOInternals(); @@ -6992,7 +6995,7 @@ yyreduce: case 184: /* Line 1464 of yacc.c */ -#line 2525 "Gmsh.y" +#line 2528 "Gmsh.y" { CTX::instance()->forcedBBox = 1; SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); @@ -7002,7 +7005,7 @@ yyreduce: case 185: /* Line 1464 of yacc.c */ -#line 2530 "Gmsh.y" +#line 2533 "Gmsh.y" { #if defined(HAVE_OPENGL) drawContext::global()->draw(); @@ -7013,7 +7016,7 @@ yyreduce: case 186: /* Line 1464 of yacc.c */ -#line 2536 "Gmsh.y" +#line 2539 "Gmsh.y" { GModel::current()->createTopologyFromMesh(); ;} @@ -7022,7 +7025,7 @@ yyreduce: case 187: /* Line 1464 of yacc.c */ -#line 2540 "Gmsh.y" +#line 2543 "Gmsh.y" { GModel::current()->createTopologyFromMesh(1); ;} @@ -7031,7 +7034,7 @@ yyreduce: case 188: /* Line 1464 of yacc.c */ -#line 2544 "Gmsh.y" +#line 2547 "Gmsh.y" { GModel::current()->importGEOInternals(); GModel::current()->refineMesh(CTX::instance()->mesh.secondOrderLinear); @@ -7041,7 +7044,7 @@ yyreduce: case 189: /* Line 1464 of yacc.c */ -#line 2554 "Gmsh.y" +#line 2557 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); @@ -7063,7 +7066,7 @@ yyreduce: case 190: /* Line 1464 of yacc.c */ -#line 2571 "Gmsh.y" +#line 2574 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); @@ -7085,7 +7088,7 @@ yyreduce: case 191: /* Line 1464 of yacc.c */ -#line 2588 "Gmsh.y" +#line 2591 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); @@ -7109,7 +7112,7 @@ yyreduce: case 192: /* Line 1464 of yacc.c */ -#line 2607 "Gmsh.y" +#line 2610 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); @@ -7133,7 +7136,7 @@ yyreduce: case 193: /* Line 1464 of yacc.c */ -#line 2626 "Gmsh.y" +#line 2629 "Gmsh.y" { if(ImbricatedLoop <= 0){ yymsg(0, "Invalid For/EndFor loop"); @@ -7168,7 +7171,7 @@ yyreduce: case 194: /* Line 1464 of yacc.c */ -#line 2656 "Gmsh.y" +#line 2659 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction ((yyvsp[(2) - (2)].c), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -7181,7 +7184,7 @@ yyreduce: case 195: /* Line 1464 of yacc.c */ -#line 2664 "Gmsh.y" +#line 2667 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -7192,7 +7195,7 @@ yyreduce: case 196: /* Line 1464 of yacc.c */ -#line 2670 "Gmsh.y" +#line 2673 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction ((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -7204,7 +7207,7 @@ yyreduce: case 197: /* Line 1464 of yacc.c */ -#line 2677 "Gmsh.y" +#line 2680 "Gmsh.y" { if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); ;} @@ -7213,7 +7216,7 @@ yyreduce: case 198: /* Line 1464 of yacc.c */ -#line 2681 "Gmsh.y" +#line 2684 "Gmsh.y" { ;} break; @@ -7221,7 +7224,7 @@ yyreduce: case 199: /* Line 1464 of yacc.c */ -#line 2690 "Gmsh.y" +#line 2693 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l), @@ -7234,7 +7237,7 @@ yyreduce: case 200: /* Line 1464 of yacc.c */ -#line 2698 "Gmsh.y" +#line 2701 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l), @@ -7247,7 +7250,7 @@ yyreduce: case 201: /* Line 1464 of yacc.c */ -#line 2706 "Gmsh.y" +#line 2709 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), @@ -7260,7 +7263,7 @@ yyreduce: case 202: /* Line 1464 of yacc.c */ -#line 2714 "Gmsh.y" +#line 2717 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7270,7 +7273,7 @@ yyreduce: case 203: /* Line 1464 of yacc.c */ -#line 2719 "Gmsh.y" +#line 2722 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), @@ -7283,7 +7286,7 @@ yyreduce: case 204: /* Line 1464 of yacc.c */ -#line 2727 "Gmsh.y" +#line 2730 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7293,7 +7296,7 @@ yyreduce: case 205: /* Line 1464 of yacc.c */ -#line 2732 "Gmsh.y" +#line 2735 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), @@ -7306,7 +7309,7 @@ yyreduce: case 206: /* Line 1464 of yacc.c */ -#line 2740 "Gmsh.y" +#line 2743 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7316,7 +7319,7 @@ yyreduce: case 207: /* Line 1464 of yacc.c */ -#line 2745 "Gmsh.y" +#line 2748 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), @@ -7329,7 +7332,7 @@ yyreduce: case 208: /* Line 1464 of yacc.c */ -#line 2753 "Gmsh.y" +#line 2756 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7339,7 +7342,7 @@ yyreduce: case 209: /* Line 1464 of yacc.c */ -#line 2758 "Gmsh.y" +#line 2761 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., @@ -7351,7 +7354,7 @@ yyreduce: case 210: /* Line 1464 of yacc.c */ -#line 2766 "Gmsh.y" +#line 2769 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), @@ -7363,7 +7366,7 @@ yyreduce: case 211: /* Line 1464 of yacc.c */ -#line 2773 "Gmsh.y" +#line 2776 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), @@ -7375,7 +7378,7 @@ yyreduce: case 212: /* Line 1464 of yacc.c */ -#line 2780 "Gmsh.y" +#line 2783 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), @@ -7387,7 +7390,7 @@ yyreduce: case 213: /* Line 1464 of yacc.c */ -#line 2787 "Gmsh.y" +#line 2790 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -7399,7 +7402,7 @@ yyreduce: case 214: /* Line 1464 of yacc.c */ -#line 2794 "Gmsh.y" +#line 2797 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -7411,7 +7414,7 @@ yyreduce: case 215: /* Line 1464 of yacc.c */ -#line 2801 "Gmsh.y" +#line 2804 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -7423,7 +7426,7 @@ yyreduce: case 216: /* Line 1464 of yacc.c */ -#line 2808 "Gmsh.y" +#line 2811 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), @@ -7435,7 +7438,7 @@ yyreduce: case 217: /* Line 1464 of yacc.c */ -#line 2815 "Gmsh.y" +#line 2818 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), @@ -7447,7 +7450,7 @@ yyreduce: case 218: /* Line 1464 of yacc.c */ -#line 2822 "Gmsh.y" +#line 2825 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), @@ -7459,7 +7462,7 @@ yyreduce: case 219: /* Line 1464 of yacc.c */ -#line 2829 "Gmsh.y" +#line 2832 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7469,7 +7472,7 @@ yyreduce: case 220: /* Line 1464 of yacc.c */ -#line 2834 "Gmsh.y" +#line 2837 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -7481,7 +7484,7 @@ yyreduce: case 221: /* Line 1464 of yacc.c */ -#line 2841 "Gmsh.y" +#line 2844 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7491,7 +7494,7 @@ yyreduce: case 222: /* Line 1464 of yacc.c */ -#line 2846 "Gmsh.y" +#line 2849 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -7503,7 +7506,7 @@ yyreduce: case 223: /* Line 1464 of yacc.c */ -#line 2853 "Gmsh.y" +#line 2856 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7513,7 +7516,7 @@ yyreduce: case 224: /* Line 1464 of yacc.c */ -#line 2858 "Gmsh.y" +#line 2861 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -7525,7 +7528,7 @@ yyreduce: case 225: /* Line 1464 of yacc.c */ -#line 2865 "Gmsh.y" +#line 2868 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7535,7 +7538,7 @@ yyreduce: case 226: /* Line 1464 of yacc.c */ -#line 2870 "Gmsh.y" +#line 2873 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), @@ -7547,7 +7550,7 @@ yyreduce: case 227: /* Line 1464 of yacc.c */ -#line 2877 "Gmsh.y" +#line 2880 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7557,7 +7560,7 @@ yyreduce: case 228: /* Line 1464 of yacc.c */ -#line 2882 "Gmsh.y" +#line 2885 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), @@ -7569,7 +7572,7 @@ yyreduce: case 229: /* Line 1464 of yacc.c */ -#line 2889 "Gmsh.y" +#line 2892 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7579,7 +7582,7 @@ yyreduce: case 230: /* Line 1464 of yacc.c */ -#line 2894 "Gmsh.y" +#line 2897 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), @@ -7591,7 +7594,7 @@ yyreduce: case 231: /* Line 1464 of yacc.c */ -#line 2901 "Gmsh.y" +#line 2904 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7601,7 +7604,7 @@ yyreduce: case 232: /* Line 1464 of yacc.c */ -#line 2906 "Gmsh.y" +#line 2909 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), @@ -7613,7 +7616,7 @@ yyreduce: case 233: /* Line 1464 of yacc.c */ -#line 2913 "Gmsh.y" +#line 2916 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7623,7 +7626,7 @@ yyreduce: case 234: /* Line 1464 of yacc.c */ -#line 2918 "Gmsh.y" +#line 2921 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), @@ -7635,7 +7638,7 @@ yyreduce: case 235: /* Line 1464 of yacc.c */ -#line 2925 "Gmsh.y" +#line 2928 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7645,7 +7648,7 @@ yyreduce: case 236: /* Line 1464 of yacc.c */ -#line 2930 "Gmsh.y" +#line 2933 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), @@ -7657,7 +7660,7 @@ yyreduce: case 237: /* Line 1464 of yacc.c */ -#line 2941 "Gmsh.y" +#line 2944 "Gmsh.y" { ;} break; @@ -7665,7 +7668,7 @@ yyreduce: case 238: /* Line 1464 of yacc.c */ -#line 2944 "Gmsh.y" +#line 2947 "Gmsh.y" { ;} break; @@ -7673,7 +7676,7 @@ yyreduce: case 239: /* Line 1464 of yacc.c */ -#line 2950 "Gmsh.y" +#line 2953 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = 1; @@ -7687,7 +7690,7 @@ yyreduce: case 240: /* Line 1464 of yacc.c */ -#line 2959 "Gmsh.y" +#line 2962 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -7712,7 +7715,7 @@ yyreduce: case 241: /* Line 1464 of yacc.c */ -#line 2979 "Gmsh.y" +#line 2982 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); extr.mesh.ExtrudeMesh = true; @@ -7740,7 +7743,7 @@ yyreduce: case 242: /* Line 1464 of yacc.c */ -#line 3002 "Gmsh.y" +#line 3005 "Gmsh.y" { extr.mesh.Recombine = true; ;} @@ -7749,7 +7752,7 @@ yyreduce: case 243: /* Line 1464 of yacc.c */ -#line 3006 "Gmsh.y" +#line 3009 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_DBL_1; ;} @@ -7758,7 +7761,7 @@ yyreduce: case 244: /* Line 1464 of yacc.c */ -#line 3010 "Gmsh.y" +#line 3013 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_DBL_1_RECOMB; ;} @@ -7767,7 +7770,7 @@ yyreduce: case 245: /* Line 1464 of yacc.c */ -#line 3014 "Gmsh.y" +#line 3017 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_SNGL_1; ;} @@ -7776,7 +7779,7 @@ yyreduce: case 246: /* Line 1464 of yacc.c */ -#line 3018 "Gmsh.y" +#line 3021 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_SNGL_1_RECOMB; ;} @@ -7785,7 +7788,7 @@ yyreduce: case 247: /* Line 1464 of yacc.c */ -#line 3022 "Gmsh.y" +#line 3025 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ @@ -7809,7 +7812,7 @@ yyreduce: case 248: /* Line 1464 of yacc.c */ -#line 3041 "Gmsh.y" +#line 3044 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (6)].c), "Index")) extr.mesh.BoundaryLayerIndex = (yyvsp[(4) - (6)].d); @@ -7822,7 +7825,7 @@ yyreduce: case 249: /* Line 1464 of yacc.c */ -#line 3053 "Gmsh.y" +#line 3056 "Gmsh.y" { (yyval.v)[0] = (yyval.v)[1] = 1.; ;} @@ -7831,7 +7834,7 @@ yyreduce: case 250: /* Line 1464 of yacc.c */ -#line 3057 "Gmsh.y" +#line 3060 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) (yyval.v)[0] = 1.; @@ -7849,7 +7852,7 @@ yyreduce: case 251: /* Line 1464 of yacc.c */ -#line 3072 "Gmsh.y" +#line 3075 "Gmsh.y" { (yyval.i) = -1; // left ;} @@ -7858,7 +7861,7 @@ yyreduce: case 252: /* Line 1464 of yacc.c */ -#line 3076 "Gmsh.y" +#line 3079 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "Right")) (yyval.i) = 1; @@ -7873,7 +7876,7 @@ yyreduce: case 253: /* Line 1464 of yacc.c */ -#line 3088 "Gmsh.y" +#line 3091 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); ;} @@ -7882,7 +7885,7 @@ yyreduce: case 254: /* Line 1464 of yacc.c */ -#line 3092 "Gmsh.y" +#line 3095 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); ;} @@ -7891,7 +7894,7 @@ yyreduce: case 255: /* Line 1464 of yacc.c */ -#line 3097 "Gmsh.y" +#line 3100 "Gmsh.y" { (yyval.i) = 45; ;} @@ -7900,7 +7903,7 @@ yyreduce: case 256: /* Line 1464 of yacc.c */ -#line 3101 "Gmsh.y" +#line 3104 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); ;} @@ -7909,7 +7912,7 @@ yyreduce: case 257: /* Line 1464 of yacc.c */ -#line 3108 "Gmsh.y" +#line 3111 "Gmsh.y" { int type = (int)(yyvsp[(6) - (7)].v)[0]; double coef = fabs((yyvsp[(6) - (7)].v)[1]); @@ -7970,7 +7973,7 @@ yyreduce: case 258: /* Line 1464 of yacc.c */ -#line 3164 "Gmsh.y" +#line 3167 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (6)].l)); if(k != 0 && k != 3 && k != 4){ @@ -8045,7 +8048,7 @@ yyreduce: case 259: /* Line 1464 of yacc.c */ -#line 3234 "Gmsh.y" +#line 3237 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); @@ -8055,7 +8058,7 @@ yyreduce: case 260: /* Line 1464 of yacc.c */ -#line 3239 "Gmsh.y" +#line 3242 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (5)].l)); if(k != 0 && k != 6 && k != 8){ @@ -8127,7 +8130,7 @@ yyreduce: case 261: /* Line 1464 of yacc.c */ -#line 3306 "Gmsh.y" +#line 3309 "Gmsh.y" { if(!(yyvsp[(2) - (3)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); @@ -8168,7 +8171,7 @@ yyreduce: case 262: /* Line 1464 of yacc.c */ -#line 3342 "Gmsh.y" +#line 3345 "Gmsh.y" { if(!(yyvsp[(3) - (5)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); @@ -8216,7 +8219,7 @@ yyreduce: case 263: /* Line 1464 of yacc.c */ -#line 3385 "Gmsh.y" +#line 3388 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -8241,7 +8244,7 @@ yyreduce: case 264: /* Line 1464 of yacc.c */ -#line 3410 "Gmsh.y" +#line 3413 "Gmsh.y" { if(List_Nbr((yyvsp[(5) - (6)].l)) != List_Nbr((yyvsp[(3) - (6)].l))){ yymsg(0, "Number of master (%d) different from number of slave (%d) lines", @@ -8273,7 +8276,7 @@ yyreduce: case 265: /* Line 1464 of yacc.c */ -#line 3438 "Gmsh.y" +#line 3441 "Gmsh.y" { if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ yymsg(0, "Number of master surface edges (%d) different from number of " @@ -8314,7 +8317,7 @@ yyreduce: case 266: /* Line 1464 of yacc.c */ -#line 3481 "Gmsh.y" +#line 3484 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -8342,7 +8345,7 @@ yyreduce: case 267: /* Line 1464 of yacc.c */ -#line 3504 "Gmsh.y" +#line 3507 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -8370,7 +8373,7 @@ yyreduce: case 268: /* Line 1464 of yacc.c */ -#line 3527 "Gmsh.y" +#line 3530 "Gmsh.y" { ;} break; @@ -8378,7 +8381,7 @@ yyreduce: case 269: /* Line 1464 of yacc.c */ -#line 3530 "Gmsh.y" +#line 3533 "Gmsh.y" { ;} break; @@ -8386,7 +8389,7 @@ yyreduce: case 270: /* Line 1464 of yacc.c */ -#line 3539 "Gmsh.y" +#line 3542 "Gmsh.y" { ReplaceAllDuplicates(); ;} @@ -8395,7 +8398,7 @@ yyreduce: case 271: /* Line 1464 of yacc.c */ -#line 3543 "Gmsh.y" +#line 3546 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) ReplaceAllDuplicates(); @@ -8410,7 +8413,7 @@ yyreduce: case 272: /* Line 1464 of yacc.c */ -#line 3553 "Gmsh.y" +#line 3556 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (6)].l)) >= 2){ double d; @@ -8445,7 +8448,7 @@ yyreduce: case 273: /* Line 1464 of yacc.c */ -#line 3590 "Gmsh.y" +#line 3593 "Gmsh.y" { List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l)); @@ -8486,7 +8489,7 @@ yyreduce: case 274: /* Line 1464 of yacc.c */ -#line 3627 "Gmsh.y" +#line 3630 "Gmsh.y" { List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l)); std::vector<int> domain; @@ -8526,7 +8529,7 @@ yyreduce: case 275: /* Line 1464 of yacc.c */ -#line 3663 "Gmsh.y" +#line 3666 "Gmsh.y" { List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l)); std::vector<int> domain; @@ -8566,7 +8569,7 @@ yyreduce: case 276: /* Line 1464 of yacc.c */ -#line 3698 "Gmsh.y" +#line 3701 "Gmsh.y" { List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l)); std::vector<int> domain; @@ -8606,63 +8609,63 @@ yyreduce: case 277: /* Line 1464 of yacc.c */ -#line 3737 "Gmsh.y" +#line 3740 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 278: /* Line 1464 of yacc.c */ -#line 3738 "Gmsh.y" +#line 3741 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; case 279: /* Line 1464 of yacc.c */ -#line 3739 "Gmsh.y" +#line 3742 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; case 280: /* Line 1464 of yacc.c */ -#line 3740 "Gmsh.y" +#line 3743 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; case 281: /* Line 1464 of yacc.c */ -#line 3741 "Gmsh.y" +#line 3744 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; case 282: /* Line 1464 of yacc.c */ -#line 3742 "Gmsh.y" +#line 3745 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; case 283: /* Line 1464 of yacc.c */ -#line 3743 "Gmsh.y" +#line 3746 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; case 284: /* Line 1464 of yacc.c */ -#line 3744 "Gmsh.y" +#line 3747 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; case 285: /* Line 1464 of yacc.c */ -#line 3746 "Gmsh.y" +#line 3749 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -8674,427 +8677,427 @@ yyreduce: case 286: /* Line 1464 of yacc.c */ -#line 3752 "Gmsh.y" +#line 3755 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; case 287: /* Line 1464 of yacc.c */ -#line 3753 "Gmsh.y" +#line 3756 "Gmsh.y" { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; case 288: /* Line 1464 of yacc.c */ -#line 3754 "Gmsh.y" +#line 3757 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; case 289: /* Line 1464 of yacc.c */ -#line 3755 "Gmsh.y" +#line 3758 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; case 290: /* Line 1464 of yacc.c */ -#line 3756 "Gmsh.y" +#line 3759 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; case 291: /* Line 1464 of yacc.c */ -#line 3757 "Gmsh.y" +#line 3760 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; case 292: /* Line 1464 of yacc.c */ -#line 3758 "Gmsh.y" +#line 3761 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; case 293: /* Line 1464 of yacc.c */ -#line 3759 "Gmsh.y" +#line 3762 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; case 294: /* Line 1464 of yacc.c */ -#line 3760 "Gmsh.y" +#line 3763 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; case 295: /* Line 1464 of yacc.c */ -#line 3761 "Gmsh.y" +#line 3764 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; case 296: /* Line 1464 of yacc.c */ -#line 3762 "Gmsh.y" +#line 3765 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; case 297: /* Line 1464 of yacc.c */ -#line 3763 "Gmsh.y" +#line 3766 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 298: /* Line 1464 of yacc.c */ -#line 3764 "Gmsh.y" +#line 3767 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 299: /* Line 1464 of yacc.c */ -#line 3765 "Gmsh.y" +#line 3768 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 300: /* Line 1464 of yacc.c */ -#line 3766 "Gmsh.y" +#line 3769 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 301: /* Line 1464 of yacc.c */ -#line 3767 "Gmsh.y" +#line 3770 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 302: /* Line 1464 of yacc.c */ -#line 3768 "Gmsh.y" +#line 3771 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 303: /* Line 1464 of yacc.c */ -#line 3769 "Gmsh.y" +#line 3772 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 304: /* Line 1464 of yacc.c */ -#line 3770 "Gmsh.y" +#line 3773 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 305: /* Line 1464 of yacc.c */ -#line 3771 "Gmsh.y" +#line 3774 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 306: /* Line 1464 of yacc.c */ -#line 3772 "Gmsh.y" +#line 3775 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 307: /* Line 1464 of yacc.c */ -#line 3773 "Gmsh.y" +#line 3776 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 308: /* Line 1464 of yacc.c */ -#line 3774 "Gmsh.y" +#line 3777 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 309: /* Line 1464 of yacc.c */ -#line 3775 "Gmsh.y" +#line 3778 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 310: /* Line 1464 of yacc.c */ -#line 3776 "Gmsh.y" +#line 3779 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 311: /* Line 1464 of yacc.c */ -#line 3777 "Gmsh.y" +#line 3780 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 312: /* Line 1464 of yacc.c */ -#line 3778 "Gmsh.y" +#line 3781 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 313: /* Line 1464 of yacc.c */ -#line 3779 "Gmsh.y" +#line 3782 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 314: /* Line 1464 of yacc.c */ -#line 3780 "Gmsh.y" +#line 3783 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 315: /* Line 1464 of yacc.c */ -#line 3781 "Gmsh.y" +#line 3784 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 316: /* Line 1464 of yacc.c */ -#line 3782 "Gmsh.y" +#line 3785 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 317: /* Line 1464 of yacc.c */ -#line 3783 "Gmsh.y" +#line 3786 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 318: /* Line 1464 of yacc.c */ -#line 3785 "Gmsh.y" +#line 3788 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 319: /* Line 1464 of yacc.c */ -#line 3786 "Gmsh.y" +#line 3789 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 320: /* Line 1464 of yacc.c */ -#line 3787 "Gmsh.y" +#line 3790 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 321: /* Line 1464 of yacc.c */ -#line 3788 "Gmsh.y" +#line 3791 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 322: /* Line 1464 of yacc.c */ -#line 3789 "Gmsh.y" +#line 3792 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 323: /* Line 1464 of yacc.c */ -#line 3790 "Gmsh.y" +#line 3793 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 324: /* Line 1464 of yacc.c */ -#line 3791 "Gmsh.y" +#line 3794 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 325: /* Line 1464 of yacc.c */ -#line 3792 "Gmsh.y" +#line 3795 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 326: /* Line 1464 of yacc.c */ -#line 3793 "Gmsh.y" +#line 3796 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 327: /* Line 1464 of yacc.c */ -#line 3794 "Gmsh.y" +#line 3797 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 328: /* Line 1464 of yacc.c */ -#line 3795 "Gmsh.y" +#line 3798 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 329: /* Line 1464 of yacc.c */ -#line 3796 "Gmsh.y" +#line 3799 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 330: /* Line 1464 of yacc.c */ -#line 3797 "Gmsh.y" +#line 3800 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 331: /* Line 1464 of yacc.c */ -#line 3798 "Gmsh.y" +#line 3801 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 332: /* Line 1464 of yacc.c */ -#line 3799 "Gmsh.y" +#line 3802 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 333: /* Line 1464 of yacc.c */ -#line 3800 "Gmsh.y" +#line 3803 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 334: /* Line 1464 of yacc.c */ -#line 3801 "Gmsh.y" +#line 3804 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 335: /* Line 1464 of yacc.c */ -#line 3802 "Gmsh.y" +#line 3805 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 336: /* Line 1464 of yacc.c */ -#line 3803 "Gmsh.y" +#line 3806 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 337: /* Line 1464 of yacc.c */ -#line 3804 "Gmsh.y" +#line 3807 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 338: /* Line 1464 of yacc.c */ -#line 3805 "Gmsh.y" +#line 3808 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 339: /* Line 1464 of yacc.c */ -#line 3814 "Gmsh.y" +#line 3817 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 340: /* Line 1464 of yacc.c */ -#line 3815 "Gmsh.y" +#line 3818 "Gmsh.y" { (yyval.d) = 3.141592653589793; ;} break; case 341: /* Line 1464 of yacc.c */ -#line 3816 "Gmsh.y" +#line 3819 "Gmsh.y" { (yyval.d) = Msg::GetCommRank(); ;} break; case 342: /* Line 1464 of yacc.c */ -#line 3817 "Gmsh.y" +#line 3820 "Gmsh.y" { (yyval.d) = Msg::GetCommSize(); ;} break; case 343: /* Line 1464 of yacc.c */ -#line 3818 "Gmsh.y" +#line 3821 "Gmsh.y" { (yyval.d) = GetGmshMajorVersion(); ;} break; case 344: /* Line 1464 of yacc.c */ -#line 3819 "Gmsh.y" +#line 3822 "Gmsh.y" { (yyval.d) = GetGmshMinorVersion(); ;} break; case 345: /* Line 1464 of yacc.c */ -#line 3820 "Gmsh.y" +#line 3823 "Gmsh.y" { (yyval.d) = GetGmshPatchVersion(); ;} break; case 346: /* Line 1464 of yacc.c */ -#line 3825 "Gmsh.y" +#line 3828 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); @@ -9115,7 +9118,7 @@ yyreduce: case 347: /* Line 1464 of yacc.c */ -#line 3844 "Gmsh.y" +#line 3847 "Gmsh.y" { char tmpstring[1024]; sprintf(tmpstring, "%s_%d", (yyvsp[(1) - (5)].c), (int)(yyvsp[(4) - (5)].d)) ; @@ -9138,7 +9141,7 @@ yyreduce: case 348: /* Line 1464 of yacc.c */ -#line 3862 "Gmsh.y" +#line 3865 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -9158,7 +9161,7 @@ yyreduce: case 349: /* Line 1464 of yacc.c */ -#line 3877 "Gmsh.y" +#line 3880 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); @@ -9173,7 +9176,7 @@ yyreduce: case 350: /* Line 1464 of yacc.c */ -#line 3887 "Gmsh.y" +#line 3890 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -9194,7 +9197,7 @@ yyreduce: case 351: /* Line 1464 of yacc.c */ -#line 3903 "Gmsh.y" +#line 3906 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -9214,7 +9217,7 @@ yyreduce: case 352: /* Line 1464 of yacc.c */ -#line 3921 "Gmsh.y" +#line 3924 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); @@ -9224,7 +9227,7 @@ yyreduce: case 353: /* Line 1464 of yacc.c */ -#line 3926 "Gmsh.y" +#line 3929 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); @@ -9234,7 +9237,7 @@ yyreduce: case 354: /* Line 1464 of yacc.c */ -#line 3931 "Gmsh.y" +#line 3934 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -9249,7 +9252,7 @@ yyreduce: case 355: /* Line 1464 of yacc.c */ -#line 3941 "Gmsh.y" +#line 3944 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -9264,7 +9267,7 @@ yyreduce: case 356: /* Line 1464 of yacc.c */ -#line 3951 "Gmsh.y" +#line 3954 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); @@ -9274,7 +9277,7 @@ yyreduce: case 357: /* Line 1464 of yacc.c */ -#line 3959 "Gmsh.y" +#line 3962 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} @@ -9283,7 +9286,7 @@ yyreduce: case 358: /* Line 1464 of yacc.c */ -#line 3963 "Gmsh.y" +#line 3966 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} @@ -9292,7 +9295,7 @@ yyreduce: case 359: /* Line 1464 of yacc.c */ -#line 3967 "Gmsh.y" +#line 3970 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} @@ -9301,7 +9304,7 @@ yyreduce: case 360: /* Line 1464 of yacc.c */ -#line 3971 "Gmsh.y" +#line 3974 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} @@ -9310,7 +9313,7 @@ yyreduce: case 361: /* Line 1464 of yacc.c */ -#line 3975 "Gmsh.y" +#line 3978 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} @@ -9319,7 +9322,7 @@ yyreduce: case 362: /* Line 1464 of yacc.c */ -#line 3982 "Gmsh.y" +#line 3985 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); ;} @@ -9328,7 +9331,7 @@ yyreduce: case 363: /* Line 1464 of yacc.c */ -#line 3986 "Gmsh.y" +#line 3989 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; ;} @@ -9337,7 +9340,7 @@ yyreduce: case 364: /* Line 1464 of yacc.c */ -#line 3990 "Gmsh.y" +#line 3993 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} @@ -9346,7 +9349,7 @@ yyreduce: case 365: /* Line 1464 of yacc.c */ -#line 3994 "Gmsh.y" +#line 3997 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} @@ -9355,7 +9358,7 @@ yyreduce: case 366: /* Line 1464 of yacc.c */ -#line 4001 "Gmsh.y" +#line 4004 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); @@ -9365,7 +9368,7 @@ yyreduce: case 367: /* Line 1464 of yacc.c */ -#line 4006 "Gmsh.y" +#line 4009 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} @@ -9374,7 +9377,7 @@ yyreduce: case 368: /* Line 1464 of yacc.c */ -#line 4013 "Gmsh.y" +#line 4016 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); @@ -9384,7 +9387,7 @@ yyreduce: case 369: /* Line 1464 of yacc.c */ -#line 4018 "Gmsh.y" +#line 4021 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} @@ -9393,7 +9396,7 @@ yyreduce: case 370: /* Line 1464 of yacc.c */ -#line 4022 "Gmsh.y" +#line 4025 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -9403,7 +9406,7 @@ yyreduce: case 371: /* Line 1464 of yacc.c */ -#line 4027 "Gmsh.y" +#line 4030 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} @@ -9412,7 +9415,7 @@ yyreduce: case 372: /* Line 1464 of yacc.c */ -#line 4031 "Gmsh.y" +#line 4034 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -9425,7 +9428,7 @@ yyreduce: case 373: /* Line 1464 of yacc.c */ -#line 4039 "Gmsh.y" +#line 4042 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -9438,7 +9441,7 @@ yyreduce: case 374: /* Line 1464 of yacc.c */ -#line 4050 "Gmsh.y" +#line 4053 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} @@ -9447,7 +9450,7 @@ yyreduce: case 375: /* Line 1464 of yacc.c */ -#line 4054 "Gmsh.y" +#line 4057 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) (yyval.l) = 0; @@ -9461,7 +9464,7 @@ yyreduce: case 376: /* Line 1464 of yacc.c */ -#line 4066 "Gmsh.y" +#line 4069 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -9474,7 +9477,7 @@ yyreduce: case 377: /* Line 1464 of yacc.c */ -#line 4074 "Gmsh.y" +#line 4077 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -9487,7 +9490,7 @@ yyreduce: case 378: /* Line 1464 of yacc.c */ -#line 4082 "Gmsh.y" +#line 4085 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); @@ -9499,7 +9502,7 @@ yyreduce: case 379: /* Line 1464 of yacc.c */ -#line 4089 "Gmsh.y" +#line 4092 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!(yyvsp[(5) - (5)].d) || ((yyvsp[(1) - (5)].d) < (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) < 0) || ((yyvsp[(1) - (5)].d) > (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) > 0)){ @@ -9515,7 +9518,7 @@ yyreduce: case 380: /* Line 1464 of yacc.c */ -#line 4100 "Gmsh.y" +#line 4103 "Gmsh.y" { // Returns the coordinates of a point and fills a list with it. // This allows to ensure e.g. that relative point positions are @@ -9540,7 +9543,7 @@ yyreduce: case 381: /* Line 1464 of yacc.c */ -#line 4120 "Gmsh.y" +#line 4123 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(0); ;} @@ -9549,7 +9552,7 @@ yyreduce: case 382: /* Line 1464 of yacc.c */ -#line 4124 "Gmsh.y" +#line 4127 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(1); ;} @@ -9558,7 +9561,7 @@ yyreduce: case 383: /* Line 1464 of yacc.c */ -#line 4128 "Gmsh.y" +#line 4131 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(2); ;} @@ -9567,7 +9570,7 @@ yyreduce: case 384: /* Line 1464 of yacc.c */ -#line 4132 "Gmsh.y" +#line 4135 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(3); ;} @@ -9576,7 +9579,7 @@ yyreduce: case 385: /* Line 1464 of yacc.c */ -#line 4136 "Gmsh.y" +#line 4139 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -9591,7 +9594,7 @@ yyreduce: case 386: /* Line 1464 of yacc.c */ -#line 4146 "Gmsh.y" +#line 4149 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -9606,7 +9609,7 @@ yyreduce: case 387: /* Line 1464 of yacc.c */ -#line 4156 "Gmsh.y" +#line 4159 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -9621,7 +9624,7 @@ yyreduce: case 388: /* Line 1464 of yacc.c */ -#line 4166 "Gmsh.y" +#line 4169 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -9643,7 +9646,7 @@ yyreduce: case 389: /* Line 1464 of yacc.c */ -#line 4186 "Gmsh.y" +#line 4189 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); @@ -9653,7 +9656,7 @@ yyreduce: case 390: /* Line 1464 of yacc.c */ -#line 4191 "Gmsh.y" +#line 4194 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} @@ -9662,7 +9665,7 @@ yyreduce: case 391: /* Line 1464 of yacc.c */ -#line 4195 "Gmsh.y" +#line 4198 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} @@ -9671,7 +9674,7 @@ yyreduce: case 392: /* Line 1464 of yacc.c */ -#line 4199 "Gmsh.y" +#line 4202 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -9685,7 +9688,7 @@ yyreduce: case 393: /* Line 1464 of yacc.c */ -#line 4211 "Gmsh.y" +#line 4214 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} @@ -9694,7 +9697,7 @@ yyreduce: case 394: /* Line 1464 of yacc.c */ -#line 4215 "Gmsh.y" +#line 4218 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} @@ -9703,7 +9706,7 @@ yyreduce: case 395: /* Line 1464 of yacc.c */ -#line 4227 "Gmsh.y" +#line 4230 "Gmsh.y" { int flag; (yyval.u) = GetColorForString(ColorString, -1, (yyvsp[(1) - (1)].c), &flag); @@ -9715,7 +9718,7 @@ yyreduce: case 396: /* Line 1464 of yacc.c */ -#line 4234 "Gmsh.y" +#line 4237 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -9727,7 +9730,7 @@ yyreduce: case 397: /* Line 1464 of yacc.c */ -#line 4244 "Gmsh.y" +#line 4247 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} @@ -9736,7 +9739,7 @@ yyreduce: case 398: /* Line 1464 of yacc.c */ -#line 4248 "Gmsh.y" +#line 4251 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); @@ -9753,7 +9756,7 @@ yyreduce: case 399: /* Line 1464 of yacc.c */ -#line 4263 "Gmsh.y" +#line 4266 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); @@ -9763,7 +9766,7 @@ yyreduce: case 400: /* Line 1464 of yacc.c */ -#line 4268 "Gmsh.y" +#line 4271 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} @@ -9772,7 +9775,7 @@ yyreduce: case 401: /* Line 1464 of yacc.c */ -#line 4275 "Gmsh.y" +#line 4278 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} @@ -9781,7 +9784,7 @@ yyreduce: case 402: /* Line 1464 of yacc.c */ -#line 4279 "Gmsh.y" +#line 4282 "Gmsh.y" { if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (1)].c)); @@ -9799,7 +9802,7 @@ yyreduce: case 403: /* Line 1464 of yacc.c */ -#line 4292 "Gmsh.y" +#line 4295 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), out); @@ -9812,7 +9815,7 @@ yyreduce: case 404: /* Line 1464 of yacc.c */ -#line 4300 "Gmsh.y" +#line 4303 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); @@ -9825,7 +9828,7 @@ yyreduce: case 405: /* Line 1464 of yacc.c */ -#line 4311 "Gmsh.y" +#line 4314 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} @@ -9834,7 +9837,7 @@ yyreduce: case 406: /* Line 1464 of yacc.c */ -#line 4315 "Gmsh.y" +#line 4318 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; @@ -9847,7 +9850,7 @@ yyreduce: case 407: /* Line 1464 of yacc.c */ -#line 4323 "Gmsh.y" +#line 4326 "Gmsh.y" { const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); if(!env) env = ""; @@ -9860,7 +9863,7 @@ yyreduce: case 408: /* Line 1464 of yacc.c */ -#line 4331 "Gmsh.y" +#line 4334 "Gmsh.y" { std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -9873,7 +9876,7 @@ yyreduce: case 409: /* Line 1464 of yacc.c */ -#line 4339 "Gmsh.y" +#line 4342 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); strcpy((yyval.c), (yyvsp[(3) - (6)].c)); @@ -9886,7 +9889,7 @@ yyreduce: case 410: /* Line 1464 of yacc.c */ -#line 4347 "Gmsh.y" +#line 4350 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -9905,7 +9908,7 @@ yyreduce: case 411: /* Line 1464 of yacc.c */ -#line 4361 "Gmsh.y" +#line 4364 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -9924,7 +9927,7 @@ yyreduce: case 412: /* Line 1464 of yacc.c */ -#line 4375 "Gmsh.y" +#line 4378 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} @@ -9933,7 +9936,7 @@ yyreduce: case 413: /* Line 1464 of yacc.c */ -#line 4379 "Gmsh.y" +#line 4382 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -9957,7 +9960,7 @@ yyreduce: /* Line 1464 of yacc.c */ -#line 9961 "Gmsh.tab.cpp" +#line 9964 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -10169,7 +10172,7 @@ yyreturn: /* Line 1684 of yacc.c */ -#line 4399 "Gmsh.y" +#line 4402 "Gmsh.y" int PrintListOfDouble(char *format, List_T *list, char *buffer) diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 0bc0f9af3b27373c074faebe2ec7557860205624..005d92741966281e7a2ad6672af96be7e7b4bda3 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -705,10 +705,13 @@ Affectation : | tSTRING '[' ']' tAFFECTMINUS ListOfDouble tEND { // remove from the list - for(int i = 0; i < List_Nbr($5); i++) - gmsh_yysymbols[$1].erase(std::find(gmsh_yysymbols[$1].begin(), - gmsh_yysymbols[$1].end(), - *(double*)List_Pointer($5, i))); + for(int i = 0; i < List_Nbr($5); i++){ + double d = *(double*)List_Pointer($5, i); + std::vector<double>::iterator it = std::find + (gmsh_yysymbols[$1].begin(), gmsh_yysymbols[$1].end(), d); + if(it != gmsh_yysymbols[$1].end()) + gmsh_yysymbols[$1].erase(it); + } Free($1); List_Delete($5); }