Loading changes/bug22915 0 → 100644 +3 −0 Original line number Diff line number Diff line o Minor bugfixes (compilation warnings): - Suppress -Wdouble-promotion warnings with clang 4.0. Fixes bug 22915; bugfix on 0.2.8.1-alpha. src/common/util.c +16 −0 Original line number Diff line number Diff line Loading @@ -5705,6 +5705,18 @@ clamp_double_to_int64(double number) #define PROBLEMATIC_FLOAT_CONVERSION_WARNING DISABLE_GCC_WARNING(float-conversion) #endif /* With clang 4.0 we apparently run into "double promotion" warnings here, since clang thinks we're promoting a double to a long double. */ #if defined(__clang__) #if __has_warning("-Wdouble-promotion") #define PROBLEMATIC_DOUBLE_PROMOTION_WARNING DISABLE_GCC_WARNING(double-promotion) #endif #endif /* NaN is a special case that can't be used with the logic below. */ if (isnan(number)) { return 0; Loading @@ -5730,6 +5742,10 @@ DISABLE_GCC_WARNING(float-conversion) /* Handle infinities and finite numbers with magnitude >= 2^63. */ return signbit(number) ? INT64_MIN : INT64_MAX; #ifdef PROBLEMATIC_DOUBLE_PROMOTION_WARNING ENABLE_GCC_WARNING(double-promotion) #endif #ifdef PROBLEMATIC_FLOAT_CONVERSION_WARNING ENABLE_GCC_WARNING(float-conversion) #endif Loading Loading
changes/bug22915 0 → 100644 +3 −0 Original line number Diff line number Diff line o Minor bugfixes (compilation warnings): - Suppress -Wdouble-promotion warnings with clang 4.0. Fixes bug 22915; bugfix on 0.2.8.1-alpha.
src/common/util.c +16 −0 Original line number Diff line number Diff line Loading @@ -5705,6 +5705,18 @@ clamp_double_to_int64(double number) #define PROBLEMATIC_FLOAT_CONVERSION_WARNING DISABLE_GCC_WARNING(float-conversion) #endif /* With clang 4.0 we apparently run into "double promotion" warnings here, since clang thinks we're promoting a double to a long double. */ #if defined(__clang__) #if __has_warning("-Wdouble-promotion") #define PROBLEMATIC_DOUBLE_PROMOTION_WARNING DISABLE_GCC_WARNING(double-promotion) #endif #endif /* NaN is a special case that can't be used with the logic below. */ if (isnan(number)) { return 0; Loading @@ -5730,6 +5742,10 @@ DISABLE_GCC_WARNING(float-conversion) /* Handle infinities and finite numbers with magnitude >= 2^63. */ return signbit(number) ? INT64_MIN : INT64_MAX; #ifdef PROBLEMATIC_DOUBLE_PROMOTION_WARNING ENABLE_GCC_WARNING(double-promotion) #endif #ifdef PROBLEMATIC_FLOAT_CONVERSION_WARNING ENABLE_GCC_WARNING(float-conversion) #endif Loading