diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-12-19 02:59:04 +0000 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-12-19 02:59:04 +0000 |
commit | 84bb868f07361af7991abd1f0cdb8017af96c0a5 (patch) | |
tree | 2d1361c0ae718bb31af9f650605f8c4b83adba49 /Eigen | |
parent | f34a4fa3358133e05afcf0845a58497d16436977 (diff) |
* more MSVC warning fixes from Kenneth Riddile
* actually GCC 4.3.0 has a bug, "deprecated" placed at the end
of a function prototype doesn't have any effect, moving them to
the start of the function prototype makes it actually work!
* finish porting the cholesky unit-test to the new LLT/LDLT,
after the above fix revealed a deprecated warning
Diffstat (limited to 'Eigen')
-rw-r--r-- | Eigen/src/Cholesky/Cholesky.h | 2 | ||||
-rw-r--r-- | Eigen/src/Cholesky/CholeskyWithoutSquareRoot.h | 2 | ||||
-rw-r--r-- | Eigen/src/Core/MatrixBase.h | 7 | ||||
-rw-r--r-- | Eigen/src/Core/util/DisableMSVCWarnings.h | 2 |
4 files changed, 9 insertions, 4 deletions
diff --git a/Eigen/src/Cholesky/Cholesky.h b/Eigen/src/Cholesky/Cholesky.h index 69e906ee7..bbf24fab3 100644 --- a/Eigen/src/Cholesky/Cholesky.h +++ b/Eigen/src/Cholesky/Cholesky.h @@ -58,7 +58,7 @@ template<typename MatrixType> class Cholesky inline bool isPositiveDefinite(void) const { return m_isPositiveDefinite; } template<typename Derived> - typename MatrixBase<Derived>::PlainMatrixType_ColMajor solve(const MatrixBase<Derived> &b) const EIGEN_DEPRECATED; + EIGEN_DEPRECATED typename MatrixBase<Derived>::PlainMatrixType_ColMajor solve(const MatrixBase<Derived> &b) const; template<typename RhsDerived, typename ResDerived> bool solve(const MatrixBase<RhsDerived> &b, MatrixBase<ResDerived> *result) const; diff --git a/Eigen/src/Cholesky/CholeskyWithoutSquareRoot.h b/Eigen/src/Cholesky/CholeskyWithoutSquareRoot.h index b40ba18c0..0f3e9e07f 100644 --- a/Eigen/src/Cholesky/CholeskyWithoutSquareRoot.h +++ b/Eigen/src/Cholesky/CholeskyWithoutSquareRoot.h @@ -55,7 +55,7 @@ template<typename MatrixType> class CholeskyWithoutSquareRoot inline bool isPositiveDefinite(void) const { return m_isPositiveDefinite; } template<typename Derived> - typename Derived::Eval solve(const MatrixBase<Derived> &b) const EIGEN_DEPRECATED; + EIGEN_DEPRECATED typename Derived::Eval solve(const MatrixBase<Derived> &b) const; template<typename RhsDerived, typename ResDerived> bool solve(const MatrixBase<RhsDerived> &b, MatrixBase<ResDerived> *result) const; diff --git a/Eigen/src/Core/MatrixBase.h b/Eigen/src/Core/MatrixBase.h index bb3cc0532..0c3a04ff4 100644 --- a/Eigen/src/Core/MatrixBase.h +++ b/Eigen/src/Core/MatrixBase.h @@ -495,7 +495,12 @@ template<typename Derived> class MatrixBase * Notice that in the case of a plain matrix or vector (not an expression) this function just returns * a const reference, in order to avoid a useless copy. */ - EIGEN_ALWAYS_INLINE const typename ei_eval<Derived>::type eval() const + #ifdef _MSC_VER + inline // MSVC 2008 can't force-inline this method and emits a warning, so do just 'inline' + #else + EIGEN_ALWAYS_INLINE + #endif + const typename ei_eval<Derived>::type eval() const { return typename ei_eval<Derived>::type(derived()); } diff --git a/Eigen/src/Core/util/DisableMSVCWarnings.h b/Eigen/src/Core/util/DisableMSVCWarnings.h index 8152db5ff..e6c653d70 100644 --- a/Eigen/src/Core/util/DisableMSVCWarnings.h +++ b/Eigen/src/Core/util/DisableMSVCWarnings.h @@ -3,7 +3,7 @@ #ifdef _MSC_VER #pragma warning( push ) - #pragma warning( disable : 4181 4244 4127 ) + #pragma warning( disable : 4181 4244 4127 4211 ) #endif #endif // EIGEN_DISABLEMSVCWARNINGS_H
\ No newline at end of file |