From 31906d83ec1fff2b667a32a0730c649d12889ef6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ho=C5=99e=C5=88ovsk=C3=BD?= Date: Thu, 17 Oct 2019 11:21:17 +0200 Subject: [PATCH] Add parenthesis to prevent macro expansions of min/max Closes #1772 --- include/internal/catch_matchers_floating.cpp | 4 ++-- include/internal/catch_random_number_generator.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/internal/catch_matchers_floating.cpp b/include/internal/catch_matchers_floating.cpp index be969397..cdc0f0cb 100644 --- a/include/internal/catch_matchers_floating.cpp +++ b/include/internal/catch_matchers_floating.cpp @@ -142,7 +142,7 @@ namespace Floating { WithinUlpsMatcher::WithinUlpsMatcher(double target, uint64_t ulps, FloatingPointKind baseType) :m_target{ target }, m_ulps{ ulps }, m_type{ baseType } { CATCH_ENFORCE(m_type == FloatingPointKind::Double - || m_ulps < std::numeric_limits::max(), + || m_ulps < (std::numeric_limits::max)(), "Provided ULP is impossibly large for a float comparison."); } @@ -201,7 +201,7 @@ namespace Floating { } bool WithinRelMatcher::match(double const& matchee) const { - const auto relMargin = m_epsilon * std::max(std::fabs(matchee), std::fabs(m_target)); + const auto relMargin = m_epsilon * (std::max)(std::fabs(matchee), std::fabs(m_target)); return marginComparison(matchee, m_target, std::isinf(relMargin)? 0 : relMargin); } diff --git a/include/internal/catch_random_number_generator.h b/include/internal/catch_random_number_generator.h index 3f0d6d38..79d62794 100644 --- a/include/internal/catch_random_number_generator.h +++ b/include/internal/catch_random_number_generator.h @@ -20,10 +20,10 @@ namespace Catch { using state_type = std::uint64_t; public: using result_type = std::uint32_t; - static constexpr result_type min() { + static constexpr result_type (min)() { return 0; } - static constexpr result_type max() { + static constexpr result_type (max)() { return static_cast(-1); }