From 414b673706b41cb9e898d9e16df1a53cd5727d83 Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Wed, 29 Jul 2015 22:37:36 -0400 Subject: [PATCH] Added test for T1 is signed --- misc.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/misc.h b/misc.h index 084d22bd..8a450c3f 100644 --- a/misc.h +++ b/misc.h @@ -381,8 +381,14 @@ inline bool SafeConvert(T1 from, T2 &to) // Fall through for T1 is unsigned } - if(from > static_cast(std::numeric_limits::max())) + // Handle unsigned greater + if(!std::numeric_limits::is_signed && from > static_cast(std::numeric_limits::max())) { return false; + } + // Handle signed less + else if(from < static_cast(std::numeric_limits::min())) { + return false; + } return true; }