From d78b8304fc7b77e7323501d6191b313ac00028aa Mon Sep 17 00:00:00 2001 From: Florin Iucha Date: Sat, 15 Dec 2018 09:52:47 -0500 Subject: [PATCH] Fix Clang7 conversion warning include/fmt/format-inl.h:707:23: error: implicit conversion changes signedness: 'typename std::make_unsigned::type' (aka 'unsigned int') to 'int' [-Werror,-Wsign-conversion] params.num_digits = to_unsigned(num_digits); ~ ^~~~~~~~~~~~~~~~~~~~~~~ include/fmt/format-inl.h:755:33: error: implicit conversion changes signedness: 'int' to 'size_t' (aka 'unsigned long') [-Werror,-Wsign-conversion] params.num_digits)) { ~~~~~~~^~~~~~~~~~} --- include/fmt/format-inl.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/fmt/format-inl.h b/include/fmt/format-inl.h index 606a474a..b3caf460 100644 --- a/include/fmt/format-inl.h +++ b/include/fmt/format-inl.h @@ -464,7 +464,7 @@ FMT_FUNC fp get_cached_power(int min_exponent, int &pow10_exponent) { } FMT_FUNC bool grisu2_round( - char *buf, int &size, size_t max_digits, uint64_t delta, + char *buf, int &size, int max_digits, uint64_t delta, uint64_t remainder, uint64_t exp, uint64_t diff, int &exp10) { while (remainder < diff && delta - remainder >= exp && (remainder + exp < diff || diff - remainder > remainder + exp - diff)) { @@ -483,7 +483,7 @@ FMT_FUNC bool grisu2_round( // Generates output using Grisu2 digit-gen algorithm. FMT_FUNC bool grisu2_gen_digits( char *buf, int &size, uint32_t hi, uint64_t lo, int &exp, - uint64_t delta, const fp &one, const fp &diff, size_t max_digits) { + uint64_t delta, const fp &one, const fp &diff, int max_digits) { // Generate digits for the most significant part (hi). while (exp > 0) { uint32_t digit = 0; @@ -704,7 +704,7 @@ FMT_FUNC gen_digits_params process_specs(const core_format_specs &specs, ++num_digits; break; } - params.num_digits = to_unsigned(num_digits); + params.num_digits = num_digits; char_counter counter{num_digits}; grisu2_prettify(params, params.num_digits, exp - num_digits, counter); buf.resize(to_unsigned(counter.size));