diff options
author | Gael Guennebaud <g.gael@free.fr> | 2014-11-28 14:39:47 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2014-11-28 14:39:47 +0100 |
commit | b1f9f603a071e43c2823dbf8081d2669b0a5c717 (patch) | |
tree | 0ff58aabaf497b8aecd7b02945a1d75c76fc106b /Eigen/src/Core/MatrixBase.h | |
parent | 5384e891472e690dc5dabdda014a1e4fc0117691 (diff) |
Simplify return type of diagonal(Index) (and ease compiler job)
Diffstat (limited to 'Eigen/src/Core/MatrixBase.h')
-rw-r--r-- | Eigen/src/Core/MatrixBase.h | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/Eigen/src/Core/MatrixBase.h b/Eigen/src/Core/MatrixBase.h index 2e6b631bf..97a59e692 100644 --- a/Eigen/src/Core/MatrixBase.h +++ b/Eigen/src/Core/MatrixBase.h @@ -244,19 +244,14 @@ template<typename Derived> class MatrixBase template<int Index> EIGEN_DEVICE_FUNC typename ConstDiagonalIndexReturnType<Index>::Type diagonal() const; + + typedef Diagonal<Derived,DynamicIndex> DiagonalDynamicIndexReturnType; + typedef const Diagonal<const Derived,DynamicIndex> ConstDiagonalDynamicIndexReturnType; - // Note: The "MatrixBase::" prefixes are added to help MSVC9 to match these declarations with the later implementations. - // On the other hand they confuse MSVC8... - #if EIGEN_COMP_MSVC >= 1500 // 2008 or later - typename MatrixBase::template DiagonalIndexReturnType<DynamicIndex>::Type diagonal(Index index); - typename MatrixBase::template ConstDiagonalIndexReturnType<DynamicIndex>::Type diagonal(Index index) const; - #else EIGEN_DEVICE_FUNC - typename DiagonalIndexReturnType<DynamicIndex>::Type diagonal(Index index); - + DiagonalDynamicIndexReturnType diagonal(Index index); EIGEN_DEVICE_FUNC - typename ConstDiagonalIndexReturnType<DynamicIndex>::Type diagonal(Index index) const; - #endif + ConstDiagonalDynamicIndexReturnType diagonal(Index index) const; template<unsigned int Mode> struct TriangularViewReturnType { typedef TriangularView<Derived, Mode> Type; }; template<unsigned int Mode> struct ConstTriangularViewReturnType { typedef const TriangularView<const Derived, Mode> Type; }; |