Unverified Commit 9578c0f7 authored by Niels Lohmann's avatar Niels Lohmann

Merge branch 'develop' into feature/manual_lexer

parents 5d586b01 b4dbebff
...@@ -5650,7 +5650,7 @@ class basic_json ...@@ -5650,7 +5650,7 @@ class basic_json
@ref push_back(const typename object_t::value_type&). Otherwise, @a init @ref push_back(const typename object_t::value_type&). Otherwise, @a init
is converted to a JSON value and added using @ref push_back(basic_json&&). is converted to a JSON value and added using @ref push_back(basic_json&&).
@param init an initializer list @param[in] init an initializer list
@complexity Linear in the size of the initializer list @a init. @complexity Linear in the size of the initializer list @a init.
...@@ -6127,13 +6127,17 @@ class basic_json ...@@ -6127,13 +6127,17 @@ class basic_json
Compares two JSON values for equality according to the following rules: Compares two JSON values for equality according to the following rules:
- Two JSON values are equal if (1) they are from the same type and (2) - Two JSON values are equal if (1) they are from the same type and (2)
their stored values are the same. their stored values are the same according to their respective
`operator==`.
- Integer and floating-point numbers are automatically converted before - Integer and floating-point numbers are automatically converted before
comparison. Floating-point numbers are compared indirectly: two comparison. Floating-point numbers are compared indirectly: two
floating-point numbers `f1` and `f2` are considered equal if neither floating-point numbers `f1` and `f2` are considered equal if neither
`f1 > f2` nor `f2 > f1` holds. `f1 > f2` nor `f2 > f1` holds. Note than two NaN values are always
treated as unequal.
- Two JSON null values are equal. - Two JSON null values are equal.
@note NaN values never compare equal to themselves or to other NaN values.
@param[in] lhs first JSON value to consider @param[in] lhs first JSON value to consider
@param[in] rhs second JSON value to consider @param[in] rhs second JSON value to consider
@return whether the values @a lhs and @a rhs are equal @return whether the values @a lhs and @a rhs are equal
......
...@@ -838,6 +838,14 @@ TEST_CASE("regression tests") ...@@ -838,6 +838,14 @@ TEST_CASE("regression tests")
CHECK(j["double_value"].is_number_float()); CHECK(j["double_value"].is_number_float());
} }
SECTION("issue #464 - VS2017 implicit to std::string conversion fix")
{
json v = "test";
std::string test;
test = v;
CHECK(v == "test");
}
SECTION("issue #465 - roundtrip error while parsing 1000000000000000010E5") SECTION("issue #465 - roundtrip error while parsing 1000000000000000010E5")
{ {
json j1 = json::parse("1000000000000000010E5"); json j1 = json::parse("1000000000000000010E5");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment