diff --git a/include/nlohmann/detail/conversions/from_json.hpp b/include/nlohmann/detail/conversions/from_json.hpp index c661dd66e..4e4efd0a6 100644 --- a/include/nlohmann/detail/conversions/from_json.hpp +++ b/include/nlohmann/detail/conversions/from_json.hpp @@ -258,7 +258,7 @@ template < typename BasicJsonType, typename T, std::size_t... Idx > std::array from_json_inplace_array_impl(BasicJsonType&& j, identity_tag> /*unused*/, index_sequence /*unused*/) { - return { std::forward(j).at(Idx).template get()... }; + return { { std::forward(j).at(Idx).template get()... } }; } template < typename BasicJsonType, typename T, std::size_t N > diff --git a/single_include/nlohmann/json.hpp b/single_include/nlohmann/json.hpp index 62223ed28..6fde2fd8c 100644 --- a/single_include/nlohmann/json.hpp +++ b/single_include/nlohmann/json.hpp @@ -3991,7 +3991,7 @@ template < typename BasicJsonType, typename T, std::size_t... Idx > std::array from_json_inplace_array_impl(BasicJsonType&& j, identity_tag> /*unused*/, index_sequence /*unused*/) { - return { std::forward(j).at(Idx).template get()... }; + return { { std::forward(j).at(Idx).template get()... } }; } template < typename BasicJsonType, typename T, std::size_t N > diff --git a/test/src/unit-regression2.cpp b/test/src/unit-regression2.cpp index f9873f5f4..4d48e4765 100644 --- a/test/src/unit-regression2.cpp +++ b/test/src/unit-regression2.cpp @@ -149,7 +149,7 @@ namespace nlohmann template <> struct adl_serializer { - static NonDefaultConstructible from_json (json const& j) noexcept + static NonDefaultConstructible from_json (json const& j) { return NonDefaultConstructible(j.get()); }