The issue is that numbers like 2.01 or 3.01 can not be precisely represented with binary floating point numbers. This replaces all occurrences of 'std::numeric_limits<T>::digits10 + 1' with 'std::numeric_limits<T>::max_digits10'. Background: Using 'std::numeric_limits<T>::digits10 + 1' is not precise enough. Converting a 'float' into a 'string' and back to a 'float' will not always produce the original 'float' value. To guarantee that the 'string' representation has sufficient precision the value 'std::numeric_limits<T>::max_digits10' has to be used. |
||
---|---|---|
.. | ||
emitter_test.cpp | ||
encoding_test.cpp | ||
gen_emitter_test.cpp | ||
handler_spec_test.cpp | ||
handler_test.cpp | ||
load_node_test.cpp | ||
node_spec_test.cpp |