diff --git a/Mesh/meshGFace.cpp b/Mesh/meshGFace.cpp index f4a08542ab63fc214f48330ab90f16763366b06a..52b81efa724bc01dc8c5e539f580d6536539095e 100644 --- a/Mesh/meshGFace.cpp +++ b/Mesh/meshGFace.cpp @@ -45,24 +45,25 @@ #include "meshGFaceLloyd.h" #include "meshGFaceBoundaryLayers.h" -inline double myAngle (const SVector3 &a, const SVector3 &b, const SVector3 &d){ +inline double myAngle (const SVector3 &a, const SVector3 &b, const SVector3 &d) +{ double cosTheta = dot(a,b); double sinTheta = dot(crossprod(a,b),d); - return atan2 (sinTheta,cosTheta); + return atan2 (sinTheta,cosTheta); } struct myPlane { SPoint3 p; SVector3 n; double a; - /// nx x + ny y + nz z + a = 0 - myPlane(SPoint3 _p, SVector3 _n) : p(_p),n(_n) + // nx x + ny y + nz z + a = 0 + myPlane(SPoint3 _p, SVector3 _n) : p(_p),n(_n) { - // printf("plane passing through %12.5E %12.5E %12.5E\n",p.x(),p.y(),p.z()); n.normalize(); a = -(n.x()*p.x()+n.y()*p.y()+n.z()*p.z()); } - double eval (double x, double y, double z){ + double eval (double x, double y, double z) + { return n.x() * x + n.y() * y + n.z() * z + a; } }; @@ -78,48 +79,44 @@ struct myLine { Msg::Error("parallel planes do not intersect"); } else - t.normalize(); + t.normalize(); // find a point, assume z = 0 - double a[2][2] = {{p1.n.x(),p1.n.y()},{p2.n.x(),p2.n.y()}}; - double b[2] = {-p1.a,-p2.a},x[2]; - if (!sys2x2(a,b,x)){ + double a[2][2] = {{p1.n.x(), p1.n.y()}, {p2.n.x(), p2.n.y()}}; + double b[2] = {-p1.a, -p2.a}, x[2]; + if (!sys2x2(a, b, x)){ // assume x = 0 - double az[2][2] = {{p1.n.y(),p1.n.z()},{p2.n.y(),p2.n.z()}}; - double bz[2] = {-p1.a,-p2.a}; - if (!sys2x2(az,bz,x)){ + double az[2][2] = {{p1.n.y(), p1.n.z()}, {p2.n.y(), p2.n.z()}}; + double bz[2] = {-p1.a, -p2.a}; + if (!sys2x2(az, bz, x)){ // assume y = 0 - double ay[2][2] = {{p1.n.x(),p1.n.z()},{p2.n.x(),p2.n.z()}}; - double by[2] = {-p1.a,-p2.a}; - // printf("%g %g %g %g\n",p1.n.y(),p1.n.z(),p2.n.y(),p2.n.z()); + double ay[2][2] = {{p1.n.x(), p1.n.z()}, {p2.n.x(), p2.n.z()}}; + double by[2] = {-p1.a, -p2.a}; if (!sys2x2(ay,by,x)){ Msg::Error("parallel planes do not intersect"); } else { - p = SPoint3(x[0],0.0,x[1]); + p = SPoint3(x[0], 0., x[1]); } } else{ - p = SPoint3(0.0,x[0],x[1]); + p = SPoint3(0., x[0], x[1]); } } else{ - p = SPoint3(x[0],x[1],0.0); - } + p = SPoint3(x[0], x[1], 0.); + } } - SPoint3 orthogonalProjection (SPoint3 &a){ - // (x - a) * t = 0 --> - // x = p + u t --> (p + ut - a) * t = 0 --> u = (a-p) * t - const double u = dot(a-p,t); + SPoint3 orthogonalProjection (SPoint3 &a) + { + // (x - a) * t = 0 --> + // x = p + u t --> (p + ut - a) * t = 0 --> u = (a-p) * t + const double u = dot(a - p, t); return SPoint3(p.x() + t.x() * u,p.y() + t.y() * u,p.z() + t.z() * u); } - }; - static void copyMesh(GFace *source, GFace *target) { - // printf("%d %d \n",source->tag(),target->tag()); - std::map<MVertex*, MVertex*> vs2vt; std::list<GEdge*> edges = target->edges(); { @@ -128,7 +125,7 @@ static void copyMesh(GFace *source, GFace *target) std::map<int, int>::iterator adnksd = target->edgeCounterparts.find((*it)->tag()); int source_e; if(adnksd != target->edgeCounterparts.end()) - source_e = adnksd->second; + source_e = adnksd->second; else{ sign = -1; adnksd = target->edgeCounterparts.find(-(*it)->tag()); @@ -140,37 +137,25 @@ static void copyMesh(GFace *source, GFace *target) return; } } - GEdge *se = source->model()->getEdgeByTag(abs(source_e)); GEdge *te = *it; if (source_e * sign > 0){ - vs2vt[se->getBeginVertex()->mesh_vertices[0]] = te->getBeginVertex()->mesh_vertices[0]; - vs2vt[se->getEndVertex()->mesh_vertices[0]] = te->getEndVertex()->mesh_vertices[0]; + vs2vt[se->getBeginVertex()->mesh_vertices[0]] = + te->getBeginVertex()->mesh_vertices[0]; + vs2vt[se->getEndVertex()->mesh_vertices[0]] = + te->getEndVertex()->mesh_vertices[0]; } else { - vs2vt[se->getBeginVertex()->mesh_vertices[0]] = te->getEndVertex()->mesh_vertices[0]; - vs2vt[se->getEndVertex()->mesh_vertices[0]] = te->getBeginVertex()->mesh_vertices[0]; + vs2vt[se->getBeginVertex()->mesh_vertices[0]] = + te->getEndVertex()->mesh_vertices[0]; + vs2vt[se->getEndVertex()->mesh_vertices[0]] = + te->getBeginVertex()->mesh_vertices[0]; } // iterate on source vertices for (unsigned i = 0; i < te->mesh_vertices.size(); i++){ MVertex *vt = te->mesh_vertices[i]; - MVertex *vs = se->mesh_vertices[source_e * sign > 0 ? i : te->mesh_vertices.size() - i - 1]; - /* - MVertex *vt_on_master; - if (te->meshMaster() == te->tag())vt_on_master =vt; - else vt_on_master = te->correspondingVertices[vt]; - - if (se->meshMaster() == se->tag()){ - vs = vt_on_master; - } - else { - for (unsigned j = 0; j < se->mesh_vertices.size(); j++){ - vs = se->mesh_vertices[j]; - MVertex *vs_on_master = se->correspondingVertices[vs]; - if (vs_on_master == vt_on_master)break; - } - } - */ + MVertex *vs = se->mesh_vertices[source_e * sign > 0 ? i : + te->mesh_vertices.size() - i - 1]; vs2vt[vs] = vt; } } @@ -181,14 +166,16 @@ static void copyMesh(GFace *source, GFace *target) SVector3 DX; int count = 0; - for (std::map<MVertex*, MVertex*>::iterator it = vs2vt.begin(); it != vs2vt.end() ; ++it){ + for (std::map<MVertex*, MVertex*>::iterator it = vs2vt.begin(); + it != vs2vt.end() ; ++it){ MVertex *vs = it->first; MVertex *vt = it->second; if (count == 0) DX = SVector3(vt->x() - vs->x(), vt->y() - vs->y(), vt->z() - vs->z()); else { - SVector3 DX2 = DX - SVector3 (vt->x() - vs->x(), vt->y() - vs->y(), vt->z() - vs->z()); - if (DX2.norm() > DX.norm() * 1.e-8)translation = false; + SVector3 DX2 = DX - SVector3 (vt->x() - vs->x(), vt->y() - vs->y(), + vt->z() - vs->z()); + if (DX2.norm() > DX.norm() * 1.e-8) translation = false; } count ++; } @@ -200,58 +187,56 @@ static void copyMesh(GFace *source, GFace *target) count = 0; rotation = true; std::vector<SPoint3> mps,mpt; - for (std::map<MVertex*, MVertex*>::iterator it = vs2vt.begin(); it != vs2vt.end() ; ++it){ + for (std::map<MVertex*, MVertex*>::iterator it = vs2vt.begin(); + it != vs2vt.end() ; ++it){ MVertex *vs = it->first; MVertex *vt = it->second; mps.push_back(SPoint3(vs->x(),vs->y(),vs->z())); - // printf("klax %d point %g %g %g\n",vs->onWhat()->tag(),vs->x(),vs->y(),vs->z()); - mpt.push_back(SPoint3(vt->x(),vt->y(),vt->z())); - } - mean_plane mean_source,mean_target; - computeMeanPlaneSimple(mps,mean_source); - computeMeanPlaneSimple(mpt,mean_target); - myPlane PLANE_SOURCE (SPoint3(mean_source.x,mean_source.y,mean_source.z), - SVector3(mean_source.a,mean_source.b,mean_source.c)); - myPlane PLANE_TARGET (SPoint3(mean_target.x,mean_target.y,mean_target.z), - SVector3(mean_target.a,mean_target.b,mean_target.c)); - // printf("%g %g %g vs %g %g %g \n",PLANE_SOURCE.n.x(),PLANE_SOURCE.n.y(),PLANE_SOURCE.n.z(), - // PLANE_TARGET.n.x(),PLANE_TARGET.n.y(),PLANE_TARGET.n.z()); - LINE = myLine (PLANE_SOURCE,PLANE_TARGET); + mpt.push_back(SPoint3(vt->x(), vt->y(), vt->z())); + } + mean_plane mean_source, mean_target; + computeMeanPlaneSimple(mps, mean_source); + computeMeanPlaneSimple(mpt, mean_target); + myPlane PLANE_SOURCE(SPoint3(mean_source.x,mean_source.y,mean_source.z), + SVector3(mean_source.a,mean_source.b,mean_source.c)); + myPlane PLANE_TARGET(SPoint3(mean_target.x,mean_target.y,mean_target.z), + SVector3(mean_target.a,mean_target.b,mean_target.c)); + LINE = myLine(PLANE_SOURCE, PLANE_TARGET); // LINE is the axis of rotation // let us compute the angle of rotation count = 0; - for (std::map<MVertex*, MVertex*>::iterator it = vs2vt.begin(); it != vs2vt.end() ; ++it){ + for (std::map<MVertex*, MVertex*>::iterator it = vs2vt.begin(); + it != vs2vt.end(); ++it){ MVertex *vs = it->first; MVertex *vt = it->second; - // project both points on the axis : that should be the same point ! - SPoint3 ps = SPoint3(vs->x(),vs->y(),vs->z()); - SPoint3 pt = SPoint3(vt->x(),vt->y(),vt->z()); + // project both points on the axis: that should be the same point ! + SPoint3 ps = SPoint3(vs->x(), vs->y(), vs->z()); + SPoint3 pt = SPoint3(vt->x(), vt->y(), vt->z()); SPoint3 p_ps = LINE.orthogonalProjection (ps); SPoint3 p_pt = LINE.orthogonalProjection (pt); SVector3 dist1 = ps - pt; SVector3 dist2 = p_ps - p_pt; - if (dist2.norm() > 1.e-8*dist1.norm()){ - // printf("%g %g %g vs %g %g %g\n",ps.x(),ps.y(),ps.z(),pt.x(),pt.y(),pt.z()); - // printf("%g %g %g vs %g %g %g\n",p_ps.x(),p_ps.y(),p_ps.z(),p_pt.x(),p_pt.y(),p_pt.z()); + if (dist2.norm() > 1.e-8 * dist1.norm()){ rotation = false; } SVector3 t1 = ps - p_ps; SVector3 t2 = pt - p_pt; if (t1.norm() > 1.e-8 * dist1.norm()){ - if (count == 0)ANGLE = myAngle (t1,t2,LINE.t); + if (count == 0) + ANGLE = myAngle (t1, t2, LINE.t); else { - double ANGLE2 = myAngle (t1,t2,LINE.t); - // printf("ANGLE2 = %12.5E\n",ANGLE2); - if (fabs (ANGLE2-ANGLE) > 1.e-8)rotation = false; + double ANGLE2 = myAngle(t1, t2, LINE.t); + if (fabs (ANGLE2-ANGLE) > 1.e-8) rotation = false; } count++; } } - if (rotation){ - Msg::Info("COPYMESH : Rotation found AXIS (%g,%g,%g) POINT (%g %g %g) ANGLE %g",LINE.t.x(),LINE.t.y(),LINE.t.z(),LINE.p.x(),LINE.p.y(),LINE.p.z(),ANGLE*180/M_PI); + Msg::Info("Periodic mesh rotation found: axis (%g,%g,%g) point (%g %g %g) angle %g", + LINE.t.x(), LINE.t.y(), LINE.t.z(), LINE.p.x(), LINE.p.y(), LINE.p.z(), + ANGLE * 180 / M_PI); double ux = LINE.t.x(); double uy = LINE.t.y(); double uz = LINE.t.z(); @@ -266,18 +251,20 @@ static void copyMesh(GFace *source, GFace *target) rot[2][2] = cos (ANGLE) + uz*uz*(1.-cos(ANGLE)); } else { - Msg::Error ("COPYMESH : Only rotations or translations can be taken into account for peridic faces, face %d not meshed",target->tag()); + Msg::Error("Only rotations or translations can be currently taken into account " + "for peridic faces: face %d not meshed", target->tag()); return; } } else{ - Msg::Info("COPYMESH : Translation found DX = (%g,%g,%g)",DX.x(),DX.y(),DX.z()); + Msg::Info("Periodic mesh translation found: dx = (%g,%g,%g)", + DX.x(), DX.y(), DX.z()); } // now transform !!! for(unsigned int i = 0; i < source->mesh_vertices.size(); i++){ MVertex *vs = source->mesh_vertices[i]; - + SPoint2 XXX; if (translation) { SPoint3 tp (vs->x() + DX.x(),vs->y() + DX.y(),vs->z() + DX.z()); @@ -285,7 +272,7 @@ static void copyMesh(GFace *source, GFace *target) } else if (rotation){ SPoint3 ps = SPoint3(vs->x(),vs->y(),vs->z()); - SPoint3 p_ps = LINE.orthogonalProjection (ps); + SPoint3 p_ps = LINE.orthogonalProjection(ps); SPoint3 P = ps - p_ps, res; matvec(rot, P, res); res += p_ps; @@ -298,7 +285,6 @@ static void copyMesh(GFace *source, GFace *target) vs2vt[vs] = vt; } - for (unsigned i = 0; i < source->triangles.size(); i++){ MVertex *vt[3]; for (int j = 0; j < 3; j++){ @@ -306,22 +292,22 @@ static void copyMesh(GFace *source, GFace *target) vt[j] = vs2vt[vs]; } if (!vt[0] || !vt[1] ||!vt[2]){ - Msg::Fatal("yet another error in the copymesh procedure %p %p %p %d %d %d", + Msg::Fatal("Yet another error in the copyMesh procedure %p %p %p %d %d %d", vt[0], vt[1], vt[2], source->triangles[i]->getVertex(0)->onWhat()->dim(), source->triangles[i]->getVertex(1)->onWhat()->dim(), source->triangles[i]->getVertex(2)->onWhat()->dim()); } target->triangles.push_back(new MTriangle(vt[0], vt[1], vt[2])); } - + for (unsigned i = 0; i < source->quadrangles.size(); i++){ MVertex *v1 = vs2vt[source->quadrangles[i]->getVertex(0)]; MVertex *v2 = vs2vt[source->quadrangles[i]->getVertex(1)]; MVertex *v3 = vs2vt[source->quadrangles[i]->getVertex(2)]; MVertex *v4 = vs2vt[source->quadrangles[i]->getVertex(3)]; if (!v1 || !v2 || !v3 || !v4){ - Msg::Fatal("yet another error in the copymesh procedure %p %p %p %p %d %d %d %d", - v1, v2, v3, v4, + Msg::Fatal("Yet another error in the copymesh procedure %p %p %p %p %d %d %d %d", + v1, v2, v3, v4, source->quadrangles[i]->getVertex(0)->onWhat()->dim(), source->quadrangles[i]->getVertex(1)->onWhat()->dim(), source->quadrangles[i]->getVertex(2)->onWhat()->dim(), @@ -455,8 +441,7 @@ static void remeshUnrecoveredEdges(std::map<MVertex*, BDS_Point*> &recoverMapInv static bool algoDelaunay2D(GFace *gf) { - - // FIXME + // FIXME // if(!noSeam(gf)) // return false; @@ -1309,7 +1294,7 @@ bool meshGenerator(GFace *gf, int RECUR_ITER, bowyerWatson(gf,15000); meshGFaceBamg(gf); } - if (!infty || !(CTX::instance()->mesh.recombineAll || gf->meshAttributes.recombine)) + if (!infty || !(CTX::instance()->mesh.recombineAll || gf->meshAttributes.recombine)) laplaceSmoothing(gf, CTX::instance()->mesh.nbSmoothing, infty); } @@ -1915,10 +1900,9 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) // } } - /// This is a structure that we need only for periodic cases - /// We will duplicate the vertices (MVertex) that are on seams - /// - + // This is a structure that we need only for periodic cases + // We will duplicate the vertices (MVertex) that are on seams + std::map<MVertex*, MVertex*> equivalence; std::map<MVertex*, SPoint2> parametricCoordinates; if(algoDelaunay2D(gf)){ @@ -1935,7 +1919,8 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) if (mv1->onWhat()->dim() == 1) { double t; mv1->getParameter(0,t); - mv2 = new MEdgeVertex (mv1->x(),mv1->y(),mv1->z(),mv1->onWhat(), t, ((MEdgeVertex*)mv1)->getLc()); + mv2 = new MEdgeVertex (mv1->x(),mv1->y(),mv1->z(),mv1->onWhat(), t, + ((MEdgeVertex*)mv1)->getLc()); } else if (mv1->onWhat()->dim() == 0) { mv2 = new MVertex (mv1->x(),mv1->y(),mv1->z(),mv1->onWhat()); @@ -1946,7 +1931,6 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) it->second = mv2; equivalence[mv2] = mv1; parametricCoordinates[mv2] = SPoint2(bds->u,bds->v); - // printf("new vertex created %p that replaces %p %g %g %g\n",mv2,mv1,mv2->x(),mv2->y(),mv2->z()); invertMap[mv2] = bds; } else { @@ -1955,7 +1939,7 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) } ++it; } - // recoverMap.insert(new_relations.begin(), new_relations.end()); + // recoverMap.insert(new_relations.begin(), new_relations.end()); } Msg::Info("%d points that are duplicated for delaunay meshing",equivalence.size()); @@ -1991,7 +1975,7 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) // pole if(v1 != v2 && v1 != v3 && v2 != v3){ // we are in the periodic case. if we aim at - // using delaunay mesh generation in thoses cases, + // using delaunay mesh generation in thoses cases, // we should double some of the vertices gf->triangles.push_back(new MTriangle(v1, v2, v3)); } @@ -2014,13 +1998,14 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) } bool infty = false; - if (gf->getMeshingAlgo() == ALGO_2D_FRONTAL_QUAD || gf->getMeshingAlgo() == ALGO_2D_PACK_PRLGRMS) + if (gf->getMeshingAlgo() == ALGO_2D_FRONTAL_QUAD || + gf->getMeshingAlgo() == ALGO_2D_PACK_PRLGRMS) infty = true; if (infty) buildBackGroundMesh (gf, &equivalence, ¶metricCoordinates); // BOUNDARY LAYER modifyInitialMeshForTakingIntoAccountBoundaryLayers(gf); - + if(algoDelaunay2D(gf)){ if(gf->getMeshingAlgo() == ALGO_2D_FRONTAL) @@ -2034,7 +2019,7 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) bowyerWatson(gf,1000000000, &equivalence, ¶metricCoordinates); else meshGFaceBamg(gf); - if (!infty || !(CTX::instance()->mesh.recombineAll || gf->meshAttributes.recombine)) + if (!infty || !(CTX::instance()->mesh.recombineAll || gf->meshAttributes.recombine)) laplaceSmoothing(gf, CTX::instance()->mesh.nbSmoothing, infty); } diff --git a/Numeric/Numeric.cpp b/Numeric/Numeric.cpp index 003f3413e21616d22446f5726ec8a771bdd042f1..1a124c83c503ce4ede6214348fa08acb2ed595ae 100644 --- a/Numeric/Numeric.cpp +++ b/Numeric/Numeric.cpp @@ -34,7 +34,7 @@ double myacos(double a) return acos(a); } double norm2(double a[3][3]) { - double norm2sq = + double norm2sq = SQU(a[0][0])+ SQU(a[0][1])+ SQU(a[0][2])+ @@ -1249,7 +1249,6 @@ int intersection_segments(SPoint3 &p1, SPoint3 &p2, void computeMeanPlaneSimple(const std::vector<SPoint3> &points, mean_plane &meanPlane) { - double xm = 0., ym = 0., zm = 0.; int ndata = points.size(); int na = 3; @@ -1284,7 +1283,7 @@ void computeMeanPlaneSimple(const std::vector<SPoint3> &points, mean_plane &mean res[0] = V(0, min); res[1] = V(1, min); res[2] = V(2, min); - + double xxx = norme(res); res[3] /= xxx; double ex[3], t1[3], t2[3]; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index cf2b40955b0658cd6885c32d8239dc2bc83e0425..1cf226fc160d5e151d193bdc57112de4c56e7e45 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -1,8 +1,9 @@ -/* A Bison parser, made by GNU Bison 2.5. */ +/* A Bison parser, made by GNU Bison 2.4.3. */ -/* Bison implementation for Yacc-like parsers in C +/* Skeleton implementation for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, + 2009, 2010 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -44,7 +45,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.5" +#define YYBISON_VERSION "2.4.3" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -73,7 +74,7 @@ /* Copy the first part of user declarations. */ -/* Line 268 of yacc.c */ +/* Line 189 of yacc.c */ #line 1 "Gmsh.y" // Gmsh - Copyright (C) 1997-2013 C. Geuzaine, J.-F. Remacle @@ -166,8 +167,8 @@ struct doubleXstring{ -/* Line 268 of yacc.c */ -#line 171 "Gmsh.tab.cpp" +/* Line 189 of yacc.c */ +#line 172 "Gmsh.tab.cpp" /* Enabling traces. */ #ifndef YYDEBUG @@ -343,7 +344,7 @@ struct doubleXstring{ typedef union YYSTYPE { -/* Line 293 of yacc.c */ +/* Line 214 of yacc.c */ #line 92 "Gmsh.y" char *c; @@ -356,8 +357,8 @@ typedef union YYSTYPE -/* Line 293 of yacc.c */ -#line 361 "Gmsh.tab.cpp" +/* Line 214 of yacc.c */ +#line 362 "Gmsh.tab.cpp" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -368,8 +369,8 @@ typedef union YYSTYPE /* Copy the second part of user declarations. */ -/* Line 343 of yacc.c */ -#line 373 "Gmsh.tab.cpp" +/* Line 264 of yacc.c */ +#line 374 "Gmsh.tab.cpp" #ifdef short # undef short @@ -472,11 +473,11 @@ YYID (yyi) # define alloca _alloca # else # define YYSTACK_ALLOC alloca -# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef EXIT_SUCCESS -# define EXIT_SUCCESS 0 +# ifndef _STDLIB_H +# define _STDLIB_H 1 # endif # endif # endif @@ -499,24 +500,24 @@ YYID (yyi) # ifndef YYSTACK_ALLOC_MAXIMUM # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM # endif -# if (defined __cplusplus && ! defined EXIT_SUCCESS \ +# if (defined __cplusplus && ! defined _STDLIB_H \ && ! ((defined YYMALLOC || defined malloc) \ && (defined YYFREE || defined free))) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef EXIT_SUCCESS -# define EXIT_SUCCESS 0 +# ifndef _STDLIB_H +# define _STDLIB_H 1 # endif # endif # ifndef YYMALLOC # define YYMALLOC malloc -# if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ # endif # endif # ifndef YYFREE # define YYFREE free -# if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void free (void *); /* INFRINGES ON USER NAME SPACE */ # endif @@ -545,7 +546,23 @@ union yyalloc ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM) -# define YYCOPY_NEEDED 1 +/* Copy COUNT objects from FROM to TO. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(To, From, Count) \ + __builtin_memcpy (To, From, (Count) * sizeof (*(From))) +# else +# define YYCOPY(To, From, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (To)[yyi] = (From)[yyi]; \ + } \ + while (YYID (0)) +# endif +# endif /* Relocate STACK from its old location to the new one. The local variables YYSIZE and YYSTACKSIZE give the old and new number of @@ -565,26 +582,6 @@ union yyalloc #endif -#if defined YYCOPY_NEEDED && YYCOPY_NEEDED -/* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ -# ifndef YYCOPY -# if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -# else -# define YYCOPY(To, From, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (YYID (0)) -# endif -# endif -#endif /* !YYCOPY_NEEDED */ - /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ @@ -1190,8 +1187,8 @@ static const yytype_uint8 yyr2[] = 4, 4, 6, 1, 3 }; -/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. - Performed when YYTABLE doesn't specify something else to do. Zero +/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state + STATE-NUM when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ static const yytype_uint16 yydefact[] = { @@ -1542,7 +1539,8 @@ static const yytype_int16 yypgoto[] = /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which - number is the opposite. If YYTABLE_NINF, syntax error. */ + number is the opposite. If zero, do what YYDEFACT says. + If YYTABLE_NINF, syntax error. */ #define YYTABLE_NINF -5 static const yytype_int16 yytable[] = { @@ -2359,12 +2357,6 @@ static const yytype_int16 yytable[] = 361, 362, 0, 0, 0, 0, 363 }; -#define yypact_value_is_default(yystate) \ - ((yystate) == (-1076)) - -#define yytable_value_is_error(yytable_value) \ - YYID (0) - static const yytype_int16 yycheck[] = { 6, 4, 3, 211, 6, 414, 415, 6, 6, 335, @@ -3372,6 +3364,7 @@ do \ { \ yychar = (Token); \ yylval = (Value); \ + yytoken = YYTRANSLATE (yychar); \ YYPOPSTACK (1); \ goto yybackup; \ } \ @@ -3413,10 +3406,19 @@ while (YYID (0)) #endif -/* This macro is provided for backward compatibility. */ +/* YY_LOCATION_PRINT -- Print the location on the stream. + This macro was not mandated originally: define only if we know + we won't break user code: when these are the locations we know. */ #ifndef YY_LOCATION_PRINT -# define YY_LOCATION_PRINT(File, Loc) ((void) 0) +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# define YY_LOCATION_PRINT(File, Loc) \ + fprintf (File, "%d.%d-%d.%d", \ + (Loc).first_line, (Loc).first_column, \ + (Loc).last_line, (Loc).last_column) +# else +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) +# endif #endif @@ -3608,6 +3610,7 @@ int yydebug; # define YYMAXDEPTH 10000 #endif + #if YYERROR_VERBOSE @@ -3710,142 +3713,115 @@ yytnamerr (char *yyres, const char *yystr) } # endif -/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message - about the unexpected token YYTOKEN for the state stack whose top is - YYSSP. - - Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is - not large enough to hold the message. In that case, also set - *YYMSG_ALLOC to the required number of bytes. Return 2 if the - required number of bytes is too large to store. */ -static int -yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, - yytype_int16 *yyssp, int yytoken) +/* Copy into YYRESULT an error message about the unexpected token + YYCHAR while in state YYSTATE. Return the number of bytes copied, + including the terminating null byte. If YYRESULT is null, do not + copy anything; just return the number of bytes that would be + copied. As a special case, return 0 if an ordinary "syntax error" + message will do. Return YYSIZE_MAXIMUM if overflow occurs during + size calculation. */ +static YYSIZE_T +yysyntax_error (char *yyresult, int yystate, int yychar) { - YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]); - YYSIZE_T yysize = yysize0; - YYSIZE_T yysize1; - enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; - /* Internationalized format string. */ - const char *yyformat = 0; - /* Arguments of yyformat. */ - char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - /* Number of reported tokens (one for the "unexpected", one per - "expected"). */ - int yycount = 0; - - /* There are many possibilities here to consider: - - Assume YYFAIL is not used. It's too flawed to consider. See - <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html> - for details. YYERROR is fine as it does not invoke this - function. - - If this state is a consistent state with a default action, then - the only way this function was invoked is if the default action - is an error action. In that case, don't check for expected - tokens because there are none. - - The only way there can be no lookahead present (in yychar) is if - this state is a consistent state with a default action. Thus, - detecting the absence of a lookahead is sufficient to determine - that there is no unexpected or expected token to report. In that - case, just report a simple "syntax error". - - Don't assume there isn't a lookahead just because this state is a - consistent state with a default action. There might have been a - previous inconsistent state, consistent state with a non-default - action, or user semantic action that manipulated yychar. - - Of course, the expected token list depends on states to have - correct lookahead information, and it depends on the parser not - to perform extra reductions after fetching a lookahead from the - scanner and before detecting a syntax error. Thus, state merging - (from LALR or IELR) and default reductions corrupt the expected - token list. However, the list is correct for canonical LR with - one exception: it will still contain any token that will not be - accepted due to an error action in a later state. - */ - if (yytoken != YYEMPTY) - { - int yyn = yypact[*yyssp]; - yyarg[yycount++] = yytname[yytoken]; - if (!yypact_value_is_default (yyn)) - { - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. In other words, skip the first -YYN actions for - this state because they are default actions. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; - int yyx; - - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR - && !yytable_value_is_error (yytable[yyx + yyn])) - { - if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) - { - yycount = 1; - yysize = yysize0; - break; - } - yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (0, yytname[yyx]); - if (! (yysize <= yysize1 - && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) - return 2; - yysize = yysize1; - } - } - } + int yyn = yypact[yystate]; - switch (yycount) - { -# define YYCASE_(N, S) \ - case N: \ - yyformat = S; \ - break - YYCASE_(0, YY_("syntax error")); - YYCASE_(1, YY_("syntax error, unexpected %s")); - YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); - YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); - YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); - YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); -# undef YYCASE_ - } + if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) + return 0; + else + { + int yytype = YYTRANSLATE (yychar); + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); + YYSIZE_T yysize = yysize0; + YYSIZE_T yysize1; + int yysize_overflow = 0; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + int yyx; + +# if 0 + /* This is so xgettext sees the translatable formats that are + constructed on the fly. */ + YY_("syntax error, unexpected %s"); + YY_("syntax error, unexpected %s, expecting %s"); + YY_("syntax error, unexpected %s, expecting %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); +# endif + char *yyfmt; + char const *yyf; + static char const yyunexpected[] = "syntax error, unexpected %s"; + static char const yyexpecting[] = ", expecting %s"; + static char const yyor[] = " or %s"; + char yyformat[sizeof yyunexpected + + sizeof yyexpecting - 1 + + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) + * (sizeof yyor - 1))]; + char const *yyprefix = yyexpecting; + + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yycount = 1; + + yyarg[0] = yytname[yytype]; + yyfmt = yystpcpy (yyformat, yyunexpected); + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + yyformat[sizeof yyunexpected - 1] = '\0'; + break; + } + yyarg[yycount++] = yytname[yyx]; + yysize1 = yysize + yytnamerr (0, yytname[yyx]); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; + yyfmt = yystpcpy (yyfmt, yyprefix); + yyprefix = yyor; + } - yysize1 = yysize + yystrlen (yyformat); - if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) - return 2; - yysize = yysize1; + yyf = YY_(yyformat); + yysize1 = yysize + yystrlen (yyf); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; - if (*yymsg_alloc < yysize) - { - *yymsg_alloc = 2 * yysize; - if (! (yysize <= *yymsg_alloc - && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) - *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; - return 1; - } + if (yysize_overflow) + return YYSIZE_MAXIMUM; - /* Avoid sprintf, as that infringes on the user's name space. - Don't have undefined behavior even if the translation - produced a string with the wrong number of "%s"s. */ - { - char *yyp = *yymsg; - int yyi = 0; - while ((*yyp = *yyformat) != '\0') - if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) - { - yyp += yytnamerr (yyp, yyarg[yyi++]); - yyformat += 2; - } - else - { - yyp++; - yyformat++; - } - } - return 0; + if (yyresult) + { + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + char *yyp = yyresult; + int yyi = 0; + while ((*yyp = *yyf) != '\0') + { + if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyf += 2; + } + else + { + yyp++; + yyf++; + } + } + } + return yysize; + } } #endif /* YYERROR_VERBOSE */ + /*-----------------------------------------------. | Release the memory associated to this symbol. | @@ -3878,7 +3854,6 @@ yydestruct (yymsg, yytype, yyvaluep) } } - /* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM #if defined __STDC__ || defined __cplusplus @@ -3905,9 +3880,10 @@ YYSTYPE yylval; int yynerrs; -/*----------. -| yyparse. | -`----------*/ + +/*-------------------------. +| yyparse or yypush_parse. | +`-------------------------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -3931,6 +3907,8 @@ yyparse () #endif #endif { + + int yystate; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; @@ -4085,7 +4063,7 @@ yybackup: /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; - if (yypact_value_is_default (yyn)) + if (yyn == YYPACT_NINF) goto yydefault; /* Not known => get a lookahead token if don't already have one. */ @@ -4116,8 +4094,8 @@ yybackup: yyn = yytable[yyn]; if (yyn <= 0) { - if (yytable_value_is_error (yyn)) - goto yyerrlab; + if (yyn == 0 || yyn == YYTABLE_NINF) + goto yyerrlab; yyn = -yyn; goto yyreduce; } @@ -4172,171 +4150,171 @@ yyreduce: { case 3: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 165 "Gmsh.y" - { yyerrok; return 1; } + { yyerrok; return 1; ;} break; case 6: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 176 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 7: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 177 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 8: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 178 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 9: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 179 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 10: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 180 "Gmsh.y" - { List_Delete((yyvsp[(1) - (1)].l)); return 1; } + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 11: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 181 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 12: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 182 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 13: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 183 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 14: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 184 "Gmsh.y" - { List_Delete((yyvsp[(1) - (1)].l)); return 1; } + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 15: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 185 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 16: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 186 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 17: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 187 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 18: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 188 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 19: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 189 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 20: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 190 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 21: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 191 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 22: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 192 "Gmsh.y" - { return 1; } + { return 1; ;} break; case 23: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 197 "Gmsh.y" { (yyval.c) = (char*)"w"; - } + ;} break; case 24: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 201 "Gmsh.y" { (yyval.c) = (char*)"a"; - } + ;} break; case 25: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 208 "Gmsh.y" { Msg::Direct((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); - } + ;} break; case 26: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 213 "Gmsh.y" { Msg::Error((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); - } + ;} break; case 27: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 218 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(6) - (7)].c)); @@ -4350,12 +4328,12 @@ yyreduce: } Free((yyvsp[(3) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - } + ;} break; case 28: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 232 "Gmsh.y" { char tmpstring[5000]; @@ -4368,12 +4346,12 @@ yyreduce: Msg::Direct(tmpstring); Free((yyvsp[(3) - (7)].c)); List_Delete((yyvsp[(5) - (7)].l)); - } + ;} break; case 29: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 245 "Gmsh.y" { char tmpstring[5000]; @@ -4386,12 +4364,12 @@ yyreduce: Msg::Error(tmpstring); Free((yyvsp[(3) - (7)].c)); List_Delete((yyvsp[(5) - (7)].l)); - } + ;} break; case 30: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 258 "Gmsh.y" { char tmpstring[5000]; @@ -4414,12 +4392,12 @@ yyreduce: Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(8) - (9)].c)); List_Delete((yyvsp[(5) - (9)].l)); - } + ;} break; case 31: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 286 "Gmsh.y" { #if defined(HAVE_POST) @@ -4433,12 +4411,12 @@ yyreduce: delete ViewData; #endif Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(2) - (6)].c)); - } + ;} break; case 32: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 300 "Gmsh.y" { #if defined(HAVE_POST) @@ -4449,12 +4427,12 @@ yyreduce: } #endif Free((yyvsp[(2) - (6)].c)); - } + ;} break; case 33: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 311 "Gmsh.y" { #if defined(HAVE_POST) @@ -4465,51 +4443,51 @@ yyreduce: } #endif Free((yyvsp[(2) - (6)].c)); - } + ;} break; case 34: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 325 "Gmsh.y" { #if defined(HAVE_POST) ViewData = new PViewDataList(); #endif - } + ;} break; case 40: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 339 "Gmsh.y" - { ViewCoord.push_back((yyvsp[(1) - (1)].d)); } + { ViewCoord.push_back((yyvsp[(1) - (1)].d)); ;} break; case 41: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 341 "Gmsh.y" - { ViewCoord.push_back((yyvsp[(3) - (3)].d)); } + { ViewCoord.push_back((yyvsp[(3) - (3)].d)); ;} break; case 42: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 346 "Gmsh.y" - { if(ViewValueList) ViewValueList->push_back((yyvsp[(1) - (1)].d)); } + { if(ViewValueList) ViewValueList->push_back((yyvsp[(1) - (1)].d)); ;} break; case 43: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 348 "Gmsh.y" - { if(ViewValueList) ViewValueList->push_back((yyvsp[(3) - (3)].d)); } + { if(ViewValueList) ViewValueList->push_back((yyvsp[(3) - (3)].d)); ;} break; case 44: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 353 "Gmsh.y" { #if defined(HAVE_POST) @@ -4613,12 +4591,12 @@ yyreduce: #endif ViewCoord.clear(); Free((yyvsp[(1) - (1)].c)); - } + ;} break; case 45: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 457 "Gmsh.y" { #if defined(HAVE_POST) @@ -4628,47 +4606,47 @@ yyreduce: ViewValueList->push_back(ViewCoord[3 * j + i]); } #endif - } + ;} break; case 46: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 467 "Gmsh.y" { #if defined(HAVE_POST) if(ViewValueList) (*ViewNumList)++; #endif - } + ;} break; case 47: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 476 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(1) - (1)].c)[i]); #endif Free((yyvsp[(1) - (1)].c)); - } + ;} break; case 48: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 483 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(3) - (3)].c)[i]); #endif Free((yyvsp[(3) - (3)].c)); - } + ;} break; case 49: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 493 "Gmsh.y" { #if defined(HAVE_POST) @@ -4677,47 +4655,47 @@ yyreduce: ViewData->T2D.push_back((yyvsp[(7) - (8)].d)); ViewData->T2D.push_back(ViewData->T2C.size()); #endif - } + ;} break; case 50: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 502 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT2++; #endif - } + ;} break; case 51: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 511 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(1) - (1)].c)[i]); #endif Free((yyvsp[(1) - (1)].c)); - } + ;} break; case 52: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 518 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(3) - (3)].c)[i]); #endif Free((yyvsp[(3) - (3)].c)); - } + ;} break; case 53: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 528 "Gmsh.y" { #if defined(HAVE_POST) @@ -4725,23 +4703,23 @@ yyreduce: ViewData->T3D.push_back((yyvsp[(7) - (10)].d)); ViewData->T3D.push_back((yyvsp[(9) - (10)].d)); ViewData->T3D.push_back(ViewData->T3C.size()); #endif - } + ;} break; case 54: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 536 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT3++; #endif - } + ;} break; case 55: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 546 "Gmsh.y" { #if defined(HAVE_POST) @@ -4757,12 +4735,12 @@ yyreduce: ViewData->setInterpolationMatrices(type, ListOfListOfDouble2Matrix((yyvsp[(3) - (8)].l)), ListOfListOfDouble2Matrix((yyvsp[(6) - (8)].l))); #endif - } + ;} break; case 56: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 565 "Gmsh.y" { #if defined(HAVE_POST) @@ -4778,80 +4756,80 @@ yyreduce: ListOfListOfDouble2Matrix((yyvsp[(9) - (14)].l)), ListOfListOfDouble2Matrix((yyvsp[(12) - (14)].l))); #endif - } + ;} break; case 57: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 584 "Gmsh.y" { #if defined(HAVE_POST) ViewValueList = &ViewData->Time; #endif - } + ;} break; case 58: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 590 "Gmsh.y" { - } + ;} break; case 59: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 597 "Gmsh.y" - { (yyval.i) = 0; } + { (yyval.i) = 0; ;} break; case 60: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 598 "Gmsh.y" - { (yyval.i) = 1; } + { (yyval.i) = 1; ;} break; case 61: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 599 "Gmsh.y" - { (yyval.i) = 2; } + { (yyval.i) = 2; ;} break; case 62: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 600 "Gmsh.y" - { (yyval.i) = 3; } + { (yyval.i) = 3; ;} break; case 63: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 601 "Gmsh.y" - { (yyval.i) = 4; } + { (yyval.i) = 4; ;} break; case 64: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 605 "Gmsh.y" - { (yyval.i) = 1; } + { (yyval.i) = 1; ;} break; case 65: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 606 "Gmsh.y" - { (yyval.i) = -1; } + { (yyval.i) = -1; ;} break; case 67: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 615 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c)) && (yyvsp[(2) - (4)].i) && List_Nbr((yyvsp[(3) - (4)].l)) == 1){ @@ -4911,12 +4889,12 @@ yyreduce: } Free((yyvsp[(1) - (4)].c)); List_Delete((yyvsp[(3) - (4)].l)); - } + ;} break; case 68: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 677 "Gmsh.y" { gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (6)].c)]); @@ -4945,12 +4923,12 @@ yyreduce: } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(5) - (6)].l)); - } + ;} break; case 69: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 707 "Gmsh.y" { int index = (int)(yyvsp[(3) - (7)].d); @@ -4983,12 +4961,12 @@ yyreduce: yymsg(0, "Variable '%s' is not a list", (yyvsp[(1) - (7)].c)); } Free((yyvsp[(1) - (7)].c)); - } + ;} break; case 70: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 742 "Gmsh.y" { int index = (int)(yyvsp[(3) - (7)].d); @@ -5021,12 +4999,12 @@ yyreduce: yymsg(0, "Variable '%s' is not a list", (yyvsp[(1) - (7)].c)); } Free((yyvsp[(1) - (7)].c)); - } + ;} break; case 71: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 776 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ @@ -5072,12 +5050,12 @@ yyreduce: Free((yyvsp[(1) - (9)].c)); List_Delete((yyvsp[(4) - (9)].l)); List_Delete((yyvsp[(8) - (9)].l)); - } + ;} break; case 72: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 824 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ @@ -5123,12 +5101,12 @@ yyreduce: Free((yyvsp[(1) - (9)].c)); List_Delete((yyvsp[(4) - (9)].l)); List_Delete((yyvsp[(8) - (9)].l)); - } + ;} break; case 73: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 871 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -5143,12 +5121,12 @@ yyreduce: yymsg(0, "Variable '%s' is a list", (yyvsp[(1) - (3)].c)); } Free((yyvsp[(1) - (3)].c)); - } + ;} break; case 74: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 886 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -5164,45 +5142,45 @@ yyreduce: yymsg(0, "Variable '%s' is not a list", (yyvsp[(1) - (6)].c)); } Free((yyvsp[(1) - (6)].c)); - } + ;} break; case 75: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 902 "Gmsh.y" { gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::string((yyvsp[(3) - (4)].c)); Free((yyvsp[(1) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - } + ;} break; case 76: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 911 "Gmsh.y" { std::string tmp((yyvsp[(5) - (6)].c)); StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), tmp); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); - } + ;} break; case 77: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 917 "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); Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); Free((yyvsp[(8) - (9)].c)); - } + ;} break; case 78: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 926 "Gmsh.y" { double d = 0.; @@ -5220,12 +5198,12 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d); } Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); - } + ;} break; case 79: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 944 "Gmsh.y" { double d = 0.; @@ -5243,12 +5221,12 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d); } Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); - } + ;} break; case 80: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 962 "Gmsh.y" { double d = 0.; @@ -5257,12 +5235,12 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d); } Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(3) - (5)].c)); - } + ;} break; case 81: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 971 "Gmsh.y" { double d = 0.; @@ -5271,32 +5249,32 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d); } Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(6) - (8)].c)); - } + ;} break; case 82: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 983 "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)); - } + ;} break; case 83: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 988 "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)); - } + ;} break; case 84: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 996 "Gmsh.y" { GmshColorTable *ct = GetColorTable(0); @@ -5316,12 +5294,12 @@ yyreduce: } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(5) - (6)].l)); - } + ;} break; case 85: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1016 "Gmsh.y" { GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (9)].d)); @@ -5341,12 +5319,12 @@ yyreduce: } Free((yyvsp[(1) - (9)].c)); List_Delete((yyvsp[(8) - (9)].l)); - } + ;} break; case 86: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1039 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5357,12 +5335,12 @@ yyreduce: else yymsg(0, "Unknown command %s Field", (yyvsp[(1) - (5)].c)); #endif - } + ;} break; case 87: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1050 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5370,12 +5348,12 @@ yyreduce: yymsg(0, "Cannot create field %i of type '%s'", (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c)); #endif Free((yyvsp[(6) - (7)].c)); - } + ;} break; case 88: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1058 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5397,12 +5375,12 @@ yyreduce: yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (9)].d)); #endif Free((yyvsp[(6) - (9)].c)); - } + ;} break; case 89: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1080 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5425,12 +5403,12 @@ yyreduce: #endif Free((yyvsp[(6) - (9)].c)); Free((yyvsp[(8) - (9)].c)); - } + ;} break; case 90: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1103 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5456,12 +5434,12 @@ yyreduce: #endif Free((yyvsp[(6) - (11)].c)); List_Delete((yyvsp[(9) - (11)].l)); - } + ;} break; case 91: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1129 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5479,12 +5457,12 @@ yyreduce: yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (7)].d)); #endif Free((yyvsp[(6) - (7)].c)); - } + ;} break; case 92: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1150 "Gmsh.y" { #if defined(HAVE_PLUGINS) @@ -5496,12 +5474,12 @@ yyreduce: } #endif Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); - } + ;} break; case 93: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1162 "Gmsh.y" { #if defined(HAVE_PLUGINS) @@ -5513,12 +5491,12 @@ yyreduce: } #endif Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); Free((yyvsp[(8) - (9)].c)); - } + ;} break; case 97: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1180 "Gmsh.y" { std::string key((yyvsp[(3) - (3)].c)); @@ -5529,12 +5507,12 @@ yyreduce: gmsh_yysymbols[key].value = val; } Free((yyvsp[(3) - (3)].c)); - } + ;} break; case 98: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1191 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)); @@ -5545,19 +5523,19 @@ yyreduce: gmsh_yysymbols[key].value = val; } Free((yyvsp[(3) - (5)].c)); - } + ;} break; case 99: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1202 "Gmsh.y" - { floatOptions.clear(); charOptions.clear(); } + { floatOptions.clear(); charOptions.clear(); ;} break; case 100: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1204 "Gmsh.y" { std::string key((yyvsp[(3) - (9)].c)); @@ -5567,12 +5545,12 @@ yyreduce: gmsh_yysymbols[key].value = val; } Free((yyvsp[(3) - (9)].c)); - } + ;} break; case 101: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1214 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)), val((yyvsp[(5) - (5)].c)); @@ -5583,19 +5561,19 @@ yyreduce: } Free((yyvsp[(3) - (5)].c)); Free((yyvsp[(5) - (5)].c)); - } + ;} break; case 102: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1225 "Gmsh.y" - { floatOptions.clear(); charOptions.clear(); } + { floatOptions.clear(); charOptions.clear(); ;} break; case 103: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1227 "Gmsh.y" { std::string key((yyvsp[(3) - (9)].c)), val((yyvsp[(6) - (9)].c)); @@ -5605,33 +5583,33 @@ yyreduce: } Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); - } + ;} break; case 104: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1240 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(doubleXstring)); doubleXstring v = {(yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].c)}; List_Add((yyval.l), &v); - } + ;} break; case 105: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1246 "Gmsh.y" { doubleXstring v = {(yyvsp[(3) - (5)].d), (yyvsp[(5) - (5)].c)}; List_Add((yyval.l), &v); - } + ;} break; case 108: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1258 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); @@ -5642,12 +5620,12 @@ yyreduce: } Free((yyvsp[(2) - (3)].c)); List_Delete((yyvsp[(3) - (3)].l)); - } + ;} break; case 109: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1269 "Gmsh.y" { std::string key((yyvsp[(2) - (5)].c)); @@ -5661,12 +5639,12 @@ yyreduce: for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++) Free(((doubleXstring*)List_Pointer((yyvsp[(4) - (5)].l), i))->s); List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 110: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1284 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); @@ -5674,24 +5652,24 @@ yyreduce: charOptions[key].push_back(val); Free((yyvsp[(2) - (3)].c)); Free((yyvsp[(3) - (3)].c)); - } + ;} break; case 113: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1300 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); double val = (yyvsp[(3) - (3)].d); floatOptions[key].push_back(val); Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 114: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1308 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); @@ -5699,12 +5677,12 @@ yyreduce: charOptions[key].push_back(val); Free((yyvsp[(2) - (3)].c)); Free((yyvsp[(3) - (3)].c)); - } + ;} break; case 115: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1317 "Gmsh.y" { std::string key((yyvsp[(2) - (5)].c)); @@ -5717,42 +5695,42 @@ yyreduce: } Free((yyvsp[(2) - (5)].c)); List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 116: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1336 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); - } + ;} break; case 117: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1340 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName (std::string((yyvsp[(1) - (1)].c)), curPhysDim, ++GModel::current()->getGEOInternals()->MaxPhysicalNum); Free((yyvsp[(1) - (1)].c)); - } + ;} break; case 118: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1350 "Gmsh.y" { (yyval.l) = 0; - } + ;} break; case 119: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1354 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(Vertex*)); @@ -5762,30 +5740,30 @@ yyreduce: else{ List_Add((yyval.l), &v); } - } + ;} break; case 120: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1366 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = 0.; - } + ;} break; case 121: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1370 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; - } + ;} break; case 122: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1380 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -5808,21 +5786,21 @@ yyreduce: } (yyval.s).Type = MSH_POINT; (yyval.s).Num = num; - } + ;} break; case 123: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1403 "Gmsh.y" { curPhysDim = 0; - } + ;} break; case 124: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1407 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); @@ -5838,12 +5816,12 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_POINT; (yyval.s).Num = num; - } + ;} break; case 125: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1423 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ @@ -5862,12 +5840,12 @@ yyreduce: // dummy values (yyval.s).Type = 0; (yyval.s).Num = 0; - } + ;} break; case 126: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1445 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -5885,12 +5863,12 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_LINE; (yyval.s).Num = num; - } + ;} break; case 127: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1463 "Gmsh.y" { for (int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -5911,12 +5889,12 @@ yyreduce: } } } - } + ;} break; case 128: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1484 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -5934,12 +5912,12 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_SPLN; (yyval.s).Num = num; - } + ;} break; case 129: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1502 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); @@ -5969,12 +5947,12 @@ yyreduce: List_Delete((yyvsp[(6) - (8)].l)); (yyval.s).Type = MSH_SEGM_CIRC; (yyval.s).Num = num; - } + ;} break; case 130: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1532 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); @@ -6004,12 +5982,12 @@ yyreduce: List_Delete((yyvsp[(6) - (8)].l)); (yyval.s).Type = MSH_SEGM_ELLI; (yyval.s).Num = num; - } + ;} break; case 131: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1562 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -6027,12 +6005,12 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_BSPLN; (yyval.s).Num = num; - } + ;} break; case 132: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1580 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -6050,12 +6028,12 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_BEZIER; (yyval.s).Num = num; - } + ;} break; case 133: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1598 "Gmsh.y" { int num = (int)(yyvsp[(3) - (11)].d); @@ -6081,12 +6059,12 @@ yyreduce: List_Delete((yyvsp[(8) - (11)].l)); (yyval.s).Type = MSH_SEGM_NURBS; (yyval.s).Num = num; - } + ;} break; case 134: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1624 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); @@ -6104,12 +6082,12 @@ yyreduce: Free((yyvsp[(2) - (8)].c)); (yyval.s).Type = MSH_SEGM_LOOP; (yyval.s).Num = num; - } + ;} break; case 135: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1642 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); @@ -6127,21 +6105,21 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_SEGM_COMPOUND; (yyval.s).Num = num; - } + ;} break; case 136: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1660 "Gmsh.y" { curPhysDim = 1; - } + ;} break; case 137: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1664 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); @@ -6157,12 +6135,12 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_LINE; (yyval.s).Num = num; - } + ;} break; case 138: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1683 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); @@ -6180,12 +6158,12 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_SURF_PLAN; (yyval.s).Num = num; - } + ;} break; case 139: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1701 "Gmsh.y" { int num = (int)(yyvsp[(4) - (9)].d), type = 0; @@ -6224,46 +6202,46 @@ yyreduce: List_Delete((yyvsp[(7) - (9)].l)); (yyval.s).Type = type; (yyval.s).Num = num; - } + ;} break; case 140: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1740 "Gmsh.y" { myGmshSurface = 0; (yyval.s).Type = 0; (yyval.s).Num = 0; - } + ;} break; case 141: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1746 "Gmsh.y" { myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); (yyval.s).Type = 0; (yyval.s).Num = 0; - } + ;} break; case 142: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1752 "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)); (yyval.s).Type = 0; (yyval.s).Num = num; - } + ;} break; case 143: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1759 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -6288,12 +6266,12 @@ yyreduce: } (yyval.s).Type = 0; (yyval.s).Num = num; - } + ;} break; case 144: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1784 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -6318,12 +6296,12 @@ yyreduce: } (yyval.s).Type = 0; (yyval.s).Num = num; - } + ;} break; case 145: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1809 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); @@ -6340,12 +6318,12 @@ yyreduce: Free((yyvsp[(2) - (8)].c)); (yyval.s).Type = MSH_SURF_LOOP; (yyval.s).Num = num; - } + ;} break; case 146: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1826 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); @@ -6362,12 +6340,12 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_SURF_COMPOUND; (yyval.s).Num = num; - } + ;} break; case 147: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1844 "Gmsh.y" { int num = (int)(yyvsp[(4) - (12)].d); @@ -6397,21 +6375,21 @@ yyreduce: Free((yyvsp[(8) - (12)].c)); (yyval.s).Type = MSH_SURF_COMPOUND; (yyval.s).Num = num; - } + ;} break; case 148: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1874 "Gmsh.y" { curPhysDim = 2; - } + ;} break; case 149: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1878 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); @@ -6427,12 +6405,12 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_SURFACE; (yyval.s).Num = num; - } + ;} break; case 150: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1898 "Gmsh.y" { yymsg(0, "'Complex Volume' command is deprecated: use 'Volume' instead"); @@ -6450,12 +6428,12 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_VOLUME; (yyval.s).Num = num; - } + ;} break; case 151: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1916 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); @@ -6472,12 +6450,12 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_VOLUME; (yyval.s).Num = num; - } + ;} break; case 152: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1933 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); @@ -6493,21 +6471,21 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_VOLUME_COMPOUND; (yyval.s).Num = num; - } + ;} break; case 153: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1949 "Gmsh.y" { curPhysDim = 3; - } + ;} break; case 154: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1953 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); @@ -6523,62 +6501,62 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_VOLUME; (yyval.s).Num = num; - } + ;} break; case 155: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1975 "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); - } + ;} break; case 156: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1980 "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); - } + ;} break; case 157: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1985 "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); - } + ;} break; case 158: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1990 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); - } + ;} break; case 159: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 1995 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].v)[0], (yyvsp[(5) - (9)].v)[1], (yyvsp[(5) - (9)].v)[2], (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); - } + ;} break; case 160: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2000 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); @@ -6601,23 +6579,23 @@ yyreduce: } Free((yyvsp[(1) - (4)].c)); List_Delete((yyvsp[(3) - (4)].l)); - } + ;} break; case 161: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2023 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); IntersectCurvesWithSurface((yyvsp[(4) - (9)].l), (int)(yyvsp[(8) - (9)].d), (yyval.l)); List_Delete((yyvsp[(4) - (9)].l)); - } + ;} break; case 162: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2029 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape*)); @@ -6625,44 +6603,44 @@ yyreduce: List_Delete((yyvsp[(7) - (9)].l)); SplitCurve((int)(yyvsp[(4) - (9)].d), tmp, (yyval.l)); List_Delete(tmp); - } + ;} break; case 163: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2039 "Gmsh.y" - { (yyval.l) = (yyvsp[(1) - (1)].l); } + { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 164: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2040 "Gmsh.y" - { (yyval.l) = (yyvsp[(1) - (1)].l); } + { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 165: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2045 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); - } + ;} break; case 166: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2049 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); - } + ;} break; case 167: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2053 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ @@ -6685,12 +6663,12 @@ yyreduce: yymsg(1, "Unknown point %d", TheShape.Num); } } - } + ;} break; case 168: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2076 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ @@ -6713,12 +6691,12 @@ yyreduce: yymsg(1, "Unknown curve %d", TheShape.Num); } } - } + ;} break; case 169: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2099 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ @@ -6741,12 +6719,12 @@ yyreduce: yymsg(1, "Unknown surface %d", TheShape.Num); } } - } + ;} break; case 170: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2122 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ @@ -6769,12 +6747,12 @@ yyreduce: yymsg(1, "Unknown volume %d", TheShape.Num); } } - } + ;} break; case 171: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2150 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -6795,12 +6773,12 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (8)].d)); #endif - } + ;} break; case 172: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2171 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -6823,12 +6801,12 @@ yyreduce: Tree_Add(GModel::current()->getGEOInternals()->LevelSets, &l); } #endif - } + ;} break; case 173: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2195 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -6848,12 +6826,12 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (14)].d)); #endif - } + ;} break; case 174: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2216 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -6874,12 +6852,12 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (16)].d)); #endif - } + ;} break; case 175: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2237 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -6899,12 +6877,12 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (12)].d)); #endif - } + ;} break; case 176: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2257 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -7016,12 +6994,12 @@ yyreduce: yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (8)].d)); Free((yyvsp[(2) - (8)].c)); #endif - } + ;} break; case 177: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2369 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -7040,12 +7018,12 @@ yyreduce: yymsg(0, "Wrong levelset definition"); Free((yyvsp[(2) - (8)].c)); Free((yyvsp[(7) - (8)].c)); #endif - } + ;} break; case 178: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2388 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -7083,12 +7061,12 @@ yyreduce: yymsg(0, "Wrong levelset definition"); Free((yyvsp[(2) - (6)].c)); #endif - } + ;} break; case 179: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2427 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) @@ -7191,12 +7169,12 @@ yyreduce: yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (14)].d)); Free((yyvsp[(2) - (14)].c)); #endif - } + ;} break; case 180: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2535 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -7205,23 +7183,23 @@ yyreduce: DeleteShape(TheShape.Type, TheShape.Num); } List_Delete((yyvsp[(3) - (4)].l)); - } + ;} break; case 181: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2544 "Gmsh.y" { #if defined(HAVE_MESH) GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); #endif - } + ;} break; case 182: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2550 "Gmsh.y" { #if defined(HAVE_POST) @@ -7236,12 +7214,12 @@ yyreduce: yymsg(0, "Unknown command 'Delete %s'", (yyvsp[(2) - (6)].c)); #endif Free((yyvsp[(2) - (6)].c)); - } + ;} break; case 183: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2565 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ @@ -7269,12 +7247,12 @@ yyreduce: yymsg(0, "Unknown object or expression to delete '%s'", (yyvsp[(2) - (3)].c)); } Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 184: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2593 "Gmsh.y" { #if defined(HAVE_POST) @@ -7286,12 +7264,12 @@ yyreduce: yymsg(0, "Unknown command 'Delete %s %s'", (yyvsp[(2) - (4)].c), (yyvsp[(3) - (4)].c)); #endif Free((yyvsp[(2) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - } + ;} break; case 185: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2610 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -7300,34 +7278,34 @@ yyreduce: ColorShape(TheShape.Type, TheShape.Num, (yyvsp[(2) - (5)].u)); } List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 186: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2624 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 1); Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 187: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2630 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 0); Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 188: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2636 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -7336,12 +7314,12 @@ yyreduce: VisibilityShape(TheShape.Type, TheShape.Num, 1); } List_Delete((yyvsp[(3) - (4)].l)); - } + ;} break; case 189: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2645 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -7350,12 +7328,12 @@ yyreduce: VisibilityShape(TheShape.Type, TheShape.Num, 0); } List_Delete((yyvsp[(3) - (4)].l)); - } + ;} break; case 190: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2659 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ @@ -7400,12 +7378,12 @@ yyreduce: else yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 191: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2704 "Gmsh.y" { #if defined(HAVE_POST) @@ -7422,12 +7400,12 @@ yyreduce: yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); #endif Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - } + ;} break; case 192: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2721 "Gmsh.y" { #if defined(HAVE_POST) && defined(HAVE_MESH) @@ -7442,12 +7420,12 @@ yyreduce: yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); #endif Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(3) - (7)].c)); - } + ;} break; case 193: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2736 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ @@ -7466,12 +7444,12 @@ yyreduce: else yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); Free((yyvsp[(1) - (3)].c)); - } + ;} break; case 194: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2755 "Gmsh.y" { #if defined(HAVE_PLUGINS) @@ -7483,12 +7461,12 @@ yyreduce: } #endif Free((yyvsp[(3) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - } + ;} break; case 195: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2767 "Gmsh.y" { #if defined(HAVE_POST) @@ -7512,103 +7490,103 @@ yyreduce: yymsg(0, "Unknown 'Combine' command"); #endif Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 196: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2791 "Gmsh.y" { Msg::Exit(0); - } + ;} break; case 197: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2795 "Gmsh.y" { gmsh_yyerrorstate = 999; // this will be checked when yyparse returns YYABORT; - } + ;} break; case 198: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2800 "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 // GModel directly during parsing. GModel::current()->importGEOInternals(); - } + ;} break; case 199: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2807 "Gmsh.y" { CTX::instance()->forcedBBox = 0; GModel::current()->importGEOInternals(); SetBoundingBox(); - } + ;} break; case 200: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2813 "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)); - } + ;} break; case 201: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2818 "Gmsh.y" { #if defined(HAVE_OPENGL) drawContext::global()->draw(); #endif - } + ;} break; case 202: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2824 "Gmsh.y" { GModel::current()->createTopologyFromMesh(); - } + ;} break; case 203: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2828 "Gmsh.y" { GModel::current()->createTopologyFromMesh(1); - } + ;} break; case 204: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2832 "Gmsh.y" { GModel::current()->importGEOInternals(); GModel::current()->refineMesh(CTX::instance()->mesh.secondOrderLinear); - } + ;} break; case 205: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2842 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); @@ -7625,12 +7603,12 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - } + ;} break; case 206: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2859 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); @@ -7647,12 +7625,12 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - } + ;} break; case 207: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2876 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); @@ -7673,12 +7651,12 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - } + ;} break; case 208: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2897 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); @@ -7699,12 +7677,12 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - } + ;} break; case 209: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2918 "Gmsh.y" { if(ImbricatedLoop <= 0){ @@ -7739,12 +7717,12 @@ yyreduce: else ImbricatedLoop--; } - } + ;} break; case 210: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2953 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction @@ -7752,52 +7730,52 @@ yyreduce: yymsg(0, "Redefinition of function %s", (yyvsp[(2) - (2)].c)); skip_until(NULL, "Return"); //FIXME: wee leak $2 - } + ;} break; case 211: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2961 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) yymsg(0, "Error while exiting function"); - } + ;} break; case 212: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2967 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction ((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) yymsg(0, "Unknown function %s", (yyvsp[(2) - (3)].c)); //FIXME: wee leak $2 - } + ;} break; case 213: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2974 "Gmsh.y" { if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); - } + ;} break; case 214: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2978 "Gmsh.y" { - } + ;} break; case 215: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2987 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); @@ -7805,12 +7783,12 @@ yyreduce: (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 216: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 2995 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); @@ -7818,12 +7796,12 @@ yyreduce: 0., 0., 0., (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), NULL, (yyval.l)); List_Delete((yyvsp[(10) - (11)].l)); - } + ;} break; case 217: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3003 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); @@ -7831,22 +7809,22 @@ yyreduce: (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(7) - (13)].v)[0], (yyvsp[(7) - (13)].v)[1], (yyvsp[(7) - (13)].v)[2], (yyvsp[(9) - (13)].d), NULL, (yyval.l)); List_Delete((yyvsp[(12) - (13)].l)); - } + ;} break; case 218: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3011 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 219: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3016 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); @@ -7854,22 +7832,22 @@ yyreduce: (yyvsp[(2) - (7)].v)[0], (yyvsp[(2) - (7)].v)[1], (yyvsp[(2) - (7)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); List_Delete((yyvsp[(4) - (7)].l)); - } + ;} break; case 220: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3024 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 221: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3029 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); @@ -7877,22 +7855,22 @@ yyreduce: 0., 0., 0., (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(7) - (13)].d), &extr, (yyval.l)); List_Delete((yyvsp[(10) - (13)].l)); - } + ;} break; case 222: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3037 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 223: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3042 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); @@ -7900,356 +7878,356 @@ yyreduce: (yyvsp[(3) - (15)].v)[0], (yyvsp[(3) - (15)].v)[1], (yyvsp[(3) - (15)].v)[2], (yyvsp[(5) - (15)].v)[0], (yyvsp[(5) - (15)].v)[1], (yyvsp[(5) - (15)].v)[2], (yyvsp[(7) - (15)].v)[0], (yyvsp[(7) - (15)].v)[1], (yyvsp[(7) - (15)].v)[2], (yyvsp[(9) - (15)].d), &extr, (yyval.l)); List_Delete((yyvsp[(12) - (15)].l)); - } + ;} break; case 224: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3050 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 225: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3055 "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., &extr, (yyval.l)); List_Delete((yyvsp[(3) - (6)].l)); - } + ;} break; case 226: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3063 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); - } + ;} break; case 227: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3070 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); - } + ;} break; case 228: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3077 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); - } + ;} break; case 229: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3084 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); - } + ;} break; case 230: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3091 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); - } + ;} break; case 231: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3098 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); - } + ;} break; case 232: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3105 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); - } + ;} break; case 233: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3112 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); - } + ;} break; case 234: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3119 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); - } + ;} break; case 235: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3126 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 236: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3131 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); - } + ;} break; case 237: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3138 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 238: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3143 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); - } + ;} break; case 239: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3150 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 240: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3155 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); - } + ;} break; case 241: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3162 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 242: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3167 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); - } + ;} break; case 243: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3174 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 244: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3179 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); - } + ;} break; case 245: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3186 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 246: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3191 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); - } + ;} break; case 247: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3198 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 248: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3203 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); - } + ;} break; case 249: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3210 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 250: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3215 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); - } + ;} break; case 251: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3222 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - } + ;} break; case 252: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3227 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); - } + ;} break; case 253: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3238 "Gmsh.y" { - } + ;} break; case 254: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3241 "Gmsh.y" { - } + ;} break; case 255: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3247 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; @@ -8258,12 +8236,12 @@ yyreduce: extr.mesh.hLayer.clear(); extr.mesh.NbElmLayer.push_back((int)fabs((yyvsp[(3) - (5)].d))); extr.mesh.hLayer.push_back(1.); - } + ;} break; case 256: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3256 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; @@ -8283,12 +8261,12 @@ yyreduce: yymsg(0, "Wrong layer definition {%d, %d}", List_Nbr((yyvsp[(3) - (7)].l)), List_Nbr((yyvsp[(5) - (7)].l))); List_Delete((yyvsp[(3) - (7)].l)); List_Delete((yyvsp[(5) - (7)].l)); - } + ;} break; case 257: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3276 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); @@ -8311,57 +8289,57 @@ yyreduce: List_Delete((yyvsp[(3) - (9)].l)); List_Delete((yyvsp[(5) - (9)].l)); List_Delete((yyvsp[(7) - (9)].l)); - } + ;} break; case 258: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3299 "Gmsh.y" { extr.mesh.Recombine = true; - } + ;} break; case 259: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3303 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_DBL_1; - } + ;} break; case 260: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3307 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_DBL_1_RECOMB; - } + ;} break; case 261: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3311 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_SNGL_1; - } + ;} break; case 262: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3315 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_SNGL_1_RECOMB; - } + ;} break; case 263: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3319 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); @@ -8380,12 +8358,12 @@ yyreduce: } } List_Delete((yyvsp[(6) - (9)].l)); - } + ;} break; case 264: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3338 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (6)].c), "Index")) @@ -8393,21 +8371,21 @@ yyreduce: else if(!strcmp((yyvsp[(2) - (6)].c), "View")) extr.mesh.ViewIndex = (yyvsp[(4) - (6)].d); Free((yyvsp[(2) - (6)].c)); - } + ;} break; case 265: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3350 "Gmsh.y" { (yyval.v)[0] = (yyval.v)[1] = 1.; - } + ;} break; case 266: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3354 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) @@ -8420,21 +8398,21 @@ yyreduce: } (yyval.v)[1] = (yyvsp[(3) - (3)].d); Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 267: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3369 "Gmsh.y" { (yyval.i) = -1; // left - } + ;} break; case 268: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3373 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "Right")) @@ -8444,48 +8422,48 @@ yyreduce: else // alternated (yyval.i) = 0; Free((yyvsp[(1) - (1)].c)); - } + ;} break; case 269: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3385 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); - } + ;} break; case 270: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3389 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); - } + ;} break; case 271: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3394 "Gmsh.y" { (yyval.i) = 45; - } + ;} break; case 272: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3398 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); - } + ;} break; case 273: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3405 "Gmsh.y" { int type = (int)(yyvsp[(6) - (7)].v)[0]; @@ -8541,12 +8519,12 @@ yyreduce: } List_Delete((yyvsp[(3) - (7)].l)); } - } + ;} break; case 274: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3461 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (6)].l)); @@ -8616,22 +8594,22 @@ yyreduce: } } List_Delete((yyvsp[(4) - (6)].l)); - } + ;} break; case 275: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3531 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); - } + ;} break; case 276: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3536 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (5)].l)); @@ -8698,12 +8676,12 @@ yyreduce: } } List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 277: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3603 "Gmsh.y" { if(!(yyvsp[(2) - (3)].l)){ @@ -8739,12 +8717,12 @@ yyreduce: } List_Delete((yyvsp[(2) - (3)].l)); } - } + ;} break; case 278: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3639 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (7)].l)); i++){ @@ -8752,12 +8730,12 @@ yyreduce: List_Read((yyvsp[(4) - (7)].l), i, &d); CTX::instance()->mesh.algo2d_per_face[(int)d] = (int)(yyvsp[(6) - (7)].d); } - } + ;} break; case 279: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3648 "Gmsh.y" { if(!(yyvsp[(3) - (5)].l)){ @@ -8800,12 +8778,12 @@ yyreduce: } List_Delete((yyvsp[(3) - (5)].l)); } - } + ;} break; case 280: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3691 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ @@ -8844,12 +8822,12 @@ yyreduce: } List_Delete((yyvsp[(3) - (4)].l)); } - } + ;} break; case 281: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3730 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ @@ -8869,12 +8847,12 @@ yyreduce: } } List_Delete((yyvsp[(3) - (6)].l)); - } + ;} break; case 282: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3755 "Gmsh.y" { if(List_Nbr((yyvsp[(5) - (6)].l)) != List_Nbr((yyvsp[(3) - (6)].l))){ @@ -8901,12 +8879,12 @@ yyreduce: } List_Delete((yyvsp[(3) - (6)].l)); List_Delete((yyvsp[(5) - (6)].l)); - } + ;} break; case 283: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3783 "Gmsh.y" { if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ @@ -8945,12 +8923,12 @@ yyreduce: } List_Delete((yyvsp[(5) - (12)].l)); List_Delete((yyvsp[(10) - (12)].l)); - } + ;} break; case 284: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3829 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); @@ -8973,12 +8951,12 @@ yyreduce: else yymsg(0, "Unknown surface %d", (int)(yyvsp[(8) - (10)].d)); } - } + ;} break; case 285: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3852 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); @@ -9001,37 +8979,37 @@ yyreduce: else yymsg(0, "Unknown surface %d", (int)(yyvsp[(8) - (10)].d)); } - } + ;} break; case 286: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3875 "Gmsh.y" { - } + ;} break; case 287: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3878 "Gmsh.y" { - } + ;} break; case 288: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3887 "Gmsh.y" { ReplaceAllDuplicates(); - } + ;} break; case 289: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3891 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) @@ -9041,12 +9019,12 @@ yyreduce: else yymsg(0, "Unknown coherence command"); Free((yyvsp[(2) - (3)].c)); - } + ;} break; case 290: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3901 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (6)].l)) >= 2){ @@ -9076,44 +9054,44 @@ yyreduce: yymsg(0, "Need at least two points to merge"); ReplaceAllDuplicates(); List_Delete((yyvsp[(4) - (6)].l)); - } + ;} break; case 291: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3935 "Gmsh.y" - { (yyval.c) = (char*)"Homology"; } + { (yyval.c) = (char*)"Homology"; ;} break; case 292: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3936 "Gmsh.y" - { (yyval.c) = (char*)"Cohomology"; } + { (yyval.c) = (char*)"Cohomology"; ;} break; case 293: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3937 "Gmsh.y" - { (yyval.c) = (char*)"Betti"; } + { (yyval.c) = (char*)"Betti"; ;} break; case 294: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3942 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < 4; i++) dim.push_back(i); GModel::current()->addHomologyRequest((yyvsp[(1) - (2)].c), domain, subdomain, dim); - } + ;} break; case 295: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3948 "Gmsh.y" { std::vector<int> domain, subdomain, dim; @@ -9125,12 +9103,12 @@ yyreduce: for(int i = 0; i < 4; i++) dim.push_back(i); GModel::current()->addHomologyRequest((yyvsp[(1) - (5)].c), domain, subdomain, dim); List_Delete((yyvsp[(3) - (5)].l)); - } + ;} break; case 296: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3960 "Gmsh.y" { std::vector<int> domain, subdomain, dim; @@ -9148,12 +9126,12 @@ yyreduce: GModel::current()->addHomologyRequest((yyvsp[(1) - (7)].c), domain, subdomain, dim); List_Delete((yyvsp[(3) - (7)].l)); List_Delete((yyvsp[(5) - (7)].l)); - } + ;} break; case 297: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 3978 "Gmsh.y" { std::vector<int> domain, subdomain, dim; @@ -9176,500 +9154,500 @@ yyreduce: List_Delete((yyvsp[(6) - (10)].l)); List_Delete((yyvsp[(8) - (10)].l)); List_Delete((yyvsp[(3) - (10)].l)); - } + ;} break; case 298: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4005 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (1)].d); } + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 299: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4006 "Gmsh.y" - { (yyval.d) = (yyvsp[(2) - (3)].d); } + { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; case 300: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4007 "Gmsh.y" - { (yyval.d) = -(yyvsp[(2) - (2)].d); } + { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; case 301: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4008 "Gmsh.y" - { (yyval.d) = (yyvsp[(2) - (2)].d); } + { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; case 302: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4009 "Gmsh.y" - { (yyval.d) = !(yyvsp[(2) - (2)].d); } + { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; case 303: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4010 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; case 304: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4011 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; case 305: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4012 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; case 306: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4014 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); else (yyval.d) = (yyvsp[(1) - (3)].d) / (yyvsp[(3) - (3)].d); - } + ;} break; case 307: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4020 "Gmsh.y" - { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); } + { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; case 308: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4021 "Gmsh.y" - { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); } + { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; case 309: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4022 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; case 310: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4023 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; case 311: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4024 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; case 312: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4025 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; case 313: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4026 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; case 314: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4027 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; case 315: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4028 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; case 316: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4029 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); } + { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; case 317: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4030 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); } + { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; case 318: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4031 "Gmsh.y" - { (yyval.d) = exp((yyvsp[(3) - (4)].d)); } + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 319: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4032 "Gmsh.y" - { (yyval.d) = log((yyvsp[(3) - (4)].d)); } + { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 320: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4033 "Gmsh.y" - { (yyval.d) = log10((yyvsp[(3) - (4)].d)); } + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 321: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4034 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); } + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 322: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4035 "Gmsh.y" - { (yyval.d) = sin((yyvsp[(3) - (4)].d)); } + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 323: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4036 "Gmsh.y" - { (yyval.d) = asin((yyvsp[(3) - (4)].d)); } + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 324: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4037 "Gmsh.y" - { (yyval.d) = cos((yyvsp[(3) - (4)].d)); } + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 325: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4038 "Gmsh.y" - { (yyval.d) = acos((yyvsp[(3) - (4)].d)); } + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 326: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4039 "Gmsh.y" - { (yyval.d) = tan((yyvsp[(3) - (4)].d)); } + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 327: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4040 "Gmsh.y" - { (yyval.d) = atan((yyvsp[(3) - (4)].d)); } + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 328: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4041 "Gmsh.y" - { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));} + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 329: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4042 "Gmsh.y" - { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); } + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 330: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4043 "Gmsh.y" - { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); } + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 331: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4044 "Gmsh.y" - { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); } + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 332: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4045 "Gmsh.y" - { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); } + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 333: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4046 "Gmsh.y" - { (yyval.d) = floor((yyvsp[(3) - (4)].d)); } + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 334: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4047 "Gmsh.y" - { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); } + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 335: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4048 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 336: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4049 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 337: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4050 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); } + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 338: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4051 "Gmsh.y" - { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; } + { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 339: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4054 "Gmsh.y" - { (yyval.d) = exp((yyvsp[(3) - (4)].d)); } + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 340: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4055 "Gmsh.y" - { (yyval.d) = log((yyvsp[(3) - (4)].d)); } + { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 341: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4056 "Gmsh.y" - { (yyval.d) = log10((yyvsp[(3) - (4)].d)); } + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 342: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4057 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); } + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 343: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4058 "Gmsh.y" - { (yyval.d) = sin((yyvsp[(3) - (4)].d)); } + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 344: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4059 "Gmsh.y" - { (yyval.d) = asin((yyvsp[(3) - (4)].d)); } + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 345: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4060 "Gmsh.y" - { (yyval.d) = cos((yyvsp[(3) - (4)].d)); } + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 346: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4061 "Gmsh.y" - { (yyval.d) = acos((yyvsp[(3) - (4)].d)); } + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 347: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4062 "Gmsh.y" - { (yyval.d) = tan((yyvsp[(3) - (4)].d)); } + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 348: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4063 "Gmsh.y" - { (yyval.d) = atan((yyvsp[(3) - (4)].d)); } + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 349: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4064 "Gmsh.y" - { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));} + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 350: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4065 "Gmsh.y" - { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); } + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 351: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4066 "Gmsh.y" - { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); } + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 352: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4067 "Gmsh.y" - { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); } + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 353: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4068 "Gmsh.y" - { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); } + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 354: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4069 "Gmsh.y" - { (yyval.d) = floor((yyvsp[(3) - (4)].d)); } + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 355: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4070 "Gmsh.y" - { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); } + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 356: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4071 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 357: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4072 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 358: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4073 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); } + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 359: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4074 "Gmsh.y" - { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; } + { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 360: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4083 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (1)].d); } + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 361: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4084 "Gmsh.y" - { (yyval.d) = 3.141592653589793; } + { (yyval.d) = 3.141592653589793; ;} break; case 362: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4085 "Gmsh.y" - { (yyval.d) = Msg::GetCommRank(); } + { (yyval.d) = Msg::GetCommRank(); ;} break; case 363: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4086 "Gmsh.y" - { (yyval.d) = Msg::GetCommSize(); } + { (yyval.d) = Msg::GetCommSize(); ;} break; case 364: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4087 "Gmsh.y" - { (yyval.d) = GetGmshMajorVersion(); } + { (yyval.d) = GetGmshMajorVersion(); ;} break; case 365: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4088 "Gmsh.y" - { (yyval.d) = GetGmshMinorVersion(); } + { (yyval.d) = GetGmshMinorVersion(); ;} break; case 366: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4089 "Gmsh.y" - { (yyval.d) = GetGmshPatchVersion(); } + { (yyval.d) = GetGmshPatchVersion(); ;} break; case 367: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4094 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ @@ -9686,12 +9664,12 @@ yyreduce: (yyval.d) = s.value[0]; } Free((yyvsp[(1) - (1)].c)); - } + ;} break; case 368: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4115 "Gmsh.y" { char tmpstring[1024]; @@ -9710,12 +9688,12 @@ yyreduce: (yyval.d) = s.value[0]; } Free((yyvsp[(1) - (5)].c)); - } + ;} break; case 369: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4134 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); @@ -9733,12 +9711,12 @@ yyreduce: (yyval.d) = s.value[index]; } Free((yyvsp[(1) - (4)].c)); - } + ;} break; case 370: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4152 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ @@ -9750,12 +9728,12 @@ yyreduce: (yyval.d) = s.value.size(); } Free((yyvsp[(2) - (4)].c)); - } + ;} break; case 371: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4164 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ @@ -9772,12 +9750,12 @@ yyreduce: (yyval.d) = (s.value[0] += (yyvsp[(2) - (2)].i)); } Free((yyvsp[(1) - (2)].c)); - } + ;} break; case 372: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4181 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); @@ -9795,32 +9773,32 @@ yyreduce: (yyval.d) = (s.value[index] += (yyvsp[(5) - (5)].i)); } Free((yyvsp[(1) - (5)].c)); - } + ;} break; case 373: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4202 "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)); - } + ;} break; case 374: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4207 "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)); - } + ;} break; case 375: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4212 "Gmsh.y" { double d = 0.; @@ -9830,12 +9808,12 @@ yyreduce: (yyval.d) = d; } Free((yyvsp[(1) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - } + ;} break; case 376: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4222 "Gmsh.y" { double d = 0.; @@ -9845,22 +9823,22 @@ yyreduce: (yyval.d) = d; } Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - } + ;} break; case 377: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4232 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); - } + ;} break; case 378: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4237 "Gmsh.y" { std::string s((yyvsp[(3) - (6)].c)), substr((yyvsp[(5) - (6)].c)); @@ -9869,150 +9847,150 @@ yyreduce: else (yyval.d) = 0.; Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); - } + ;} break; case 379: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4249 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); - } + ;} break; case 380: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4253 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; - } + ;} break; case 381: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4257 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; - } + ;} break; case 382: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4261 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; - } + ;} break; case 383: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4265 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; - } + ;} break; case 384: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4272 "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); - } + ;} break; case 385: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4276 "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; - } + ;} break; case 386: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4280 "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; - } + ;} break; case 387: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4284 "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; - } + ;} break; case 388: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4291 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); - } + ;} break; case 389: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4296 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); - } + ;} break; case 390: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4303 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); - } + ;} break; case 391: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4308 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); - } + ;} break; case 392: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4312 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); - } + ;} break; case 393: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4317 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); - } + ;} break; case 394: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4321 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); @@ -10020,12 +9998,12 @@ yyreduce: double *pd = (double*)List_Pointer((yyval.l), i); (*pd) = - (*pd); } - } + ;} break; case 395: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4329 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); @@ -10033,21 +10011,21 @@ yyreduce: double *pd = (double*)List_Pointer((yyval.l), i); (*pd) *= (yyvsp[(1) - (5)].d); } - } + ;} break; case 396: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4340 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); - } + ;} break; case 397: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4344 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) @@ -10056,12 +10034,12 @@ yyreduce: yyerror("Unknown special string for list replacement"); (yyval.l) = List_Create(2, 1, sizeof(double)); } - } + ;} break; case 398: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4356 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); @@ -10069,12 +10047,12 @@ yyreduce: double *pd = (double*)List_Pointer((yyval.l), i); (*pd) = - (*pd); } - } + ;} break; case 399: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4364 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); @@ -10082,24 +10060,24 @@ yyreduce: double *pd = (double*)List_Pointer((yyval.l), i); (*pd) *= (yyvsp[(1) - (3)].d); } - } + ;} break; case 400: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4372 "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)); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d += 1.) : (d -= 1.)) List_Add((yyval.l), &d); - } + ;} break; case 401: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4379 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -10109,12 +10087,12 @@ yyreduce: else for(double d = (yyvsp[(1) - (5)].d); ((yyvsp[(5) - (5)].d) > 0) ? (d <= (yyvsp[(3) - (5)].d)) : (d >= (yyvsp[(3) - (5)].d)); d += (yyvsp[(5) - (5)].d)) List_Add((yyval.l), &d); - } + ;} break; case 402: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4389 "Gmsh.y" { // Returns the coordinates of a point and fills a list with it. @@ -10134,48 +10112,48 @@ yyreduce: List_Add((yyval.l), &v->Pos.Y); List_Add((yyval.l), &v->Pos.Z); } - } + ;} break; case 403: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4409 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(0); - } + ;} break; case 404: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4413 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(1); - } + ;} break; case 405: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4417 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(2); - } + ;} break; case 406: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4421 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(3); - } + ;} break; case 407: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4425 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); @@ -10204,12 +10182,12 @@ yyreduce: } } List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 408: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4454 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); @@ -10238,12 +10216,12 @@ yyreduce: } } List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 409: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4483 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); @@ -10272,12 +10250,12 @@ yyreduce: } } List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 410: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4512 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); @@ -10306,12 +10284,12 @@ yyreduce: } } List_Delete((yyvsp[(4) - (5)].l)); - } + ;} break; case 411: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4541 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); @@ -10321,12 +10299,12 @@ yyreduce: List_Add((yyval.l), &d); } List_Delete((yyvsp[(1) - (1)].l)); - } + ;} break; case 412: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4551 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); @@ -10336,12 +10314,12 @@ yyreduce: List_Add((yyval.l), &d); } List_Delete((yyvsp[(1) - (1)].l)); - } + ;} break; case 413: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4561 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -10353,12 +10331,12 @@ yyreduce: List_Add((yyval.l), &s.value[i]); } Free((yyvsp[(1) - (3)].c)); - } + ;} break; case 414: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4574 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -10370,12 +10348,12 @@ yyreduce: List_Add((yyval.l), &s.value[i]); } Free((yyvsp[(1) - (3)].c)); - } + ;} break; case 415: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4586 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -10387,12 +10365,12 @@ yyreduce: List_Add((yyval.l), &s.value[i]); } Free((yyvsp[(3) - (4)].c)); - } + ;} break; case 416: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4598 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -10410,12 +10388,12 @@ yyreduce: } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(4) - (6)].l)); - } + ;} break; case 417: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4617 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -10433,40 +10411,40 @@ yyreduce: } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(4) - (6)].l)); - } + ;} break; case 418: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4638 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); - } + ;} break; case 419: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4643 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); - } + ;} break; case 420: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4647 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); - } + ;} break; case 421: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4651 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ @@ -10475,63 +10453,63 @@ yyreduce: List_Add((yyval.l), &d); } List_Delete((yyvsp[(3) - (3)].l)); - } + ;} break; case 422: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4663 "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)); - } + ;} break; case 423: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4667 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); - } + ;} break; case 424: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4679 "Gmsh.y" { int flag; (yyval.u) = GetColorForString(-1, (yyvsp[(1) - (1)].c), &flag); if(flag) yymsg(0, "Unknown color '%s'", (yyvsp[(1) - (1)].c)); Free((yyvsp[(1) - (1)].c)); - } + ;} break; case 425: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4686 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); (yyval.u) = val; Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(5) - (5)].c)); - } + ;} break; case 426: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4696 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); - } + ;} break; case 427: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4700 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); @@ -10543,40 +10521,40 @@ yyreduce: List_Add((yyval.l), &ct->table[i]); } Free((yyvsp[(1) - (6)].c)); - } + ;} break; case 428: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4715 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); - } + ;} break; case 429: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4720 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); - } + ;} break; case 430: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4727 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); - } + ;} break; case 431: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4731 "Gmsh.y" { if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ @@ -10589,12 +10567,12 @@ yyreduce: strcpy((yyval.c), val.c_str()); Free((yyvsp[(1) - (1)].c)); } - } + ;} break; case 432: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4744 "Gmsh.y" { std::string out; @@ -10602,12 +10580,12 @@ yyreduce: (yyval.c) = (char*)Malloc((out.size() + 1) * sizeof(char)); strcpy((yyval.c), out.c_str()); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); - } + ;} break; case 433: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4752 "Gmsh.y" { std::string out; @@ -10615,21 +10593,21 @@ yyreduce: (yyval.c) = (char*)Malloc((out.size() + 1) * sizeof(char)); strcpy((yyval.c), out.c_str()); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); - } + ;} break; case 434: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4763 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); - } + ;} break; case 435: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4767 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); @@ -10637,12 +10615,12 @@ yyreduce: time(&now); strcpy((yyval.c), ctime(&now)); (yyval.c)[strlen((yyval.c)) - 1] = '\0'; - } + ;} break; case 436: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4775 "Gmsh.y" { const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); @@ -10650,12 +10628,12 @@ yyreduce: (yyval.c) = (char *)Malloc((sizeof(env) + 1) * sizeof(char)); strcpy((yyval.c), env); Free((yyvsp[(3) - (4)].c)); - } + ;} break; case 437: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4783 "Gmsh.y" { std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); @@ -10663,12 +10641,12 @@ yyreduce: strcpy((yyval.c), s.c_str()); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); - } + ;} break; case 438: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4791 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); @@ -10676,12 +10654,12 @@ yyreduce: strcat((yyval.c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); - } + ;} break; case 439: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4799 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); @@ -10695,12 +10673,12 @@ yyreduce: } if(i <= 0) strcpy((yyval.c), (yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - } + ;} break; case 440: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4813 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); @@ -10714,21 +10692,21 @@ yyreduce: else strcpy((yyval.c), &(yyvsp[(3) - (4)].c)[i+1]); Free((yyvsp[(3) - (4)].c)); - } + ;} break; case 441: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4827 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); - } + ;} break; case 442: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4831 "Gmsh.y" { char tmpstring[5000]; @@ -10747,43 +10725,32 @@ yyreduce: Free((yyvsp[(3) - (6)].c)); } List_Delete((yyvsp[(5) - (6)].l)); - } + ;} break; case 443: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4853 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(char*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].c))); - } + ;} break; case 444: -/* Line 1806 of yacc.c */ +/* Line 1464 of yacc.c */ #line 4858 "Gmsh.y" - { List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); } + { List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); ;} break; -/* Line 1806 of yacc.c */ -#line 10774 "Gmsh.tab.cpp" +/* Line 1464 of yacc.c */ +#line 10752 "Gmsh.tab.cpp" default: break; } - /* User semantic actions sometimes alter yychar, and that requires - that yytoken be updated with the new translation. We take the - approach of translating immediately before every use of yytoken. - One alternative is translating here after every semantic action, - but that translation would be missed if the semantic action invokes - YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or - if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an - incorrect destructor might then be invoked immediately. In the - case of YYERROR or YYBACKUP, subsequent parser actions might lead - to an incorrect destructor call or verbose syntax error message - before the lookahead is translated. */ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YYPOPSTACK (yylen); @@ -10811,10 +10778,6 @@ yyreduce: | yyerrlab -- here on detecting error | `------------------------------------*/ yyerrlab: - /* Make sure we have latest lookahead translation. See comments at - user semantic actions for why this is necessary. */ - yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); - /* If not already recovering from an error, report this error. */ if (!yyerrstatus) { @@ -10822,36 +10785,37 @@ yyerrlab: #if ! YYERROR_VERBOSE yyerror (YY_("syntax error")); #else -# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ - yyssp, yytoken) { - char const *yymsgp = YY_("syntax error"); - int yysyntax_error_status; - yysyntax_error_status = YYSYNTAX_ERROR; - if (yysyntax_error_status == 0) - yymsgp = yymsg; - else if (yysyntax_error_status == 1) - { - if (yymsg != yymsgbuf) - YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); - if (!yymsg) - { - yymsg = yymsgbuf; - yymsg_alloc = sizeof yymsgbuf; - yysyntax_error_status = 2; - } - else - { - yysyntax_error_status = YYSYNTAX_ERROR; - yymsgp = yymsg; - } - } - yyerror (yymsgp); - if (yysyntax_error_status == 2) - goto yyexhaustedlab; + YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); + if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) + { + YYSIZE_T yyalloc = 2 * yysize; + if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) + yyalloc = YYSTACK_ALLOC_MAXIMUM; + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yyalloc); + if (yymsg) + yymsg_alloc = yyalloc; + else + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + } + } + + if (0 < yysize && yysize <= yymsg_alloc) + { + (void) yysyntax_error (yymsg, yystate, yychar); + yyerror (yymsg); + } + else + { + yyerror (YY_("syntax error")); + if (yysize != 0) + goto yyexhaustedlab; + } } -# undef YYSYNTAX_ERROR #endif } @@ -10910,7 +10874,7 @@ yyerrlab1: for (;;) { yyn = yypact[yystate]; - if (!yypact_value_is_default (yyn)) + if (yyn != YYPACT_NINF) { yyn += YYTERROR; if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) @@ -10969,13 +10933,8 @@ yyexhaustedlab: yyreturn: if (yychar != YYEMPTY) - { - /* Make sure we have latest lookahead translation. See comments at - user semantic actions for why this is necessary. */ - yytoken = YYTRANSLATE (yychar); - yydestruct ("Cleanup: discarding lookahead", - yytoken, &yylval); - } + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); /* Do not reclaim the symbols of the rule which action triggered this YYABORT or YYACCEPT. */ YYPOPSTACK (yylen); @@ -11000,7 +10959,7 @@ yyreturn: -/* Line 2067 of yacc.c */ +/* Line 1684 of yacc.c */ #line 4861 "Gmsh.y" diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index 6cdb6e2ba4ed7a147da8c1f4002fe7ff393611ad..50e0ba074572fa973a64d14458d171360a8db95b 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -1,8 +1,9 @@ -/* A Bison parser, made by GNU Bison 2.5. */ +/* A Bison parser, made by GNU Bison 2.4.3. */ -/* Bison interface for Yacc-like parsers in C +/* Skeleton interface for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, + 2009, 2010 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -186,7 +187,7 @@ typedef union YYSTYPE { -/* Line 2068 of yacc.c */ +/* Line 1685 of yacc.c */ #line 92 "Gmsh.y" char *c; @@ -199,8 +200,8 @@ typedef union YYSTYPE -/* Line 2068 of yacc.c */ -#line 204 "Gmsh.tab.hpp" +/* Line 1685 of yacc.c */ +#line 205 "Gmsh.tab.hpp" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 3d4821373d7dd79a9223c20cb2beb962fefae267..9c9f3d6493ef830b1c42292c30a33f19f6a1d87d 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -66,6 +66,7 @@ typedef int16_t flex_int16_t; typedef uint16_t flex_uint16_t; typedef int32_t flex_int32_t; typedef uint32_t flex_uint32_t; +typedef uint64_t flex_uint64_t; #else typedef signed char flex_int8_t; typedef short int flex_int16_t; @@ -73,6 +74,7 @@ typedef int flex_int32_t; typedef unsigned char flex_uint8_t; typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; +#endif /* ! C99 */ /* Limits of integral types. */ #ifndef INT8_MIN @@ -103,8 +105,6 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif -#endif /* ! C99 */ - #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -161,15 +161,7 @@ typedef unsigned int flex_uint32_t; /* Size of default input buffer. */ #ifndef YY_BUF_SIZE -#ifdef __ia64__ -/* On IA-64, the buffer size is 16k, not 8k. - * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. - * Ditto for the __ia64__ case accordingly. - */ -#define YY_BUF_SIZE 32768 -#else #define YY_BUF_SIZE 16384 -#endif /* __ia64__ */ #endif /* The state buf must be large enough to hold one state per character in the main buffer. @@ -181,7 +173,12 @@ typedef unsigned int flex_uint32_t; typedef struct yy_buffer_state *YY_BUFFER_STATE; #endif -extern int gmsh_yyleng; +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; +#endif + +extern yy_size_t gmsh_yyleng; extern FILE *gmsh_yyin, *gmsh_yyout; @@ -207,11 +204,6 @@ extern FILE *gmsh_yyin, *gmsh_yyout; #define unput(c) yyunput( c, (yytext_ptr) ) -#ifndef YY_TYPEDEF_YY_SIZE_T -#define YY_TYPEDEF_YY_SIZE_T -typedef size_t yy_size_t; -#endif - #ifndef YY_STRUCT_YY_BUFFER_STATE #define YY_STRUCT_YY_BUFFER_STATE struct yy_buffer_state @@ -229,7 +221,7 @@ struct yy_buffer_state /* Number of characters read into yy_ch_buf, not including EOB * characters. */ - int yy_n_chars; + yy_size_t yy_n_chars; /* Whether we "own" the buffer - i.e., we know we created it, * and can realloc() it to grow it, and should free() it to @@ -299,8 +291,8 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ /* yy_hold_char holds the character lost when gmsh_yytext is formed. */ static char yy_hold_char; -static int yy_n_chars; /* number of characters read into yy_ch_buf */ -int gmsh_yyleng; +static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ +yy_size_t gmsh_yyleng; /* Points to current character in buffer. */ static char *yy_c_buf_p = (char *) 0; @@ -328,7 +320,7 @@ static void gmsh_yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); YY_BUFFER_STATE gmsh_yy_scan_buffer (char *base,yy_size_t size ); YY_BUFFER_STATE gmsh_yy_scan_string (yyconst char *yy_str ); -YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char *bytes,int len ); +YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char *bytes,yy_size_t len ); void *gmsh_yyalloc (yy_size_t ); void *gmsh_yyrealloc (void *,yy_size_t ); @@ -383,7 +375,7 @@ static void yy_fatal_error (yyconst char msg[] ); */ #define YY_DO_BEFORE_ACTION \ (yytext_ptr) = yy_bp; \ - gmsh_yyleng = (size_t) (yy_cp - yy_bp); \ + gmsh_yyleng = (yy_size_t) (yy_cp - yy_bp); \ (yy_hold_char) = *yy_cp; \ *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; @@ -964,7 +956,7 @@ void skipline(void); #define YY_NO_UNISTD_H #endif -#line 968 "Gmsh.yy.cpp" +#line 960 "Gmsh.yy.cpp" #define INITIAL 0 @@ -1003,7 +995,7 @@ FILE *gmsh_yyget_out (void ); void gmsh_yyset_out (FILE * out_str ); -int gmsh_yyget_leng (void ); +yy_size_t gmsh_yyget_leng (void ); char *gmsh_yyget_text (void ); @@ -1045,12 +1037,7 @@ static int input (void ); /* Amount of stuff to slurp up with each read. */ #ifndef YY_READ_BUF_SIZE -#ifdef __ia64__ -/* On IA-64, the buffer size is 16k, not 8k */ -#define YY_READ_BUF_SIZE 16384 -#else #define YY_READ_BUF_SIZE 8192 -#endif /* __ia64__ */ #endif /* Copy whatever the last rule matched to the standard output. */ @@ -1058,7 +1045,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO do { if (fwrite( gmsh_yytext, gmsh_yyleng, 1, gmsh_yyout )) {} } while (0) +#define ECHO fwrite( gmsh_yytext, gmsh_yyleng, 1, gmsh_yyout ) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1069,7 +1056,7 @@ static int input (void ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - size_t n; \ + yy_size_t n; \ for ( n = 0; n < max_size && \ (c = getc( gmsh_yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -1154,7 +1141,7 @@ YY_DECL #line 49 "Gmsh.l" -#line 1158 "Gmsh.yy.cpp" +#line 1145 "Gmsh.yy.cpp" if ( !(yy_init) ) { @@ -2044,7 +2031,7 @@ YY_RULE_SETUP #line 238 "Gmsh.l" ECHO; YY_BREAK -#line 2048 "Gmsh.yy.cpp" +#line 2035 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2230,7 +2217,7 @@ static int yy_get_next_buffer (void) else { - int num_to_read = + yy_size_t num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; while ( num_to_read <= 0 ) @@ -2244,7 +2231,7 @@ static int yy_get_next_buffer (void) if ( b->yy_is_our_buffer ) { - int new_size = b->yy_buf_size * 2; + yy_size_t new_size = b->yy_buf_size * 2; if ( new_size <= 0 ) b->yy_buf_size += b->yy_buf_size / 8; @@ -2275,7 +2262,7 @@ static int yy_get_next_buffer (void) /* Read in more data. */ YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), - (yy_n_chars), (size_t) num_to_read ); + (yy_n_chars), num_to_read ); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } @@ -2385,7 +2372,7 @@ static int yy_get_next_buffer (void) if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) { /* need to shift things up to make room */ /* +2 for EOB chars. */ - register int number_to_move = (yy_n_chars) + 2; + register yy_size_t number_to_move = (yy_n_chars) + 2; register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; register char *source = @@ -2434,7 +2421,7 @@ static int yy_get_next_buffer (void) else { /* need more input */ - int offset = (yy_c_buf_p) - (yytext_ptr); + yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); ++(yy_c_buf_p); switch ( yy_get_next_buffer( ) ) @@ -2458,7 +2445,7 @@ static int yy_get_next_buffer (void) case EOB_ACT_END_OF_FILE: { if ( gmsh_yywrap( ) ) - return EOF; + return 0; if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; @@ -2710,7 +2697,7 @@ void gmsh_yypop_buffer_state (void) */ static void gmsh_yyensure_buffer_stack (void) { - int num_to_alloc; + yy_size_t num_to_alloc; if (!(yy_buffer_stack)) { @@ -2802,17 +2789,16 @@ YY_BUFFER_STATE gmsh_yy_scan_string (yyconst char * yystr ) /** Setup the input buffer state to scan the given bytes. The next call to gmsh_yylex() will * scan from a @e copy of @a bytes. - * @param yybytes the byte buffer to scan - * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. + * @param bytes the byte buffer to scan + * @param len the number of bytes in the buffer pointed to by @a bytes. * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ) +YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) { YY_BUFFER_STATE b; char *buf; - yy_size_t n; - int i; + yy_size_t n, i; /* Get memory for full buffer, including space for trailing EOB's. */ n = _yybytes_len + 2; @@ -2894,7 +2880,7 @@ FILE *gmsh_yyget_out (void) /** Get the length of the current token. * */ -int gmsh_yyget_leng (void) +yy_size_t gmsh_yyget_leng (void) { return gmsh_yyleng; } diff --git a/Plugin/Crack.cpp b/Plugin/Crack.cpp index efe09f60e995644fc63b948ed81e98e414d82afd..5617abc57320ec900f8f33305dd10c5ad31841bc 100644 --- a/Plugin/Crack.cpp +++ b/Plugin/Crack.cpp @@ -5,18 +5,14 @@ #include "Crack.h" #include "GModel.h" -#include "partitionFace.h" -#include "partitionEdge.h" +#include "discreteEdge.h" +#include "discreteFace.h" #include "MElement.h" #include "MLine.h" #include "MTriangle.h" #include "MQuadrangle.h" -#include "MFace.h" #include "MEdge.h" -#include "mathEvaluator.h" -#if defined(HAVE_MESH) -#include "meshPartition.h" -#endif +#include "Context.h" StringXNumber CrackOptions_Number[] = { {GMSH_FULLRC, "Dimension", NULL, 1.}, @@ -33,7 +29,13 @@ extern "C" std::string GMSH_CrackPlugin::getHelp() const { - return "Plugin(Crack) creates a crack around the physical group"; + return "Plugin(Crack) creates a crack around the physical " + "group `PhysicalGroup' of dimension `Dimension' (1 or 2). " + "The plugin duplicates the vertices and the elements on " + "the crack and stores them in a new discrete curve " + "(Dimension = 1) or surface (Dimension = 2). The " + "elements touching the crack on the negative side " + "are modified to use the newly generated vertices."; } int GMSH_CrackPlugin::getNbOptions() const diff --git a/Plugin/PluginManager.cpp b/Plugin/PluginManager.cpp index b1acc9510150b52e004247f1ae5df4471a5b5560..1afbfa3757814d3d95365889d26096aa1bcf2bc1 100644 --- a/Plugin/PluginManager.cpp +++ b/Plugin/PluginManager.cpp @@ -108,8 +108,11 @@ void PluginManager::action(std::string pluginName, std::string action, void *dat GMSH_Plugin *plugin = find(pluginName); if(!plugin) throw "Unknown plugin name"; - if(action == "Run") + if(action == "Run"){ + Msg::Info("Running Plugin(%s)...", pluginName.c_str()); plugin->run(); + Msg::Info("Done running Plugin(%s)", pluginName.c_str()); + } else throw "Unknown plugin action"; } diff --git a/doc/texinfo/gmsh.texi b/doc/texinfo/gmsh.texi index 539da5d4edd1048c6f9fb8ff8b6938bd9d8245f7..6d853e884f34cf5b80b79c3cc3fc698a5a1f767f 100644 --- a/doc/texinfo/gmsh.texi +++ b/doc/texinfo/gmsh.texi @@ -3219,9 +3219,9 @@ cases.) The MSH ASCII file format contains one mandatory section giving information about the file (@code{$MeshFormat}), followed by several optional sections defining the nodes (@code{$Nodes}), elements -(@code{$Elements}), region names (@code{$PhysicalName}) and -post-processing datasets (@code{$NodeData}, @code{$ElementData}, -@code{$ElementNodeData}). +(@code{$Elements}), region names (@code{$PhysicalName}), periodicity +relations (@code{$Periodic}) and post-processing datasets +(@code{$NodeData}, @code{$ElementData}, @code{$ElementNodeData}). When @code{$Elements} are given, @code{$Nodes} should also be provided, before the @code{$Elements} section. Currently only one @code{$Nodes} @@ -3252,6 +3252,13 @@ $Elements @var{elm-number} @var{elm-type} @var{number-of-tags} < @var{tag} > @dots{} @var{node-number-list} @dots{} $EndElements +$Periodic +@var{number-of-periodic-entities} +@var{dimension} @var{slave-entity-tag} @var{master-entity-tag} +@var{number-of-nodes} +@var{slave-node-number master-node-number} +@dots{} +$EndPeriodic $PhysicalNames @var{number-of-names} @var{physical-dimension} @var{physical-number} "@var{physical-name}"