diff --git a/src/ArduinoJson/Numbers/FloatTraits.hpp b/src/ArduinoJson/Numbers/FloatTraits.hpp index 9bac8d50..8b9f80eb 100644 --- a/src/ArduinoJson/Numbers/FloatTraits.hpp +++ b/src/ArduinoJson/Numbers/FloatTraits.hpp @@ -192,8 +192,9 @@ struct FloatTraits { } }; +// Returns m*10^e template -inline TFloat make_float(TFloat m, TExponent e) { +inline TFloat multiplyByPowerOfTen(TFloat m, TExponent e) { using traits = FloatTraits; auto powersOfTen = e > 0 ? traits::positiveBinaryPowersOfTen() diff --git a/src/ArduinoJson/Numbers/parseNumber.hpp b/src/ArduinoJson/Numbers/parseNumber.hpp index ab345289..21d5e880 100644 --- a/src/ArduinoJson/Numbers/parseNumber.hpp +++ b/src/ArduinoJson/Numbers/parseNumber.hpp @@ -220,12 +220,12 @@ inline Number parseNumber(const char* s) { exponent > FloatTraits::exponent_max || mantissa > FloatTraits::mantissa_max; if (isDouble) { - auto final_result = make_float(double(mantissa), exponent); + auto final_result = multiplyByPowerOfTen(double(mantissa), exponent); return Number(is_negative ? -final_result : final_result); } else #endif { - auto final_result = make_float(float(mantissa), exponent); + auto final_result = multiplyByPowerOfTen(float(mantissa), exponent); return Number(is_negative ? -final_result : final_result); } }