From 2b7b549e9e2319f0b33615c675b8453adf693fed Mon Sep 17 00:00:00 2001 From: Hauke Heibel Date: Wed, 9 Jun 2010 17:16:05 +0200 Subject: Fix #131. --- Eigen/src/Core/CwiseBinaryOp.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'Eigen/src/Core/CwiseBinaryOp.h') diff --git a/Eigen/src/Core/CwiseBinaryOp.h b/Eigen/src/Core/CwiseBinaryOp.h index 6e158fdf1..3593e07d6 100644 --- a/Eigen/src/Core/CwiseBinaryOp.h +++ b/Eigen/src/Core/CwiseBinaryOp.h @@ -45,8 +45,19 @@ * \sa MatrixBase::binaryExpr(const MatrixBase &,const CustomBinaryOp &) const, class CwiseUnaryOp, class CwiseNullaryOp */ template -struct ei_traits > : ei_traits +struct ei_traits > { + // we must not inherit from ei_traits since it incurrs + // the potential to cause problems with MSVC + typedef typename ei_cleantype::type Ancestor; + typedef typename ei_traits::XprKind XprKind; + enum { + RowsAtCompileTime = ei_traits::RowsAtCompileTime, + ColsAtCompileTime = ei_traits::ColsAtCompileTime, + MaxRowsAtCompileTime = ei_traits::MaxRowsAtCompileTime, + MaxColsAtCompileTime = ei_traits::MaxColsAtCompileTime + }; + // even though we require Lhs and Rhs to have the same scalar type (see CwiseBinaryOp constructor), // we still want to handle the case when the result type is different. typedef typename ei_result_of< -- cgit v1.2.3