Added custom implementation of strtod() (issue #453)

This commit is contained in:
Benoit Blanchon
2017-03-19 15:23:06 +01:00
parent 13409c433a
commit c4567bac18
15 changed files with 593 additions and 83 deletions

View File

@@ -7,10 +7,11 @@
#pragma once
// If Visual Studo <= 2012
#if defined(_MSC_VER) && _MSC_VER <= 1700
// If Visual Studo
#if defined(_MSC_VER)
#include <float.h>
#include <limits>
namespace ArduinoJson {
namespace Polyfills {
@@ -23,6 +24,16 @@ template <typename T>
bool isInfinity(T x) {
return !_finite(x);
}
template <typename T>
T nan() {
return std::numeric_limits<T>::quiet_NaN();
}
template <typename T>
T inf() {
return std::numeric_limits<T>::infinity();
}
}
}
@@ -101,6 +112,16 @@ inline bool isInfinity<float>(float x) {
}
#endif
template <typename T>
T nan() {
return static_cast<T>(NAN);
}
template <typename T>
T inf() {
return static_cast<T>(INFINITY);
}
#if defined(__GNUC__)
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
#pragma GCC diagnostic pop