From 9a6967d9ba662ed2f2916a2f3f3c246a553e98b2 Mon Sep 17 00:00:00 2001 From: Hauke Heibel Date: Sun, 20 Jun 2010 13:17:57 +0200 Subject: [PATCH] Attempt to fix MatrixExponential/Function related warnings. --- unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h | 4 ++-- unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h b/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h index a4d827746..299809205 100644 --- a/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +++ b/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h @@ -132,7 +132,7 @@ class MatrixExponential { typedef typename NumTraits::Real RealScalar; /** \brief Reference to matrix whose exponential is to be computed. */ - const MatrixType& m_M; + const typename ei_nested::type m_M; /** \brief Even-degree terms in numerator of Padé approximant. */ MatrixType m_U; @@ -313,7 +313,7 @@ template struct MatrixExponentialReturnValue template inline void evalTo(ResultType& result) const { - const typename ei_eval::type srcEvaluated = m_src.eval(); + const typename Derived::PlainObject srcEvaluated = m_src.eval(); MatrixExponential me(srcEvaluated); me.compute(result); } diff --git a/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h b/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h index 99446758a..17040c5f3 100644 --- a/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +++ b/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h @@ -117,7 +117,7 @@ class MatrixFunction } private: - const MatrixType& m_A; /**< \brief Reference to argument of matrix function. */ + const typename ei_nested::type m_A; /**< \brief Reference to argument of matrix function. */ StemFunction *m_f; /**< \brief Stem function for matrix function under consideration */ MatrixFunction& operator=(const MatrixFunction&); @@ -167,7 +167,7 @@ class MatrixFunction void computeOffDiagonal(); DynMatrixType solveTriangularSylvester(const DynMatrixType& A, const DynMatrixType& B, const DynMatrixType& C); - const MatrixType& m_A; /**< \brief Reference to argument of matrix function. */ + const typename ei_nested::type m_A; /**< \brief Reference to argument of matrix function. */ StemFunction *m_f; /**< \brief Stem function for matrix function under consideration */ MatrixType m_T; /**< \brief Triangular part of Schur decomposition */ MatrixType m_U; /**< \brief Unitary part of Schur decomposition */ @@ -520,7 +520,7 @@ template class MatrixFunctionReturnValue template inline void evalTo(ResultType& result) const { - const typename ei_eval::type Aevaluated = m_A.eval(); + const typename Derived::PlainObject Aevaluated = m_A.eval(); MatrixFunction mf(Aevaluated, m_f); mf.compute(result); } @@ -529,7 +529,7 @@ template class MatrixFunctionReturnValue Index cols() const { return m_A.cols(); } private: - const Derived& m_A; + const typename ei_nested::type m_A; StemFunction *m_f; MatrixFunctionReturnValue& operator=(const MatrixFunctionReturnValue&);