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;