aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2015-09-04 15:25:58 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2015-09-04 15:25:58 +0200
commitb20a55a60883a8cb61a088b006fe59a1c61023da (patch)
tree0b5859be211bf914304eecc9ee80a4eb1172f8e0 /Eigen/src
parented265258e4023f25c8e058fae3fba127abf51edf (diff)
Workaround wrong instanciation made by VS2010
Diffstat (limited to 'Eigen/src')
-rw-r--r--Eigen/src/SparseCore/SparseCwiseBinaryOp.h27
1 files changed, 12 insertions, 15 deletions
diff --git a/Eigen/src/SparseCore/SparseCwiseBinaryOp.h b/Eigen/src/SparseCore/SparseCwiseBinaryOp.h
index 1137424da..973b80095 100644
--- a/Eigen/src/SparseCore/SparseCwiseBinaryOp.h
+++ b/Eigen/src/SparseCore/SparseCwiseBinaryOp.h
@@ -67,15 +67,14 @@ struct binary_evaluator<CwiseBinaryOp<BinaryOp, Lhs, Rhs>, IteratorBased, Iterat
protected:
typedef typename evaluator<Lhs>::InnerIterator LhsIterator;
typedef typename evaluator<Rhs>::InnerIterator RhsIterator;
-public:
typedef CwiseBinaryOp<BinaryOp, Lhs, Rhs> XprType;
+ typedef typename traits<XprType>::Scalar Scalar;
+ typedef typename XprType::StorageIndex StorageIndex;
+public:
class ReverseInnerIterator;
class InnerIterator
{
- typedef typename traits<XprType>::Scalar Scalar;
- typedef typename XprType::StorageIndex StorageIndex;
-
public:
EIGEN_STRONG_INLINE InnerIterator(const binary_evaluator& aEval, Index outer)
@@ -160,15 +159,14 @@ protected:
typedef scalar_product_op<T> BinaryOp;
typedef typename evaluator<Lhs>::InnerIterator LhsIterator;
typedef typename evaluator<Rhs>::InnerIterator RhsIterator;
-public:
typedef CwiseBinaryOp<BinaryOp, Lhs, Rhs> XprType;
+ typedef typename XprType::StorageIndex StorageIndex;
+ typedef typename traits<XprType>::Scalar Scalar;
+public:
class ReverseInnerIterator;
class InnerIterator
{
- typedef typename traits<XprType>::Scalar Scalar;
- typedef typename XprType::StorageIndex StorageIndex;
-
public:
EIGEN_STRONG_INLINE InnerIterator(const binary_evaluator& aEval, Index outer)
@@ -242,15 +240,14 @@ protected:
typedef scalar_product_op<T> BinaryOp;
typedef evaluator<Lhs> LhsEvaluator;
typedef typename evaluator<Rhs>::InnerIterator RhsIterator;
-public:
typedef CwiseBinaryOp<BinaryOp, Lhs, Rhs> XprType;
+ typedef typename XprType::StorageIndex StorageIndex;
+ typedef typename traits<XprType>::Scalar Scalar;
+public:
class ReverseInnerIterator;
class InnerIterator
{
- typedef typename traits<XprType>::Scalar Scalar;
- typedef typename XprType::StorageIndex StorageIndex;
-
enum { IsRowMajor = (int(Rhs::Flags)&RowMajorBit)==RowMajorBit };
public:
@@ -312,14 +309,14 @@ protected:
typedef scalar_product_op<T> BinaryOp;
typedef typename evaluator<Lhs>::InnerIterator LhsIterator;
typedef evaluator<Rhs> RhsEvaluator;
-public:
typedef CwiseBinaryOp<BinaryOp, Lhs, Rhs> XprType;
+ typedef typename XprType::StorageIndex StorageIndex;
+ typedef typename traits<XprType>::Scalar Scalar;
+public:
class ReverseInnerIterator;
class InnerIterator
{
- typedef typename traits<XprType>::Scalar Scalar;
- typedef typename XprType::StorageIndex StorageIndex;
enum { IsRowMajor = (int(Lhs::Flags)&RowMajorBit)==RowMajorBit };
public: