diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 6b7b84fe95f5d0480c8948a790f0140d73790be1..69fd0eada82c6dd3a04813c0d19dd4c4167cd4cc 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -168,7 +168,7 @@ #line 1 "Gmsh.y" -// $Id: Gmsh.tab.cpp,v 1.238 2005-06-10 20:59:15 geuzaine Exp $ +// $Id: Gmsh.tab.cpp,v 1.239 2005-06-13 04:17:55 geuzaine Exp $ // // Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle // @@ -617,21 +617,21 @@ static const short yyrline[] = { 0, 2264, 2269, 2285, 2290, 2306, 2311, 2329, 2352, 2375, 2398, 2403, 2426, 2431, 2454, 2459, 2485, 2508, 2531, 2554, 2559, 2582, 2588, 2611, 2617, 2642, 2646, 2651, 2678, 2702, 2710, - 2729, 2747, 2765, 2792, 2818, 2844, 2858, 2876, 2881, 2890, - 2892, 2893, 2894, 2895, 2898, 2900, 2901, 2902, 2903, 2904, - 2905, 2906, 2907, 2914, 2915, 2916, 2917, 2918, 2919, 2920, - 2921, 2922, 2923, 2924, 2925, 2926, 2927, 2928, 2929, 2930, - 2931, 2932, 2933, 2934, 2935, 2936, 2937, 2938, 2939, 2940, - 2941, 2942, 2943, 2944, 2945, 2947, 2948, 2949, 2950, 2951, - 2952, 2953, 2954, 2955, 2956, 2957, 2958, 2959, 2960, 2961, - 2962, 2963, 2964, 2965, 2966, 2967, 2972, 2977, 2978, 2979, - 2980, 2981, 2982, 2986, 2999, 3019, 3033, 3046, 3069, 3087, - 3105, 3123, 3141, 3148, 3153, 3157, 3161, 3165, 3171, 3176, - 3180, 3184, 3190, 3194, 3199, 3203, 3208, 3212, 3216, 3222, - 3228, 3235, 3241, 3245, 3249, 3260, 3267, 3278, 3298, 3308, - 3318, 3330, 3347, 3366, 3390, 3418, 3424, 3428, 3432, 3444, - 3449, 3461, 3468, 3489, 3494, 3508, 3514, 3520, 3525, 3533, - 3541, 3555, 3569, 3573, 3592, 3614 + 2729, 2747, 2765, 2793, 2820, 2847, 2861, 2879, 2884, 2893, + 2895, 2896, 2897, 2898, 2901, 2903, 2904, 2905, 2906, 2907, + 2908, 2909, 2910, 2917, 2918, 2919, 2920, 2921, 2922, 2923, + 2924, 2925, 2926, 2927, 2928, 2929, 2930, 2931, 2932, 2933, + 2934, 2935, 2936, 2937, 2938, 2939, 2940, 2941, 2942, 2943, + 2944, 2945, 2946, 2947, 2948, 2950, 2951, 2952, 2953, 2954, + 2955, 2956, 2957, 2958, 2959, 2960, 2961, 2962, 2963, 2964, + 2965, 2966, 2967, 2968, 2969, 2970, 2975, 2980, 2981, 2982, + 2983, 2984, 2985, 2989, 3002, 3022, 3036, 3049, 3072, 3090, + 3108, 3126, 3144, 3151, 3156, 3160, 3164, 3168, 3174, 3179, + 3183, 3187, 3193, 3197, 3202, 3206, 3211, 3215, 3219, 3225, + 3231, 3238, 3244, 3248, 3252, 3263, 3270, 3281, 3301, 3311, + 3321, 3333, 3350, 3369, 3393, 3421, 3427, 3431, 3435, 3447, + 3452, 3464, 3471, 3492, 3497, 3511, 3517, 3523, 3528, 3536, + 3544, 3558, 3572, 3576, 3595, 3617 }; #endif @@ -5753,6 +5753,7 @@ case 223: "%d points instead of 3 or 4" , (int)yyvsp[-4].d, k); } else{ + List_Reset(s->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read(yyvsp[-1].l, i, &d); @@ -5769,7 +5770,7 @@ case 223: ; break;} case 224: -#line 2793 "Gmsh.y" +#line 2794 "Gmsh.y" { Surface *s = FindSurface((int)yyvsp[-4].d, THEM); if(!s) @@ -5781,6 +5782,7 @@ case 224: yymsg(GERROR, "Wrong definition of Elliptic Surface %d: " "%d points instead of 4" , (int)yyvsp[-4].d, k); else{ + List_Reset(s->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read(yyvsp[-1].l, i, &d); @@ -5797,7 +5799,7 @@ case 224: ; break;} case 225: -#line 2819 "Gmsh.y" +#line 2821 "Gmsh.y" { Volume *v = FindVolume((int)yyvsp[-4].d, THEM); if(!v) @@ -5809,6 +5811,7 @@ case 225: yymsg(GERROR, "Wrong definition of Transfinite Volume %d: " "%d points instead of 6 or 8" , (int)yyvsp[-4].d, k); else{ + List_Reset(v->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read(yyvsp[-1].l, i, &d); @@ -5825,7 +5828,7 @@ case 225: ; break;} case 226: -#line 2845 "Gmsh.y" +#line 2848 "Gmsh.y" { for(int i = 0; i < List_Nbr(yyvsp[-3].l); i++){ double d; @@ -5841,7 +5844,7 @@ case 226: ; break;} case 227: -#line 2859 "Gmsh.y" +#line 2862 "Gmsh.y" { for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ double d; @@ -5856,71 +5859,71 @@ case 227: ; break;} case 228: -#line 2878 "Gmsh.y" +#line 2881 "Gmsh.y" { ReplaceAllDuplicates(THEM); ; break;} case 229: -#line 2882 "Gmsh.y" +#line 2885 "Gmsh.y" { IntersectAllSegmentsTogether(); ; break;} case 230: -#line 2891 "Gmsh.y" +#line 2894 "Gmsh.y" {yyval.i = 1;; break;} case 231: -#line 2892 "Gmsh.y" +#line 2895 "Gmsh.y" {yyval.i = 0;; break;} case 232: -#line 2893 "Gmsh.y" +#line 2896 "Gmsh.y" {yyval.i = -1;; break;} case 233: -#line 2894 "Gmsh.y" +#line 2897 "Gmsh.y" {yyval.i = -1;; break;} case 234: -#line 2895 "Gmsh.y" +#line 2898 "Gmsh.y" {yyval.i = -1;; break;} case 235: -#line 2899 "Gmsh.y" +#line 2902 "Gmsh.y" { yyval.d = yyvsp[0].d; ; break;} case 236: -#line 2900 "Gmsh.y" +#line 2903 "Gmsh.y" { yyval.d = yyvsp[-1].d; ; break;} case 237: -#line 2901 "Gmsh.y" +#line 2904 "Gmsh.y" { yyval.d = -yyvsp[0].d; ; break;} case 238: -#line 2902 "Gmsh.y" +#line 2905 "Gmsh.y" { yyval.d = yyvsp[0].d; ; break;} case 239: -#line 2903 "Gmsh.y" +#line 2906 "Gmsh.y" { yyval.d = !yyvsp[0].d; ; break;} case 240: -#line 2904 "Gmsh.y" +#line 2907 "Gmsh.y" { yyval.d = yyvsp[-2].d - yyvsp[0].d; ; break;} case 241: -#line 2905 "Gmsh.y" +#line 2908 "Gmsh.y" { yyval.d = yyvsp[-2].d + yyvsp[0].d; ; break;} case 242: -#line 2906 "Gmsh.y" +#line 2909 "Gmsh.y" { yyval.d = yyvsp[-2].d * yyvsp[0].d; ; break;} case 243: -#line 2908 "Gmsh.y" +#line 2911 "Gmsh.y" { if(!yyvsp[0].d) yymsg(GERROR, "Division by zero in '%g / %g'", yyvsp[-2].d, yyvsp[0].d); @@ -5929,247 +5932,247 @@ case 243: ; break;} case 244: -#line 2914 "Gmsh.y" +#line 2917 "Gmsh.y" { yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d; ; break;} case 245: -#line 2915 "Gmsh.y" +#line 2918 "Gmsh.y" { yyval.d = pow(yyvsp[-2].d, yyvsp[0].d); ; break;} case 246: -#line 2916 "Gmsh.y" +#line 2919 "Gmsh.y" { yyval.d = yyvsp[-2].d < yyvsp[0].d; ; break;} case 247: -#line 2917 "Gmsh.y" +#line 2920 "Gmsh.y" { yyval.d = yyvsp[-2].d > yyvsp[0].d; ; break;} case 248: -#line 2918 "Gmsh.y" +#line 2921 "Gmsh.y" { yyval.d = yyvsp[-2].d <= yyvsp[0].d; ; break;} case 249: -#line 2919 "Gmsh.y" +#line 2922 "Gmsh.y" { yyval.d = yyvsp[-2].d >= yyvsp[0].d; ; break;} case 250: -#line 2920 "Gmsh.y" +#line 2923 "Gmsh.y" { yyval.d = yyvsp[-2].d == yyvsp[0].d; ; break;} case 251: -#line 2921 "Gmsh.y" +#line 2924 "Gmsh.y" { yyval.d = yyvsp[-2].d != yyvsp[0].d; ; break;} case 252: -#line 2922 "Gmsh.y" +#line 2925 "Gmsh.y" { yyval.d = yyvsp[-2].d && yyvsp[0].d; ; break;} case 253: -#line 2923 "Gmsh.y" +#line 2926 "Gmsh.y" { yyval.d = yyvsp[-2].d || yyvsp[0].d; ; break;} case 254: -#line 2924 "Gmsh.y" +#line 2927 "Gmsh.y" { yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d; ; break;} case 255: -#line 2925 "Gmsh.y" +#line 2928 "Gmsh.y" { yyval.d = exp(yyvsp[-1].d); ; break;} case 256: -#line 2926 "Gmsh.y" +#line 2929 "Gmsh.y" { yyval.d = log(yyvsp[-1].d); ; break;} case 257: -#line 2927 "Gmsh.y" +#line 2930 "Gmsh.y" { yyval.d = log10(yyvsp[-1].d); ; break;} case 258: -#line 2928 "Gmsh.y" +#line 2931 "Gmsh.y" { yyval.d = sqrt(yyvsp[-1].d); ; break;} case 259: -#line 2929 "Gmsh.y" +#line 2932 "Gmsh.y" { yyval.d = sin(yyvsp[-1].d); ; break;} case 260: -#line 2930 "Gmsh.y" +#line 2933 "Gmsh.y" { yyval.d = asin(yyvsp[-1].d); ; break;} case 261: -#line 2931 "Gmsh.y" +#line 2934 "Gmsh.y" { yyval.d = cos(yyvsp[-1].d); ; break;} case 262: -#line 2932 "Gmsh.y" +#line 2935 "Gmsh.y" { yyval.d = acos(yyvsp[-1].d); ; break;} case 263: -#line 2933 "Gmsh.y" +#line 2936 "Gmsh.y" { yyval.d = tan(yyvsp[-1].d); ; break;} case 264: -#line 2934 "Gmsh.y" +#line 2937 "Gmsh.y" { yyval.d = atan(yyvsp[-1].d); ; break;} case 265: -#line 2935 "Gmsh.y" +#line 2938 "Gmsh.y" { yyval.d = atan2(yyvsp[-3].d, yyvsp[-1].d);; break;} case 266: -#line 2936 "Gmsh.y" +#line 2939 "Gmsh.y" { yyval.d = sinh(yyvsp[-1].d); ; break;} case 267: -#line 2937 "Gmsh.y" +#line 2940 "Gmsh.y" { yyval.d = cosh(yyvsp[-1].d); ; break;} case 268: -#line 2938 "Gmsh.y" +#line 2941 "Gmsh.y" { yyval.d = tanh(yyvsp[-1].d); ; break;} case 269: -#line 2939 "Gmsh.y" +#line 2942 "Gmsh.y" { yyval.d = fabs(yyvsp[-1].d); ; break;} case 270: -#line 2940 "Gmsh.y" +#line 2943 "Gmsh.y" { yyval.d = floor(yyvsp[-1].d); ; break;} case 271: -#line 2941 "Gmsh.y" +#line 2944 "Gmsh.y" { yyval.d = ceil(yyvsp[-1].d); ; break;} case 272: -#line 2942 "Gmsh.y" +#line 2945 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; break;} case 273: -#line 2943 "Gmsh.y" +#line 2946 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; break;} case 274: -#line 2944 "Gmsh.y" +#line 2947 "Gmsh.y" { yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; break;} case 275: -#line 2945 "Gmsh.y" +#line 2948 "Gmsh.y" { yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ; break;} case 276: -#line 2947 "Gmsh.y" +#line 2950 "Gmsh.y" { yyval.d = exp(yyvsp[-1].d); ; break;} case 277: -#line 2948 "Gmsh.y" +#line 2951 "Gmsh.y" { yyval.d = log(yyvsp[-1].d); ; break;} case 278: -#line 2949 "Gmsh.y" +#line 2952 "Gmsh.y" { yyval.d = log10(yyvsp[-1].d); ; break;} case 279: -#line 2950 "Gmsh.y" +#line 2953 "Gmsh.y" { yyval.d = sqrt(yyvsp[-1].d); ; break;} case 280: -#line 2951 "Gmsh.y" +#line 2954 "Gmsh.y" { yyval.d = sin(yyvsp[-1].d); ; break;} case 281: -#line 2952 "Gmsh.y" +#line 2955 "Gmsh.y" { yyval.d = asin(yyvsp[-1].d); ; break;} case 282: -#line 2953 "Gmsh.y" +#line 2956 "Gmsh.y" { yyval.d = cos(yyvsp[-1].d); ; break;} case 283: -#line 2954 "Gmsh.y" +#line 2957 "Gmsh.y" { yyval.d = acos(yyvsp[-1].d); ; break;} case 284: -#line 2955 "Gmsh.y" +#line 2958 "Gmsh.y" { yyval.d = tan(yyvsp[-1].d); ; break;} case 285: -#line 2956 "Gmsh.y" +#line 2959 "Gmsh.y" { yyval.d = atan(yyvsp[-1].d); ; break;} case 286: -#line 2957 "Gmsh.y" +#line 2960 "Gmsh.y" { yyval.d = atan2(yyvsp[-3].d, yyvsp[-1].d);; break;} case 287: -#line 2958 "Gmsh.y" +#line 2961 "Gmsh.y" { yyval.d = sinh(yyvsp[-1].d); ; break;} case 288: -#line 2959 "Gmsh.y" +#line 2962 "Gmsh.y" { yyval.d = cosh(yyvsp[-1].d); ; break;} case 289: -#line 2960 "Gmsh.y" +#line 2963 "Gmsh.y" { yyval.d = tanh(yyvsp[-1].d); ; break;} case 290: -#line 2961 "Gmsh.y" +#line 2964 "Gmsh.y" { yyval.d = fabs(yyvsp[-1].d); ; break;} case 291: -#line 2962 "Gmsh.y" +#line 2965 "Gmsh.y" { yyval.d = floor(yyvsp[-1].d); ; break;} case 292: -#line 2963 "Gmsh.y" +#line 2966 "Gmsh.y" { yyval.d = ceil(yyvsp[-1].d); ; break;} case 293: -#line 2964 "Gmsh.y" +#line 2967 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; break;} case 294: -#line 2965 "Gmsh.y" +#line 2968 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; break;} case 295: -#line 2966 "Gmsh.y" +#line 2969 "Gmsh.y" { yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; break;} case 296: -#line 2967 "Gmsh.y" +#line 2970 "Gmsh.y" { yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ; break;} case 297: -#line 2976 "Gmsh.y" +#line 2979 "Gmsh.y" { yyval.d = yyvsp[0].d; ; break;} case 298: -#line 2977 "Gmsh.y" +#line 2980 "Gmsh.y" { yyval.d = 3.141592653589793; ; break;} case 299: -#line 2978 "Gmsh.y" +#line 2981 "Gmsh.y" { yyval.d = ParUtil::Instance()->rank(); ; break;} case 300: -#line 2979 "Gmsh.y" +#line 2982 "Gmsh.y" { yyval.d = ParUtil::Instance()->size(); ; break;} case 301: -#line 2980 "Gmsh.y" +#line 2983 "Gmsh.y" { yyval.d = GMSH_MAJOR_VERSION; ; break;} case 302: -#line 2981 "Gmsh.y" +#line 2984 "Gmsh.y" { yyval.d = GMSH_MINOR_VERSION; ; break;} case 303: -#line 2982 "Gmsh.y" +#line 2985 "Gmsh.y" { yyval.d = GMSH_PATCH_VERSION; ; break;} case 304: -#line 2987 "Gmsh.y" +#line 2990 "Gmsh.y" { Symbol TheSymbol; TheSymbol.Name = yyvsp[0].c; @@ -6184,7 +6187,7 @@ case 304: ; break;} case 305: -#line 3000 "Gmsh.y" +#line 3003 "Gmsh.y" { Symbol TheSymbol; TheSymbol.Name = yyvsp[-3].c; @@ -6206,7 +6209,7 @@ case 305: ; break;} case 306: -#line 3020 "Gmsh.y" +#line 3023 "Gmsh.y" { Symbol TheSymbol; TheSymbol.Name = yyvsp[-2].c; @@ -6222,7 +6225,7 @@ case 306: ; break;} case 307: -#line 3034 "Gmsh.y" +#line 3037 "Gmsh.y" { Symbol TheSymbol; TheSymbol.Name = yyvsp[-1].c; @@ -6237,7 +6240,7 @@ case 307: ; break;} case 308: -#line 3047 "Gmsh.y" +#line 3050 "Gmsh.y" { Symbol TheSymbol; TheSymbol.Name = yyvsp[-4].c; @@ -6259,7 +6262,7 @@ case 308: ; break;} case 309: -#line 3070 "Gmsh.y" +#line 3073 "Gmsh.y" { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; @@ -6279,7 +6282,7 @@ case 309: ; break;} case 310: -#line 3088 "Gmsh.y" +#line 3091 "Gmsh.y" { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; @@ -6299,7 +6302,7 @@ case 310: ; break;} case 311: -#line 3106 "Gmsh.y" +#line 3109 "Gmsh.y" { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; @@ -6319,7 +6322,7 @@ case 311: ; break;} case 312: -#line 3124 "Gmsh.y" +#line 3127 "Gmsh.y" { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; @@ -6339,137 +6342,137 @@ case 312: ; break;} case 313: -#line 3142 "Gmsh.y" +#line 3145 "Gmsh.y" { yyval.d = GetValue(yyvsp[-3].c, yyvsp[-1].d); Free(yyvsp[-3].c); ; break;} case 314: -#line 3150 "Gmsh.y" +#line 3153 "Gmsh.y" { memcpy(yyval.v, yyvsp[0].v, 5*sizeof(double)); ; break;} case 315: -#line 3154 "Gmsh.y" +#line 3157 "Gmsh.y" { for(int i = 0; i < 5; i++) yyval.v[i] = -yyvsp[0].v[i]; ; break;} case 316: -#line 3158 "Gmsh.y" +#line 3161 "Gmsh.y" { for(int i = 0; i < 5; i++) yyval.v[i] = yyvsp[0].v[i]; ; break;} case 317: -#line 3162 "Gmsh.y" +#line 3165 "Gmsh.y" { for(int i = 0; i < 5; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i]; ; break;} case 318: -#line 3166 "Gmsh.y" +#line 3169 "Gmsh.y" { for(int i = 0; i < 5; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i]; ; break;} case 319: -#line 3173 "Gmsh.y" +#line 3176 "Gmsh.y" { yyval.v[0] = yyvsp[-9].d; yyval.v[1] = yyvsp[-7].d; yyval.v[2] = yyvsp[-5].d; yyval.v[3] = yyvsp[-3].d; yyval.v[4] = yyvsp[-1].d; ; break;} case 320: -#line 3177 "Gmsh.y" +#line 3180 "Gmsh.y" { yyval.v[0] = yyvsp[-7].d; yyval.v[1] = yyvsp[-5].d; yyval.v[2] = yyvsp[-3].d; yyval.v[3] = yyvsp[-1].d; yyval.v[4] = 1.0; ; break;} case 321: -#line 3181 "Gmsh.y" +#line 3184 "Gmsh.y" { yyval.v[0] = yyvsp[-5].d; yyval.v[1] = yyvsp[-3].d; yyval.v[2] = yyvsp[-1].d; yyval.v[3] = 0.0; yyval.v[4] = 1.0; ; break;} case 322: -#line 3185 "Gmsh.y" +#line 3188 "Gmsh.y" { yyval.v[0] = yyvsp[-5].d; yyval.v[1] = yyvsp[-3].d; yyval.v[2] = yyvsp[-1].d; yyval.v[3] = 0.0; yyval.v[4] = 1.0; ; break;} case 323: -#line 3192 "Gmsh.y" +#line 3195 "Gmsh.y" { ; break;} case 324: -#line 3195 "Gmsh.y" +#line 3198 "Gmsh.y" { ; break;} case 325: -#line 3201 "Gmsh.y" +#line 3204 "Gmsh.y" { ; break;} case 326: -#line 3204 "Gmsh.y" +#line 3207 "Gmsh.y" { ; break;} case 327: -#line 3210 "Gmsh.y" +#line 3213 "Gmsh.y" { ; break;} case 328: -#line 3213 "Gmsh.y" +#line 3216 "Gmsh.y" { yyval.l = yyvsp[-1].l; ; break;} case 329: -#line 3217 "Gmsh.y" +#line 3220 "Gmsh.y" { yyval.l = yyvsp[-1].l; ; break;} case 330: -#line 3224 "Gmsh.y" +#line 3227 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(List_T*)); List_Add(yyval.l, &(yyvsp[0].l)); ; break;} case 331: -#line 3229 "Gmsh.y" +#line 3232 "Gmsh.y" { List_Add(yyval.l, &(yyvsp[0].l)); ; break;} case 332: -#line 3237 "Gmsh.y" +#line 3240 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); List_Add(yyval.l, &(yyvsp[0].d)); ; break;} case 333: -#line 3242 "Gmsh.y" +#line 3245 "Gmsh.y" { yyval.l = yyvsp[0].l; ; break;} case 334: -#line 3246 "Gmsh.y" +#line 3249 "Gmsh.y" { yyval.l = yyvsp[-1].l; ; break;} case 335: -#line 3250 "Gmsh.y" +#line 3253 "Gmsh.y" { yyval.l = yyvsp[-1].l; double *pd; @@ -6480,7 +6483,7 @@ case 335: ; break;} case 336: -#line 3262 "Gmsh.y" +#line 3265 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); for(double d = yyvsp[-2].d; (yyvsp[-2].d < yyvsp[0].d) ? (d <= yyvsp[0].d) : (d >= yyvsp[0].d); (yyvsp[-2].d < yyvsp[0].d) ? (d += 1.) : (d -= 1.)) @@ -6488,7 +6491,7 @@ case 336: ; break;} case 337: -#line 3268 "Gmsh.y" +#line 3271 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); if(!yyvsp[0].d || (yyvsp[-4].d < yyvsp[-2].d && yyvsp[0].d < 0) || (yyvsp[-4].d > yyvsp[-2].d && yyvsp[0].d > 0)){ @@ -6501,7 +6504,7 @@ case 337: ; break;} case 338: -#line 3279 "Gmsh.y" +#line 3282 "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 @@ -6523,7 +6526,7 @@ case 338: ; break;} case 339: -#line 3299 "Gmsh.y" +#line 3302 "Gmsh.y" { yyval.l = List_Create(List_Nbr(yyvsp[0].l), 1, sizeof(double)); for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){ @@ -6535,7 +6538,7 @@ case 339: ; break;} case 340: -#line 3309 "Gmsh.y" +#line 3312 "Gmsh.y" { yyval.l = List_Create(List_Nbr(yyvsp[0].l), 1, sizeof(double)); for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){ @@ -6547,7 +6550,7 @@ case 340: ; break;} case 341: -#line 3319 "Gmsh.y" +#line 3322 "Gmsh.y" { // FIXME: The syntax for this is ugly: we get double semi-colons // at the end of the line @@ -6561,7 +6564,7 @@ case 341: ; break;} case 342: -#line 3331 "Gmsh.y" +#line 3334 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); Symbol TheSymbol; @@ -6580,7 +6583,7 @@ case 342: ; break;} case 343: -#line 3348 "Gmsh.y" +#line 3351 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); Symbol TheSymbol; @@ -6601,7 +6604,7 @@ case 343: ; break;} case 344: -#line 3367 "Gmsh.y" +#line 3370 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); Symbol TheSymbol; @@ -6627,7 +6630,7 @@ case 344: ; break;} case 345: -#line 3391 "Gmsh.y" +#line 3394 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); Symbol TheSymbol; @@ -6655,26 +6658,26 @@ case 345: ; break;} case 346: -#line 3420 "Gmsh.y" +#line 3423 "Gmsh.y" { yyval.l = List_Create(2, 1, sizeof(double)); List_Add(yyval.l, &(yyvsp[0].d)); ; break;} case 347: -#line 3425 "Gmsh.y" +#line 3428 "Gmsh.y" { yyval.l = yyvsp[0].l; ; break;} case 348: -#line 3429 "Gmsh.y" +#line 3432 "Gmsh.y" { List_Add(yyval.l, &(yyvsp[0].d)); ; break;} case 349: -#line 3433 "Gmsh.y" +#line 3436 "Gmsh.y" { for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){ double d; @@ -6685,19 +6688,19 @@ case 349: ; break;} case 350: -#line 3446 "Gmsh.y" +#line 3449 "Gmsh.y" { yyval.u = PACK_COLOR((int)yyvsp[-7].d, (int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d); ; break;} case 351: -#line 3450 "Gmsh.y" +#line 3453 "Gmsh.y" { yyval.u = PACK_COLOR((int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d, 255); ; break;} case 352: -#line 3462 "Gmsh.y" +#line 3465 "Gmsh.y" { int flag; yyval.u = Get_ColorForString(ColorString, -1, yyvsp[0].c, &flag); @@ -6706,7 +6709,7 @@ case 352: ; break;} case 353: -#line 3469 "Gmsh.y" +#line 3472 "Gmsh.y" { unsigned int (*pColOpt)(int num, int action, unsigned int value); StringXColor *pColCat; @@ -6727,13 +6730,13 @@ case 353: ; break;} case 354: -#line 3491 "Gmsh.y" +#line 3494 "Gmsh.y" { yyval.l = yyvsp[-1].l; ; break;} case 355: -#line 3495 "Gmsh.y" +#line 3498 "Gmsh.y" { yyval.l = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = Get_ColorTable((int)yyvsp[-3].d); @@ -6747,26 +6750,26 @@ case 355: ; break;} case 356: -#line 3510 "Gmsh.y" +#line 3513 "Gmsh.y" { yyval.l = List_Create(256, 10, sizeof(unsigned int)); List_Add(yyval.l, &(yyvsp[0].u)); ; break;} case 357: -#line 3515 "Gmsh.y" +#line 3518 "Gmsh.y" { List_Add(yyval.l, &(yyvsp[0].u)); ; break;} case 358: -#line 3522 "Gmsh.y" +#line 3525 "Gmsh.y" { yyval.c = yyvsp[0].c; ; break;} case 359: -#line 3526 "Gmsh.y" +#line 3529 "Gmsh.y" { yyval.c = (char *)Malloc(32*sizeof(char)); time_t now; @@ -6776,7 +6779,7 @@ case 359: ; break;} case 360: -#line 3534 "Gmsh.y" +#line 3537 "Gmsh.y" { yyval.c = (char *)Malloc((strlen(yyvsp[-3].c)+strlen(yyvsp[-1].c)+1)*sizeof(char)); strcpy(yyval.c, yyvsp[-3].c); @@ -6786,7 +6789,7 @@ case 360: ; break;} case 361: -#line 3542 "Gmsh.y" +#line 3545 "Gmsh.y" { yyval.c = (char *)Malloc((strlen(yyvsp[-1].c)+1)*sizeof(char)); int i; @@ -6802,7 +6805,7 @@ case 361: ; break;} case 362: -#line 3556 "Gmsh.y" +#line 3559 "Gmsh.y" { yyval.c = (char *)Malloc((strlen(yyvsp[-1].c)+1)*sizeof(char)); int i; @@ -6818,13 +6821,13 @@ case 362: ; break;} case 363: -#line 3570 "Gmsh.y" +#line 3573 "Gmsh.y" { yyval.c = yyvsp[-1].c; ; break;} case 364: -#line 3574 "Gmsh.y" +#line 3577 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble(yyvsp[-3].c, yyvsp[-1].l, tmpstring); @@ -6845,7 +6848,7 @@ case 364: ; break;} case 365: -#line 3593 "Gmsh.y" +#line 3596 "Gmsh.y" { char* (*pStrOpt)(int num, int action, char *value); StringXString *pStrCat; @@ -6869,7 +6872,7 @@ case 365: ; break;} case 366: -#line 3615 "Gmsh.y" +#line 3618 "Gmsh.y" { char* (*pStrOpt)(int num, int action, char *value); StringXString *pStrCat; @@ -7114,7 +7117,7 @@ yyerrhandle: } return 1; } -#line 3638 "Gmsh.y" +#line 3641 "Gmsh.y" void DeleteSymbol(void *a, void *b){ diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 8152910089531adba8735fef80b3547cd4e54e99..6eaef06f54b1e0ddbcbc2aeab8362120d38e042d 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,5 +1,5 @@ %{ -// $Id: Gmsh.y,v 1.208 2005-06-10 20:59:18 geuzaine Exp $ +// $Id: Gmsh.y,v 1.209 2005-06-13 04:17:56 geuzaine Exp $ // // Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle // @@ -2775,6 +2775,7 @@ Transfinite : "%d points instead of 3 or 4" , (int)$4, k); } else{ + List_Reset(s->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read($7, i, &d); @@ -2801,6 +2802,7 @@ Transfinite : yymsg(GERROR, "Wrong definition of Elliptic Surface %d: " "%d points instead of 4" , (int)$4, k); else{ + List_Reset(s->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read($7, i, &d); @@ -2827,6 +2829,7 @@ Transfinite : yymsg(GERROR, "Wrong definition of Transfinite Volume %d: " "%d points instead of 6 or 8" , (int)$4, k); else{ + List_Reset(v->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read($7, i, &d); diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index e97d862e67d64733b3192ae6f3b1597790aeded2..7982126453d541a3e28432a66b89e8c73d1ede73 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -2,7 +2,7 @@ /* A lexical scanner generated by flex */ /* Scanner skeleton version: - * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.237 2005-06-10 20:59:18 geuzaine Exp $ + * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.238 2005-06-13 04:17:56 geuzaine Exp $ */ #define FLEX_SCANNER @@ -1026,7 +1026,7 @@ char *yytext; #line 1 "Gmsh.l" #define INITIAL 0 #line 2 "Gmsh.l" -// $Id: Gmsh.yy.cpp,v 1.237 2005-06-10 20:59:18 geuzaine Exp $ +// $Id: Gmsh.yy.cpp,v 1.238 2005-06-13 04:17:56 geuzaine Exp $ // // Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle //