On Thu, Oct 08, 2009 at 03:50:02PM +0100, James Westby wrote: > Hi, > We have the same issue on Ubuntu as 4.4 is default now. The patch > fixes that error, but it is not enough there. > > make[3]: Entering directory `/tmp/buildd/freefem3d-1.0pre10/language' > g++ -DHAVE_CONFIG_H -I. -I.. -I.. -I../solver -I../algebra -I../geometry > -I../utils -I../language -I../graphics -Wall -DNDEBUG -O2 -funroll-all-loops > -fargument-noalias-global -fno-gcse -c -o Instruction.o Instruction.cpp > In file included from Instruction.cpp:32: > ./FunctionExpressionFEM.hpp:59:2: warning: #warning SHOULD NOT USE THIS > FUNCTION > In file included from ../solver/FEMFunction.hpp:23, > from Instruction.cpp:48: > ../solver/FiniteElementTraits.hpp:57: error: declaration of > 'DiscretizationType' > ../solver/DiscretizationType.hpp:35: error: changes meaning of > 'DiscretizationType' from 'class DiscretizationType'
upstream solved this here: http://cvs.savannah.gnu.org/viewvc/ff3d/solver/FiniteElementTraits.hpp?root=ff3d&r1=1.10&r2=1.11 http://cvs.savannah.gnu.org/viewvc/ff3d/solver/FEMFunction.hpp?root=ff3d&r1=1.13&r2=1.14 attached there's a patch against unstable version solved in a similar way. I will probably NMU this package in a week or so if nobody steps up. filippo -- Filippo Giunchedi - http://esaurito.net - 0x6B79D401 When I was young I observed that nine out of every ten things I did were failures, so I did ten times more work. -- George Bernard Shaw
diff --git a/solver/FEMFunction.hpp b/solver/FEMFunction.hpp index 6f2dcf2..bda53cd 100644 --- a/solver/FEMFunction.hpp +++ b/solver/FEMFunction.hpp @@ -217,7 +217,7 @@ public: * @param mesh mesh supporting the function */ FEMFunction(ConstReferenceCounting<MeshType> mesh) - : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::DiscretizationType)), + : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::discretizationType)), __mesh(mesh) { ; @@ -231,7 +231,7 @@ public: */ FEMFunction(ConstReferenceCounting<MeshType> mesh, const ScalarFunctionBase& f) - : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::DiscretizationType)), + : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::discretizationType)), __mesh(mesh) { (*this) = f; @@ -245,7 +245,7 @@ public: */ FEMFunction(ConstReferenceCounting<MeshType> mesh, const real_t& d) - : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::DiscretizationType)), + : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::discretizationType)), __mesh(mesh) { __values = d; @@ -259,7 +259,7 @@ public: */ FEMFunction(ConstReferenceCounting<MeshType> mesh, const Vector<real_t>& values) - : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::DiscretizationType)), + : FEMFunctionBase(mesh, DiscretizationType::Type(FiniteElementTraits::discretizationType)), __mesh(mesh) { ASSERT(__values.size() == values.size()); diff --git a/solver/FiniteElementTraits.hpp b/solver/FiniteElementTraits.hpp index 47bc691..0cb11ac 100644 --- a/solver/FiniteElementTraits.hpp +++ b/solver/FiniteElementTraits.hpp @@ -54,7 +54,7 @@ struct FiniteElementTraits<Hexahedron, DiscretizationType::lagrangianFEM0> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM0 + discretizationType = DiscretizationType::lagrangianFEM0 }; typedef Q0HexahedronFiniteElement Type; @@ -71,7 +71,7 @@ struct FiniteElementTraits<Hexahedron, DiscretizationType::lagrangianFEM1> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM1 + discretizationType = DiscretizationType::lagrangianFEM1 }; typedef Q1HexahedronFiniteElement Type; @@ -88,7 +88,7 @@ struct FiniteElementTraits<Hexahedron, DiscretizationType::lagrangianFEM2> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM2 + discretizationType = DiscretizationType::lagrangianFEM2 }; typedef Q2HexahedronFiniteElement Type; @@ -105,7 +105,7 @@ struct FiniteElementTraits<CartesianHexahedron, DiscretizationType::lagrangianFEM0> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM0 + discretizationType = DiscretizationType::lagrangianFEM0 }; typedef Q0HexahedronFiniteElement Type; @@ -122,7 +122,7 @@ struct FiniteElementTraits<CartesianHexahedron, DiscretizationType::lagrangianFEM1> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM1 + discretizationType = DiscretizationType::lagrangianFEM1 }; typedef Q1HexahedronFiniteElement Type; @@ -139,7 +139,7 @@ struct FiniteElementTraits<CartesianHexahedron, DiscretizationType::lagrangianFEM2> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM2 + discretizationType = DiscretizationType::lagrangianFEM2 }; typedef Q2HexahedronFiniteElement Type; @@ -156,7 +156,7 @@ struct FiniteElementTraits<Tetrahedron, DiscretizationType::lagrangianFEM0> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM0 + discretizationType = DiscretizationType::lagrangianFEM0 }; typedef P0TetrahedronFiniteElement Type; @@ -173,7 +173,7 @@ struct FiniteElementTraits<Tetrahedron, DiscretizationType::lagrangianFEM1> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM1 + discretizationType = DiscretizationType::lagrangianFEM1 }; typedef P1TetrahedronFiniteElement Type; @@ -190,7 +190,7 @@ struct FiniteElementTraits<Tetrahedron, DiscretizationType::lagrangianFEM2> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM2 + discretizationType = DiscretizationType::lagrangianFEM2 }; typedef P2TetrahedronFiniteElement Type; @@ -207,7 +207,7 @@ struct FiniteElementTraits<Triangle, DiscretizationType::lagrangianFEM0> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM0 + discretizationType = DiscretizationType::lagrangianFEM0 }; @@ -225,7 +225,7 @@ struct FiniteElementTraits<Triangle, DiscretizationType::lagrangianFEM1> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM1 + discretizationType = DiscretizationType::lagrangianFEM1 }; @@ -243,7 +243,7 @@ struct FiniteElementTraits<Triangle, DiscretizationType::lagrangianFEM2> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM2 + discretizationType = DiscretizationType::lagrangianFEM2 }; typedef P2Triangle3DFiniteElement Type; @@ -260,7 +260,7 @@ struct FiniteElementTraits<Quadrangle, DiscretizationType::lagrangianFEM0> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM0 + discretizationType = DiscretizationType::lagrangianFEM0 }; typedef Q0Quadrangle3DFiniteElement Type; @@ -277,7 +277,7 @@ struct FiniteElementTraits<Quadrangle, DiscretizationType::lagrangianFEM1> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM1 + discretizationType = DiscretizationType::lagrangianFEM1 }; typedef Q1Quadrangle3DFiniteElement Type; @@ -295,7 +295,7 @@ struct FiniteElementTraits<Quadrangle, DiscretizationType::lagrangianFEM2> { enum { - DiscretizationType = DiscretizationType::lagrangianFEM2 + discretizationType = DiscretizationType::lagrangianFEM2 }; typedef Q2Quadrangle3DFiniteElement Type;