diff --git a/Eigen/src/Core/ProductBase.h b/Eigen/src/Core/ProductBase.h index b002cdf5c..5640ce909 100644 --- a/Eigen/src/Core/ProductBase.h +++ b/Eigen/src/Core/ProductBase.h @@ -88,7 +88,7 @@ class ProductBase : public MatrixBase #ifndef EIGEN_NO_MALLOC typedef typename Base::PlainObject BasePlainObject; typedef Matrix DynPlainObject; - typedef typename internal::conditional<(BasePlainObject::SizeAtCompileTime==Dynamic) || (BasePlainObject::SizeAtCompileTime*sizeof(Scalar) < EIGEN_STACK_ALLOCATION_LIMIT), + typedef typename internal::conditional<(BasePlainObject::SizeAtCompileTime==Dynamic) || (int(BasePlainObject::SizeAtCompileTime*sizeof(Scalar)) < int(EIGEN_STACK_ALLOCATION_LIMIT)), BasePlainObject, DynPlainObject>::type PlainObject; #else typedef typename Base::PlainObject PlainObject;