Package: freefem3d
Severity: normal
Tags: patch

When building 'freefem3d' on amd64 with gcc-4.0,
I get the following error:

../../solver/ConnectivityBuilder.cpp:25: error: explicit specialization of 
'void ConnectivityBuilder<MeshOfHexahedra>::setFaces()' must be introduced by 
'template <>'
../../solver/ConnectivityBuilder.cpp:25: error: template-id 'setFaces<>' for 
'void ConnectivityBuilder<MeshOfHexahedra>::setFaces()' does not match any 
template declaration
../../solver/ConnectivityBuilder.cpp:25: error: invalid function declaration
../../solver/ConnectivityBuilder.cpp:58: error: explicit specialization of 
'void ConnectivityBuilder<MeshOfTetrahedra>::setFaces()' must be introduced by 
'template <>'
../../solver/ConnectivityBuilder.cpp:58: error: template-id 'setFaces<>' for 
'void ConnectivityBuilder<MeshOfTetrahedra>::setFaces()' does not match any 
template declaration
../../solver/ConnectivityBuilder.cpp:58: error: invalid function declaration
../../solver/ConnectivityBuilder.cpp:77: error: explicit specialization of 
'void ConnectivityBuilder<SurfaceMeshOfTriangles>::setFaces()' must be 
introduced by 'template <>'
../../solver/ConnectivityBuilder.cpp:77: error: template-id 'setFaces<>' for 
'void ConnectivityBuilder<SurfaceMeshOfTriangles>::setFaces()' does not match 
any template declaration
../../solver/ConnectivityBuilder.cpp:77: error: invalid function declaration
make[3]: *** [ConnectivityBuilder.o] Error 1
make[3]: Leaving directory `/freefem3d-1.0pre5/opt/solver'

With the attached patch 'freefem3d' can be compiled
on amd64 using gcc-4.0.

Regards
Andreas Jochens

diff -urN ../tmp-orig/freefem3d-1.0pre5/solver/ConnectivityBuilder.cpp 
./solver/ConnectivityBuilder.cpp
--- ../tmp-orig/freefem3d-1.0pre5/solver/ConnectivityBuilder.cpp        
2003-04-27 19:04:27.000000000 +0200
+++ ./solver/ConnectivityBuilder.cpp    2005-01-31 17:41:35.725866180 +0100
@@ -22,7 +22,7 @@
 #include <MeshOfTetrahedra.hpp>
 #include <MeshOfHexahedra.hpp>
 
-void ConnectivityBuilder<MeshOfHexahedra>::setFaces()
+template <> void ConnectivityBuilder<MeshOfHexahedra>::setFaces()
 {
   __face[0][0] = 4;
   __face[0][1] = 7;
@@ -55,7 +55,7 @@
   __face[5][3] = 4;
 }
 
-void ConnectivityBuilder<MeshOfTetrahedra>::setFaces()
+template <> void ConnectivityBuilder<MeshOfTetrahedra>::setFaces()
 {
   __face[0][0] = 1;
   __face[0][1] = 2;
@@ -74,7 +74,7 @@
   __face[3][2] = 0;
 }
 
-void ConnectivityBuilder<SurfaceMeshOfTriangles>::setFaces()
+template <> void ConnectivityBuilder<SurfaceMeshOfTriangles>::setFaces()
 {
   __face[0][0] = 1;
   __face[0][1] = 2;
diff -urN ../tmp-orig/freefem3d-1.0pre5/solver/ElementaryMatrixSet.cpp 
./solver/ElementaryMatrixSet.cpp
--- ../tmp-orig/freefem3d-1.0pre5/solver/ElementaryMatrixSet.cpp        
2003-12-26 19:38:02.000000000 +0100
+++ ./solver/ElementaryMatrixSet.cpp    2005-01-31 17:53:57.555273982 +0100
@@ -36,7 +36,7 @@
 */
 
 #define EMS(ElementaryMatrixType)                                        \
-ElementaryMatrixSet<ElementaryMatrixType>::                              \
+template <> ElementaryMatrixSet<ElementaryMatrixType>::                        
          \
 ElementaryMatrixSet(const Problem& problem)                              \
   : __divMuGrad(false),                                                        
  \
     __massOperator(false),                                               \


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to