From ae0a17d30be41bf66a2915ce7b059f818a820241 Mon Sep 17 00:00:00 2001 From: Hauke Heibel Date: Thu, 11 Feb 2010 11:39:02 +0100 Subject: [PATCH] Here is the proper fix. --- Eigen/src/Core/MathFunctions.h | 6 +++--- Eigen/src/Core/NumTraits.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Eigen/src/Core/MathFunctions.h b/Eigen/src/Core/MathFunctions.h index d9119c245..1a4561555 100644 --- a/Eigen/src/Core/MathFunctions.h +++ b/Eigen/src/Core/MathFunctions.h @@ -321,15 +321,15 @@ template<> inline bool ei_random() { return (ei_random(0,1) == 1); } -inline bool ei_isMuchSmallerThan(bool a, bool, bool = false/*NumTraits::dummy_precision()*/) +inline bool ei_isMuchSmallerThan(bool a, bool, bool = NumTraits::dummy_precision()) { return !a; } -inline bool ei_isApprox(bool a, bool b, bool = false/*NumTraits::dummy_precision()*/) +inline bool ei_isApprox(bool a, bool b, bool = NumTraits::dummy_precision()) { return a == b; } -inline bool ei_isApproxOrLessThan(bool a, bool b, bool = false/*NumTraits::dummy_precision()*/) +inline bool ei_isApproxOrLessThan(bool a, bool b, bool = NumTraits::dummy_precision()) { return int(a) <= int(b); } diff --git a/Eigen/src/Core/NumTraits.h b/Eigen/src/Core/NumTraits.h index 4f0cc04eb..37787b569 100644 --- a/Eigen/src/Core/NumTraits.h +++ b/Eigen/src/Core/NumTraits.h @@ -61,7 +61,7 @@ template struct ei_default_float_numtraits template struct ei_default_integral_numtraits : std::numeric_limits { - inline static int dummy_precision() { return 0; } + inline static T dummy_precision() { return T(0); } inline static T highest() { return std::numeric_limits::max(); } inline static T lowest() { return std::numeric_limits::min(); } };