diff --git a/include/nlohmann/detail/meta/type_traits.hpp b/include/nlohmann/detail/meta/type_traits.hpp index 801df342c..d901f1e00 100644 --- a/include/nlohmann/detail/meta/type_traits.hpp +++ b/include/nlohmann/detail/meta/type_traits.hpp @@ -191,15 +191,10 @@ struct is_constructible_object_type_impl < using object_t = typename BasicJsonType::object_t; static constexpr bool value = - std::is_constructible::value and - (std::is_same::value or - (has_from_json::value or - has_non_default_from_json < - BasicJsonType, - typename ConstructibleObjectType::mapped_type >::value)); + (std::is_constructible::value and + std::is_same::value) or + (has_from_json::value or + has_non_default_from_json::value); }; template diff --git a/single_include/nlohmann/json.hpp b/single_include/nlohmann/json.hpp index 6b3d19f01..87e8eae24 100644 --- a/single_include/nlohmann/json.hpp +++ b/single_include/nlohmann/json.hpp @@ -582,15 +582,10 @@ struct is_constructible_object_type_impl < using object_t = typename BasicJsonType::object_t; static constexpr bool value = - std::is_constructible::value and - (std::is_same::value or - (has_from_json::value or - has_non_default_from_json < - BasicJsonType, - typename ConstructibleObjectType::mapped_type >::value)); + (std::is_constructible::value and + std::is_same::value) or + (has_from_json::value or + has_non_default_from_json::value); }; template