aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2019-02-18 22:12:28 +0100
committerGravatar Gael Guennebaud <g.gael@free.fr>2019-02-18 22:12:28 +0100
commit7580112c3168e6e436204ac4e584a86c3ab53498 (patch)
treec79114f3557dd1fb8718454ea59da16e6c77dded
parente23bf40dc24132f74745ccf4439efcc770daadd3 (diff)
Fix harmless Scalar vs RealScalar cast.
-rw-r--r--Eigen/src/Core/functors/NullaryFunctors.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/Eigen/src/Core/functors/NullaryFunctors.h b/Eigen/src/Core/functors/NullaryFunctors.h
index f5888abf0..16b645f91 100644
--- a/Eigen/src/Core/functors/NullaryFunctors.h
+++ b/Eigen/src/Core/functors/NullaryFunctors.h
@@ -42,14 +42,15 @@ template <typename Scalar, bool IsInteger> struct linspaced_op_impl;
template <typename Scalar>
struct linspaced_op_impl<Scalar,/*IsInteger*/false>
{
+ typedef typename NumTraits<Scalar>::Real RealScalar;
+
linspaced_op_impl(const Scalar& low, const Scalar& high, Index num_steps) :
- m_low(low), m_high(high), m_size1(num_steps==1 ? 1 : num_steps-1), m_step(num_steps==1 ? Scalar() : (high-low)/Scalar(num_steps-1)),
+ m_low(low), m_high(high), m_size1(num_steps==1 ? 1 : num_steps-1), m_step(num_steps==1 ? Scalar() : (high-low)/RealScalar(num_steps-1)),
m_flip(numext::abs(high)<numext::abs(low))
{}
template<typename IndexType>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Scalar operator() (IndexType i) const {
- typedef typename NumTraits<Scalar>::Real RealScalar;
if(m_flip)
return (i==0)? m_low : (m_high - RealScalar(m_size1-i)*m_step);
else