json
json copied to clipboard
Compile failure for macos 10.10 SDK + darwin14
Description
The json.hpp header fails to build in a cross build environment. This is an ubuntu 22.04 docker container with darwin14 and MacOSX10.10 SDK. Clang is 1001@d82e6b7e292b:~$ /usr/x86_64-apple-darwin14/bin/../bin/o64-clang++-libc++ -v Ubuntu clang version 14.0.0-1ubuntu1 Target: x86_64-apple-darwin14 Thread model: posix InstalledDir: /usr/bin
Reproduction steps
I hit the issue with an osxcross docker container.
I compile the minimal code example as:
/usr/x86_64-apple-darwin14/bin/../bin/o64-clang++-libc++ -I/src/libcommon/3rd_party/json/include -o osxfail.o -c osxfail.C
This is clang14.
The same file compiles fine on rhel8.7 clang14.
I tried preprocessing the 2 files, then trimming down the json to try to track down the issue. The trimmed json is the same for both the linux and osx files. The only difference is the included header code. I can reproduce the error using the ubuntu clang14 compiler on the resulting preprocessed file.
Expected vs. actual results
It should compile :-)
Minimal code example
#include <nlohmann/json.hpp>
Error messages
1001@d82e6b7e292b:~$ /usr/x86_64-apple-darwin14/bin/../bin/o64-clang++-libc++ -I/src/libcommon/3rd_party/json/include -o osxfail.o -c osxfail.C
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:37:
In file included from /usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/algorithm:626:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/utility:254:9: error: field has incomplete type 'nlohmann::basic_json<>'
_T2 second;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:588:16: note: in instantiation of template class 'std::pair<const std::basic_string<char>, nlohmann::basic_json<>>' requested here
value_type __cc;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/__tree:603:16: note: in instantiation of template class 'std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>' requested here
value_type __value_;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/__tree:625:22: note: in instantiation of template class 'std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *>' requested here
typedef typename __node::base __node_base;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:650:19: note: in instantiation of template class 'std::__tree_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>' requested here
_TreeIterator __i_;
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/internal_iterator.hpp:18:48: note: in instantiation of template class 'std::__map_iterator<std::__tree_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>>' requested here
typename BasicJsonType::object_t::iterator object_iterator {};
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:640:72: note: (skipping 4 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
internal_iterator<typename std::remove_const<BasicJsonType>::type> m_it {};
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2072:14: note: in instantiation of template class 'std::__is_constructible<false, nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: public __is_constructible<is_scalar<_Tp>::value || is_reference<_Tp>::value,
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2098:14: note: in instantiation of template class 'std::__is_constructible_void_check<false, nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: public __is_constructible_void_check<__contains_void<_Tp, _Args...>::value
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2578:34: note: in instantiation of template class 'std::is_constructible<nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: __is_nothrow_constructible<is_constructible<_Tp, _Args...>::value, _Tp, _Args...>
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2713:14: note: in instantiation of template class 'std::is_nothrow_constructible<nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: public is_nothrow_constructible<_Tp, typename add_rvalue_reference<_Tp>::type>
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8853:5: note: in instantiation of template class 'std::is_nothrow_move_constructible<nlohmann::basic_json<>>' requested here
is_nothrow_move_constructible<nlohmann::json>::value&&
^
/src/libcommon/3rd_party/json/include/nlohmann/json_fwd.hpp:38:7: note: definition of 'nlohmann::basic_json<>' is not complete until the closing '}'
class basic_json;
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:37:
In file included from /usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/algorithm:626:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/utility:254:9: error: field has incomplete type 'nlohmann::basic_json<>'
_T2 second;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:589:21: note: in instantiation of template class 'std::pair<std::basic_string<char>, nlohmann::basic_json<>>' requested here
__nc_value_type __nc;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/__tree:603:16: note: in instantiation of template class 'std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>' requested here
value_type __value_;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/__tree:625:22: note: in instantiation of template class 'std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *>' requested here
typedef typename __node::base __node_base;
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:650:19: note: in instantiation of template class 'std::__tree_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>' requested here
_TreeIterator __i_;
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/internal_iterator.hpp:18:48: note: in instantiation of template class 'std::__map_iterator<std::__tree_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>>' requested here
typename BasicJsonType::object_t::iterator object_iterator {};
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:640:72: note: (skipping 4 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
internal_iterator<typename std::remove_const<BasicJsonType>::type> m_it {};
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2072:14: note: in instantiation of template class 'std::__is_constructible<false, nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: public __is_constructible<is_scalar<_Tp>::value || is_reference<_Tp>::value,
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2098:14: note: in instantiation of template class 'std::__is_constructible_void_check<false, nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: public __is_constructible_void_check<__contains_void<_Tp, _Args...>::value
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2578:34: note: in instantiation of template class 'std::is_constructible<nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: __is_nothrow_constructible<is_constructible<_Tp, _Args...>::value, _Tp, _Args...>
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/type_traits:2713:14: note: in instantiation of template class 'std::is_nothrow_constructible<nlohmann::basic_json<>, nlohmann::basic_json<> &&>' requested here
: public is_nothrow_constructible<_Tp, typename add_rvalue_reference<_Tp>::type>
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8853:5: note: in instantiation of template class 'std::is_nothrow_move_constructible<nlohmann::basic_json<>>' requested here
is_nothrow_move_constructible<nlohmann::json>::value&&
^
/src/libcommon/3rd_party/json/include/nlohmann/json_fwd.hpp:38:7: note: definition of 'nlohmann::basic_json<>' is not complete until the closing '}'
class basic_json;
^
In file included from osxfail.C:1:
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:4692:24: error: no matching constructor for initialization of 'nlohmann::basic_json<>::const_iterator' (aka 'iter_impl<const nlohmann::basic_json<>>')
const_iterator result(this);
^ ~~~~
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:4662:16: note: in instantiation of member function 'nlohmann::basic_json<>::cend' requested here
return cend();
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/hash.hpp:63:38: note: in instantiation of member function 'nlohmann::basic_json<>::end' requested here
for (const auto& element : j)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8822:34: note: in instantiation of function template specialization 'nlohmann::detail::hash<nlohmann::basic_json<>>' requested here
return nlohmann::detail::hash(j);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:131:5: note: candidate constructor not viable: no known conversion from 'const nlohmann::basic_json<> *' to 'const iter_impl<const const nlohmann::basic_json<>>' for 1st argument
iter_impl(const iter_impl<const BasicJsonType>& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:153:5: note: candidate constructor not viable: no known conversion from 'const nlohmann::basic_json<> *' to 'const iter_impl<typename std::remove_const<const basic_json<>>::type>' (aka 'const iter_impl<nlohmann::basic_json<>>') for 1st argument
iter_impl(const iter_impl<typename std::remove_const<BasicJsonType>::type>& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:81:5: note: candidate constructor not viable: requires 0 arguments, but 1 was provided
iter_impl() = default;
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:49:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/adl_serializer.hpp:5:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/conversions/from_json.hpp:7:
In file included from /usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:423:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/__tree:747:59: error: static_cast from 'std::__tree_const_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>::__node_pointer' (aka 'std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *') to 'std::__tree_const_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>::__node_base_pointer' (aka 'std::__tree_node_base<void *> *'), which are not related by inheritance, is not allowed
{__ptr_ = static_cast<__node_pointer>(__tree_next(static_cast<__node_base_pointer>(__ptr_)));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:750:41: note: in instantiation of member function 'std::__tree_const_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>::operator++' requested here
__map_const_iterator& operator++() {++__i_; return *this;}
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1052:59: note: in instantiation of member function 'std::__map_const_iterator<std::__tree_const_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>>::operator++' requested here
for (const_iterator __e = cend(); __f != __l; ++__f)
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:878:13: note: in instantiation of function template specialization 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::insert<std::__map_const_iterator<std::__tree_const_iterator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *, long>>>' requested here
insert(__m.begin(), __m.end());
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1641:31: note: in instantiation of member function 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::map' requested here
::new((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1568:18: note: in instantiation of function template specialization 'std::allocator<std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>>::construct<std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>, const std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>> &>' requested here
{__a.construct(__p, _VSTD::forward<_Args>(__args)...);}
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1449:14: note: (skipping 4 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
{__construct(__has_construct<allocator_type, pointer, _Args...>(),
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:436:37: note: in instantiation of member function 'nlohmann::basic_json<>::basic_json' requested here
*ref_stack.back() = discarded;
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:201:60: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::end_object' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->end_object()))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:37:
In file included from /usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/algorithm:627:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1641:31: error: call to constructor of 'nlohmann::basic_json<>' is ambiguous
::new((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1568:18: note: in instantiation of function template specialization 'std::allocator<nlohmann::basic_json<>>::construct<nlohmann::basic_json<>, nlohmann::basic_json<> &>' requested here
{__a.construct(__p, _VSTD::forward<_Args>(__args)...);}
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1449:14: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<nlohmann::basic_json<>>>::__construct<nlohmann::basic_json<>, nlohmann::basic_json<> &>' requested here
{__construct(__has_construct<allocator_type, pointer, _Args...>(),
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/vector:963:25: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<nlohmann::basic_json<>>>::construct<nlohmann::basic_json<>, nlohmann::basic_json<> &>' requested here
__alloc_traits::construct(__a, _VSTD::__to_raw_pointer(this->__end_), *__first);
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/vector:1160:9: note: in instantiation of function template specialization 'std::vector<nlohmann::basic_json<>>::__construct_at_end<nlohmann::basic_json<> *>' requested here
__construct_at_end(__x.__begin_, __x.__end_);
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1641:31: note: in instantiation of member function 'std::vector<nlohmann::basic_json<>>::vector' requested here
::new((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1568:18: note: (skipping 5 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
{__a.construct(__p, _VSTD::forward<_Args>(__args)...);}
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:436:37: note: in instantiation of member function 'nlohmann::basic_json<>::basic_json' requested here
*ref_stack.back() = discarded;
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:201:60: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::end_object' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->end_object()))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1425:5: note: candidate constructor
basic_json(const value_t v)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1449:5: note: candidate constructor
basic_json(std::nullptr_t = nullptr) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:4652:18: error: no matching constructor for initialization of 'nlohmann::basic_json<>::iterator' (aka 'iter_impl<nlohmann::basic_json<>>')
iterator result(this);
^ ~~~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:452:79: note: in instantiation of member function 'nlohmann::basic_json<>::end' requested here
for (auto it = ref_stack.back()->begin(); it != ref_stack.back()->end(); ++it)
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:201:60: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::end_object' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->end_object()))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:131:5: note: candidate constructor not viable: no known conversion from 'nlohmann::basic_json<> *' to 'const iter_impl<const nlohmann::basic_json<>>' for 1st argument
iter_impl(const iter_impl<const BasicJsonType>& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:153:5: note: candidate constructor not viable: no known conversion from 'nlohmann::basic_json<> *' to 'const iter_impl<typename std::remove_const<basic_json<>>::type>' (aka 'const iter_impl<nlohmann::basic_json<>>') for 1st argument
iter_impl(const iter_impl<typename std::remove_const<BasicJsonType>::type>& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/iterators/iter_impl.hpp:81:5: note: candidate constructor not viable: requires 0 arguments, but 1 was provided
iter_impl() = default;
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:56:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/input/binary_reader.hpp:19:
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:423:84: error: call to constructor of 'nlohmann::basic_json<>' is ambiguous
object_element = &(ref_stack.back()->m_value.object->operator[](val) = discarded);
^~~~~~~~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:216:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::key' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1425:5: note: candidate constructor
basic_json(const value_t v)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1449:5: note: candidate constructor
basic_json(std::nullptr_t = nullptr) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2263:38: note: passing argument to parameter 'other' here
basic_json& operator=(basic_json other) noexcept (
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:49:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/adl_serializer.hpp:5:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/conversions/from_json.hpp:7:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1366:53: error: static_cast from 'std::unique_ptr<std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *>, std::__map_node_destructor<std::allocator<std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *>>>>::pointer' (aka 'std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *') to 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::__node_base_pointer' (aka 'std::__tree_node_base<void *> *'), which are not related by inheritance, is not allowed
__tree_.__insert_node_at(__parent, __child, static_cast<__node_base_pointer>(__h.get()));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:423:66: note: in instantiation of member function 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::operator[]' requested here
object_element = &(ref_stack.back()->m_value.object->operator[](val) = discarded);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:216:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::key' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:49:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/adl_serializer.hpp:5:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/conversions/from_json.hpp:7:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1219:16: error: static_cast from 'std::__tree<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__map_value_compare<std::basic_string<char>, std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::less<>, true>, std::allocator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>>>::__node_pointer' (aka 'std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *') to 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::__node_base_pointer' (aka 'std::__tree_node_base<void *> *'), which are not related by inheritance, is not allowed
__parent = static_cast<__node_base_pointer>(__tree_.__end_node());
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1361:36: note: in instantiation of member function 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::__find_equal_key' requested here
__node_base_pointer& __child = __find_equal_key(__parent, __k);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:423:66: note: in instantiation of member function 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::operator[]' requested here
object_element = &(ref_stack.back()->m_value.object->operator[](val) = discarded);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:216:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::key' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:56:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/input/binary_reader.hpp:19:
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:496:37: error: call to constructor of 'nlohmann::basic_json<>' is ambiguous
*ref_stack.back() = discarded;
^~~~~~~~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:248:60: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::end_array' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->end_array()))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1425:5: note: candidate constructor
basic_json(const value_t v)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1449:5: note: candidate constructor
basic_json(std::nullptr_t = nullptr) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2263:38: note: passing argument to parameter 'other' here
basic_json& operator=(basic_json other) noexcept (
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:56:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/input/binary_reader.hpp:19:
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:561:22: error: no matching conversion for functional-style cast from 'std::basic_string<char>' to 'nlohmann::basic_json<>'
auto value = BasicJsonType(std::forward<Value>(v));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:384:9: note: in instantiation of function template specialization 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::handle_value<std::basic_string<char> &>' requested here
handle_value(val);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:319:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>::string' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->string(m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:92:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_callback_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1425:5: note: candidate constructor not viable: no known conversion from 'std::basic_string<char>' to 'const nlohmann::basic_json::value_t' (aka 'const nlohmann::detail::value_t') for 1st argument
basic_json(const value_t v)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1449:5: note: candidate constructor not viable: no known conversion from 'std::basic_string<char>' to 'std::nullptr_t' for 1st argument
basic_json(std::nullptr_t = nullptr) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1684:5: note: candidate constructor not viable: no known conversion from 'std::basic_string<char>' to 'nlohmann::basic_json<>::initializer_list_t' (aka 'initializer_list<detail::json_ref<basic_json<>>>') for 1st argument
basic_json(initializer_list_t init,
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2225:5: note: candidate constructor not viable: no known conversion from 'std::basic_string<char>' to 'nlohmann::basic_json<>' for 1st argument
basic_json(basic_json&& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1522:5: note: candidate template ignored: substitution failure [with CompatibleType = std::basic_string<char> &, U = std::basic_string<char>, $2 = 0]
basic_json(CompatibleType && val) noexcept(noexcept(
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1560:5: note: candidate template ignored: requirement 'detail::is_basic_json<std::basic_string<char, std::char_traits<char>, std::allocator<char>>>::value' was not satisfied [with BasicJsonType = std::basic_string<char>]
basic_json(const BasicJsonType& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2108:5: note: candidate template ignored: requirement 'detail::conjunction<nlohmann::detail::is_json_ref<std::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::is_same<char, nlohmann::basic_json<std::map, std::vector, std::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool, long long, unsigned long long, double, std::allocator, nlohmann::adl_serializer, std::vector<unsigned char, std::allocator<unsigned char>>>>>::value' was not satisfied [with JsonRef = std::basic_string<char>]
basic_json(const JsonRef& ref) : basic_json(ref.moved_or_copied()) {}
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1939:5: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
basic_json(size_type cnt, const basic_json& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2005:5: note: candidate constructor template not viable: requires 2 arguments, but 1 was provided
basic_json(InputIT first, InputIT last)
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:56:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/input/binary_reader.hpp:19:
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:233:73: error: rvalue reference to type 'basic_string<...>' cannot bind to lvalue of type 'basic_string<...>'
object_element = &(ref_stack.back()->m_value.object->operator[](val));
^~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:216:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>::key' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:120:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:999:40: note: passing argument to parameter '__k' here
mapped_type& operator[](key_type&& __k);
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:56:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/input/binary_reader.hpp:19:
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:233:26: error: taking the address of a temporary object of type 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::mapped_type' (aka 'nlohmann::basic_json<>') [-Waddress-of-temporary]
object_element = &(ref_stack.back()->m_value.object->operator[](val));
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:49:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/adl_serializer.hpp:5:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/conversions/from_json.hpp:7:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1379:26: error: non-const lvalue reference to type 'rebind<...>' cannot bind to a temporary of type 'rebind<...>'
__node_base_pointer& __child = __find_equal_key(__parent, __k);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:233:62: note: in instantiation of member function 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::operator[]' requested here
object_element = &(ref_stack.back()->m_value.object->operator[](val));
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:216:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>::key' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:120:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:49:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/adl_serializer.hpp:5:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/conversions/from_json.hpp:7:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1384:53: error: static_cast from 'std::unique_ptr<std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *>, std::__map_node_destructor<std::allocator<std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *>>>>::pointer' (aka 'std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *') to 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::__node_base_pointer' (aka 'std::__tree_node_base<void *> *'), which are not related by inheritance, is not allowed
__tree_.__insert_node_at(__parent, __child, static_cast<__node_base_pointer>(__h.get()));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1264:16: error: static_cast from 'std::__tree<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::__map_value_compare<std::basic_string<char>, std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, std::less<>, true>, std::allocator<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>>>::__node_const_pointer' (aka 'std::__tree_node<std::__value_type<std::basic_string<char>, nlohmann::basic_json<>>, void *> *') to 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::__node_base_pointer' (aka 'std::__tree_node_base<void *> *'), which are not related by inheritance, is not allowed
__parent = static_cast<__node_base_pointer>(__tree_.__end_node());
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/map:1379:36: note: in instantiation of member function 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::__find_equal_key' requested here
__node_base_pointer& __child = __find_equal_key(__parent, __k);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:233:62: note: in instantiation of member function 'std::map<std::basic_string<char>, nlohmann::basic_json<>, std::less<>>::operator[]' requested here
object_element = &(ref_stack.back()->m_value.object->operator[](val));
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:216:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>::key' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:120:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:56:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/input/binary_reader.hpp:19:
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:294:20: error: no matching conversion for functional-style cast from 'double' to 'nlohmann::basic_json<>'
root = BasicJsonType(std::forward<Value>(v));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:202:9: note: in instantiation of function template specialization 'nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>::handle_value<double &>' requested here
handle_value(val);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:273:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>::number_float' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->number_float(res, m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:120:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1425:5: note: candidate constructor not viable: no known conversion from 'double' to 'const nlohmann::basic_json::value_t' (aka 'const nlohmann::detail::value_t') for 1st argument
basic_json(const value_t v)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1449:5: note: candidate constructor not viable: no known conversion from 'double' to 'std::nullptr_t' for 1st argument
basic_json(std::nullptr_t = nullptr) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1684:5: note: candidate constructor not viable: no known conversion from 'double' to 'nlohmann::basic_json<>::initializer_list_t' (aka 'initializer_list<detail::json_ref<basic_json<>>>') for 1st argument
basic_json(initializer_list_t init,
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2225:5: note: candidate constructor not viable: no known conversion from 'double' to 'nlohmann::basic_json<>' for 1st argument
basic_json(basic_json&& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1522:5: note: candidate template ignored: substitution failure [with CompatibleType = double &, U = double, $2 = 0]
basic_json(CompatibleType && val) noexcept(noexcept(
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1560:5: note: candidate template ignored: requirement 'detail::is_basic_json<double>::value' was not satisfied [with BasicJsonType = double]
basic_json(const BasicJsonType& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2108:5: note: candidate template ignored: substitution failure [with JsonRef = double]: type 'double' cannot be used prior to '::' because it has no members
basic_json(const JsonRef& ref) : basic_json(ref.moved_or_copied()) {}
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1939:5: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
basic_json(size_type cnt, const basic_json& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2005:5: note: candidate constructor template not viable: requires 2 arguments, but 1 was provided
basic_json(InputIT first, InputIT last)
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:56:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/detail/input/binary_reader.hpp:19:
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:308:27: error: no matching conversion for functional-style cast from 'double' to 'nlohmann::basic_json<>'
*object_element = BasicJsonType(std::forward<Value>(v));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1425:5: note: candidate constructor not viable: no known conversion from 'double' to 'const nlohmann::basic_json::value_t' (aka 'const nlohmann::detail::value_t') for 1st argument
basic_json(const value_t v)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1449:5: note: candidate constructor not viable: no known conversion from 'double' to 'std::nullptr_t' for 1st argument
basic_json(std::nullptr_t = nullptr) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1684:5: note: candidate constructor not viable: no known conversion from 'double' to 'nlohmann::basic_json<>::initializer_list_t' (aka 'initializer_list<detail::json_ref<basic_json<>>>') for 1st argument
basic_json(initializer_list_t init,
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2225:5: note: candidate constructor not viable: no known conversion from 'double' to 'nlohmann::basic_json<>' for 1st argument
basic_json(basic_json&& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1522:5: note: candidate template ignored: substitution failure [with CompatibleType = double &, U = double, $2 = 0]
basic_json(CompatibleType && val) noexcept(noexcept(
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1560:5: note: candidate template ignored: requirement 'detail::is_basic_json<double>::value' was not satisfied [with BasicJsonType = double]
basic_json(const BasicJsonType& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2108:5: note: candidate template ignored: substitution failure [with JsonRef = double]: type 'double' cannot be used prior to '::' because it has no members
basic_json(const JsonRef& ref) : basic_json(ref.moved_or_copied()) {}
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1939:5: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
basic_json(size_type cnt, const basic_json& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2005:5: note: candidate constructor template not viable: requires 2 arguments, but 1 was provided
basic_json(InputIT first, InputIT last)
^
In file included from osxfail.C:1:
In file included from /src/libcommon/3rd_party/json/include/nlohmann/json.hpp:37:
In file included from /usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/algorithm:627:
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1641:31: error: no matching constructor for initialization of 'nlohmann::basic_json<>'
::new((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1568:18: note: in instantiation of function template specialization 'std::allocator<nlohmann::basic_json<>>::construct<nlohmann::basic_json<>, double &>' requested here
{__a.construct(__p, _VSTD::forward<_Args>(__args)...);}
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/memory:1449:14: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<nlohmann::basic_json<>>>::__construct<nlohmann::basic_json<>, double &>' requested here
{__construct(__has_construct<allocator_type, pointer, _Args...>(),
^
/usr/x86_64-apple-darwin14/bin/../SDK/MacOSX10.10.sdk/usr/include/c++/v1/vector:1587:25: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<nlohmann::basic_json<>>>::construct<nlohmann::basic_json<>, double &>' requested here
__alloc_traits::construct(this->__alloc(),
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:302:46: note: in instantiation of function template specialization 'std::vector<nlohmann::basic_json<>>::emplace_back<double &>' requested here
ref_stack.back()->m_value.array->emplace_back(std::forward<Value>(v));
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/json_sax.hpp:202:9: note: in instantiation of function template specialization 'nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>::handle_value<double &>' requested here
handle_value(val);
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:273:56: note: in instantiation of member function 'nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>::number_float' requested here
if (JSON_HEDLEY_UNLIKELY(!sax->number_float(res, m_lexer.get_string())))
^
/src/libcommon/3rd_party/json/include/nlohmann/detail/input/parser.hpp:120:13: note: in instantiation of function template specialization 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::sax_parse_internal<nlohmann::detail::json_sax_dom_parser<nlohmann::basic_json<>>>' requested here
sax_parse_internal(&sdp);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:6801:113: note: in instantiation of member function 'nlohmann::detail::parser<nlohmann::basic_json<>, nlohmann::detail::iterator_input_adapter<const char *>>::parse' requested here
parser(detail::input_adapter(std::move(first), std::move(last)), cb, allow_exceptions, ignore_comments).parse(true, result);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:8880:28: note: in instantiation of function template specialization 'nlohmann::basic_json<>::parse<const char *>' requested here
return nlohmann::json::parse(s, s + n);
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1425:5: note: candidate constructor not viable: no known conversion from 'double' to 'const nlohmann::basic_json::value_t' (aka 'const nlohmann::detail::value_t') for 1st argument
basic_json(const value_t v)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1449:5: note: candidate constructor not viable: no known conversion from 'double' to 'std::nullptr_t' for 1st argument
basic_json(std::nullptr_t = nullptr) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1684:5: note: candidate constructor not viable: no known conversion from 'double' to 'nlohmann::basic_json<>::initializer_list_t' (aka 'initializer_list<detail::json_ref<basic_json<>>>') for 1st argument
basic_json(initializer_list_t init,
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2225:5: note: candidate constructor not viable: no known conversion from 'double' to 'nlohmann::basic_json<>' for 1st argument
basic_json(basic_json&& other) noexcept
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1522:5: note: candidate template ignored: substitution failure [with CompatibleType = double &, U = double, $2 = 0]
basic_json(CompatibleType && val) noexcept(noexcept(
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1560:5: note: candidate template ignored: requirement 'detail::is_basic_json<double>::value' was not satisfied [with BasicJsonType = double]
basic_json(const BasicJsonType& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2108:5: note: candidate template ignored: substitution failure [with JsonRef = double]: type 'double' cannot be used prior to '::' because it has no members
basic_json(const JsonRef& ref) : basic_json(ref.moved_or_copied()) {}
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:1939:5: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
basic_json(size_type cnt, const basic_json& val)
^
/src/libcommon/3rd_party/json/include/nlohmann/json.hpp:2005:5: note: candidate constructor template not viable: requires 2 arguments, but 1 was provided
basic_json(InputIT first, InputIT last)
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
1001@d82e6b7e292b:~$
Compiler and operating system
clang14 macosx 10.10
Library version
3.11.2
Validation
- [X] The bug also occurs if the latest version from the
develop
branch is used. - [ ] I can successfully compile and run the unit tests.
v3.9.1 compiles successfully v3.10.0 fails I tracked down the commit causing the failure to:
`commit f8037660d06a0fbb6b1cde944d436032d04564ae FAILS Author: Niels Lohmann [email protected] Date: Thu Jan 14 22:43:52 2021 +0100
:recycle: add iterator set_parent function
`