tag 667170 patch pending thanks Hi,
I'm uploading an NMU for freefem3d (1.0pre10-3.1) to DELAYED/2-day. Please let me know if you'd like me to cancel it or delay further. Cheers, Matej
pgpHjObScydVl.pgp
Description: PGP signature
--- freefem3d-1.0pre10~/debian/changelog +++ freefem3d-1.0pre10/debian/changelog @@ -1,3 +1,12 @@ +freefem3d (1.0pre10-3.1) unstable; urgency=low + + * Non-maintainer upload. + * 30_gcc47: Fix build failure with GCC 4.7. Closes: #667170. + - algebra/Vector.hpp: Include <cmath> for sqrt. + - solver/FEMDiscretization.hpp: Add "this->" qualifier. + + -- Matej Vela <v...@debian.org> Thu, 17 May 2012 14:07:03 +0100 + freefem3d (1.0pre10-3) unstable; urgency=low [ Sylvestre Ledru ] --- freefem3d-1.0pre10~/debian/patches/30_gcc47.patch +++ freefem3d-1.0pre10/debian/patches/30_gcc47.patch @@ -0,0 +1,255 @@ +Description: Fix build failure with GCC 4.7 +Bug-Debian: http://bugs.debian.org/667170 +Author: Matej Vela <v...@debian.org> +Last-Update: 2012-05-17 + +--- freefem3d-1.0pre10~/algebra/Vector.hpp ++++ freefem3d-1.0pre10/algebra/Vector.hpp +@@ -24,6 +24,7 @@ + // Include STD definitions to get same environment ... + #include <stddef.h> + #include <cstdlib> ++#include <cmath> + #include <Assert.hpp> + + #include <ZoneCopy.hpp> +--- freefem3d-1.0pre10~/solver/FEMDiscretization.hpp ++++ freefem3d-1.0pre10/solver/FEMDiscretization.hpp +@@ -117,7 +117,7 @@ + + ConformTransformation T(K); + JacobianTransformation J(T); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + TinyVector<3> massCenter; + T.value(FiniteElement::massCenter(), massCenter); +@@ -132,10 +132,10 @@ + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; l++) { + const size_t I // Index of Ith value +- = __degreeOfFreedomSet(((*iOperator).second).i(), index[l]); ++ = this->__degreeOfFreedomSet(((*iOperator).second).i(), index[l]); + for (size_t m=0; m<FiniteElement::numberOfDegreesOfFreedom; m++) { + const size_t J // Index of Jth value +- = __degreeOfFreedomSet(((*iOperator).second).j(), index[m]); ++ = this->__degreeOfFreedomSet(((*iOperator).second).j(), index[m]); + A(I,J) += coef*elementaryMatrix(l,m); + } + } +@@ -183,7 +183,7 @@ + + ConformTransformation T(K); + JacobianTransformation J(T); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + const size_t cellNumber = icell.number(); + +@@ -204,11 +204,11 @@ + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; l++) { + const size_t I1 // Index of Ith value +- = __degreeOfFreedomSet(((*iOperator).second).i(), index[l]); ++ = this->__degreeOfFreedomSet(((*iOperator).second).i(), index[l]); + if (not((*this->__dirichletList)[I1])) { + for (size_t m=0; m<FiniteElement::numberOfDegreesOfFreedom; m++) { + const size_t I2 // Index of Jth value +- = __degreeOfFreedomSet(((*iOperator).second).j(), index[m]); ++ = this->__degreeOfFreedomSet(((*iOperator).second).j(), index[m]); + if (not((*this->__dirichletList)[I2])) { + z[I1] += coef*elementaryMatrix(l,m)*x[I2]; + } +@@ -240,7 +240,7 @@ + + ConformTransformation T(K); + JacobianTransformation J(T); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + const size_t cellNumber = icell.number(); + +@@ -261,11 +261,11 @@ + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; l++) { + const size_t I1 // Index of Ith value +- = __degreeOfFreedomSet(((*iOperator).second).i(), index[l]); ++ = this->__degreeOfFreedomSet(((*iOperator).second).i(), index[l]); + if (not((*this->__dirichletList)[I1])) { + for (size_t m=0; m<FiniteElement::numberOfDegreesOfFreedom; m++) { + const size_t I2 // Index of Jth value +- = __degreeOfFreedomSet(((*iOperator).second).j(), index[m]); ++ = this->__degreeOfFreedomSet(((*iOperator).second).j(), index[m]); + if (not((*this->__dirichletList)[I2])) { + z[I2] += coef*elementaryMatrix(l,m)*x[I1]; + } +@@ -295,7 +295,7 @@ + + ConformTransformation T(K); + JacobianTransformation J(T); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + size_t index[FiniteElement::numberOfDegreesOfFreedom]; + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { +@@ -378,10 +378,10 @@ + for (size_t l=0; l<FiniteElement::numberOfQuadraturePoints; ++l) + f[l] = F(quadrature[l]); + +- generatesElementaryVector(eVect,J,f); ++ this->generatesElementaryVector(eVect,J,f); + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { +- const size_t dof = __degreeOfFreedomSet(i,index[l]); ++ const size_t dof = this->__degreeOfFreedomSet(i,index[l]); + b[dof] += eVect[l]*J.jacobianDet(); + } + } +@@ -434,10 +434,10 @@ + for (size_t l=0; l<FiniteElement::numberOfQuadraturePoints; ++l) + f[l] = F(quadrature[l]); + +- generatesElementaryVector(eVect,J,f); ++ this->generatesElementaryVector(eVect,J,f); + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { +- const size_t dof = __degreeOfFreedomSet(testFunctionNumber,index[l]); ++ const size_t dof = this->__degreeOfFreedomSet(testFunctionNumber,index[l]); + b[dof] += eVect[l]*J.jacobianDet(); + } + } +@@ -466,7 +466,7 @@ + JacobianTransformation J(T); + + ElementaryMatrixType edxUV = 0; +- generatesElementaryMatrix(PDEOperator::firstorderop, ++ this->generatesElementaryMatrix(PDEOperator::firstorderop, + J, edxUV, fv.number()); + + TinyVector<3> massCenter; +@@ -483,7 +483,7 @@ + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { + const size_t dof +- = __degreeOfFreedomSet(testFunctionNumber,index[l]); ++ = this->__degreeOfFreedomSet(testFunctionNumber,index[l]); + + for (size_t m=0; m<FiniteElement::numberOfDegreesOfFreedom; ++m) { + b[dof] += edxUV(l,m)*gValues[index[m]]*fValue; +@@ -513,7 +513,7 @@ + JacobianTransformation J(T); + + ElementaryMatrixType eUdxV = 0; +- generatesElementaryMatrix(PDEOperator::firstorderopTransposed, ++ this->generatesElementaryMatrix(PDEOperator::firstorderopTransposed, + J, eUdxV, fv.number()); + + const size_t cellNumber = icell.number(); +@@ -556,7 +556,7 @@ + JacobianTransformation J(T); + + ElementaryMatrixType e = 0; +- generatesElementaryMatrix(PDEOperator::divmugrad, ++ this->generatesElementaryMatrix(PDEOperator::divmugrad, + J, e); + + TinyVector<3> massCenter; +@@ -573,7 +573,7 @@ + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { + const size_t dof +- = __degreeOfFreedomSet(testFunctionNumber,index[l]); ++ = this->__degreeOfFreedomSet(testFunctionNumber,index[l]); + + for (size_t m=0; m<FiniteElement::numberOfDegreesOfFreedom; ++m) { + b[dof] += e(l,m)*gValues[index[m]]*fValue; +@@ -698,7 +698,7 @@ + MeshType::iterator icell0(this->__mesh); + ConformTransformation T0(*icell0); + JacobianTransformation J(T0); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + for(MeshType::const_iterator icell(this->__mesh); + not(icell.end()); ++icell) { +@@ -775,7 +775,7 @@ + MeshType::const_iterator icell(this->__mesh); + ConformTransformation T0(*icell); + JacobianTransformation J(T0); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + for(MeshType::const_iterator icell(this->__mesh); + not(icell.end()); ++icell) { +@@ -836,7 +836,7 @@ + MeshType::const_iterator icell(this->__mesh); + ConformTransformation T0(*icell); + JacobianTransformation J(T0); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + for(MeshType::const_iterator icell(this->__mesh); + not(icell.end()); ++icell) { +@@ -893,7 +893,7 @@ + MeshType::const_iterator icell0(this->__mesh); + ConformTransformation T0(*icell0); + JacobianTransformation J(T0); +- generatesElementaryMatrix(this->__eSet,J); ++ this->generatesElementaryMatrix(this->__eSet,J); + + for(MeshType::const_iterator icell(this->__mesh); + not(icell.end()); ++icell) { +@@ -982,7 +982,7 @@ + f[l] = F(quadrature[l]); + } + +- generatesElementaryVector(eVect,J,f); ++ this->generatesElementaryVector(eVect,J,f); + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { + const size_t dof = this->__degreeOfFreedomSet(i,index[l]); +@@ -1040,7 +1040,7 @@ + f[l] = F(quadrature[l]); + } + +- generatesElementaryVector(eVect,J,f); ++ this->generatesElementaryVector(eVect,J,f); + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { + const size_t dof = this->__degreeOfFreedomSet(testFunctionNumber,index[l]); +@@ -1068,7 +1068,7 @@ + JacobianTransformation J(T0); + + ElementaryMatrixType edxUV = 0; +- generatesElementaryMatrix(PDEOperator::firstorderop, ++ this->generatesElementaryMatrix(PDEOperator::firstorderop, + J, edxUV, fv.number()); + + for(MeshType::const_iterator icell(this->__mesh); +@@ -1117,7 +1117,7 @@ + JacobianTransformation J(T0); + + ElementaryMatrixType eUdxV = 0; +- generatesElementaryMatrix(PDEOperator::firstorderopTransposed, ++ this->generatesElementaryMatrix(PDEOperator::firstorderopTransposed, + J, eUdxV, fv.number()); + + for(MeshType::const_iterator icell(this->__mesh); +@@ -1163,7 +1163,7 @@ + JacobianTransformation J(T0); + + ElementaryMatrixType e = 0; +- generatesElementaryMatrix(PDEOperator::divmugrad, ++ this->generatesElementaryMatrix(PDEOperator::divmugrad, + J, e); + + for(MeshType::const_iterator icell(this->__mesh); +@@ -1185,7 +1185,7 @@ + + for (size_t l=0; l<FiniteElement::numberOfDegreesOfFreedom; ++l) { + const size_t dof +- = __degreeOfFreedomSet(testFunctionNumber,index[l]); ++ = this->__degreeOfFreedomSet(testFunctionNumber,index[l]); + + for (size_t m=0; m<FiniteElement::numberOfDegreesOfFreedom; ++m) { + b[dof] += e(l,m)*gValues[index[m]]*fValue;