The new floating point representation (#201) has a bug when it comes to negative exponents. Number 2342e-2 is correctly duped as 23.42, but when it is parsed from a string, the output is 2e01.
Example code:
json j2a = 2342e-2;
json j2b = json::parse("2342e-2");
CHECK(j2a.dump() == "23.42");
CHECK(j2b.dump() == "2342e-2");
Output:
FAILED:
CHECK( j2b.dump() == "2342e-2" )
with expansion:
"2e01" == "2342e-2"
@twelsby Any idea about this?