Describe the bug, including details regarding any error messages, version, and platform.
When I build v6d from source, I got error
/usr/include/c++/11/type_traits: In instantiation of ‘struct std::is_abstract<arrow::internal::Uri>’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1555:29: required from ‘class cpp::bitwizeshift::result<arrow::internal::Uri, GraphArchive::Status>’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:79:78: required from here
/usr/include/c++/11/type_traits:778:38: error: invalid use of incomplete type ‘class arrow::internal::Uri’
778 | : public integral_constant<bool, __is_abstract(_Tp)>
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/arrow/filesystem/api.h:30,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:21:
/usr/include/arrow/filesystem/localfs.h:29:7: note: forward declaration of ‘class arrow::internal::Uri’
29 | class Uri;
| ^~~
In file included from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/fwd.h:26,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:26:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp: In instantiation of ‘class cpp::bitwizeshift::result<arrow::internal::Uri, GraphArchive::Status>’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:79:78: required from here
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1555:29: error: ‘value’ is not a member of ‘std::is_abstract<arrow::internal::Uri>’
1555 | !std::is_abstract<T>::value,
| ^~~~~
In file included from /usr/include/c++/11/bits/move.h:57,
from /usr/include/c++/11/bits/stl_pair.h:59,
from /usr/include/c++/11/bits/stl_algobase.h:64,
from /usr/include/c++/11/memory:63,
from /usr/include/arrow/adapters/orc/adapter.h:21,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:17:
/usr/include/c++/11/type_traits: In substitution of ‘template<class _Tp, class ... _Args> using __is_nothrow_constructible_impl = std::__bool_constant<__is_nothrow_constructible(_Tp)> [with _Tp = arrow::internal::Uri; _Args = {arrow::internal::Uri&&}]’:
/usr/include/c++/11/type_traits:1070:12: required from ‘struct std::__is_nothrow_move_constructible_impl<arrow::internal::Uri, true>’
/usr/include/c++/11/type_traits:1077:12: required from ‘struct std::is_nothrow_move_constructible<arrow::internal::Uri>’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1286:46: required by substitution of ‘template<class T, class E> using result_move_assign_base = cpp::bitwizeshift::detail::conditionally_nest_type<(((std::is_nothrow_move_constructible<_Tp>::value && std::is_nothrow_move_constructible<_Head>::value) && std::is_move_assignable<typename std::conditional<std::is_lvalue_reference< <template-parameter-1-1> >::value, std::reference_wrapper<typename std::remove_reference<_Tp>::type>, typename std::remove_const<_Tp>::type>::type>::value) && std::is_move_assignable<_T2>::value), cpp::bitwizeshift::detail::disable_copy_assignment<T, E> > [with T = arrow::internal::Uri; E = GraphArchive::Status]’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1298:11: required by substitution of ‘template<class T, class E> using result_storage = cpp::bitwizeshift::detail::result_move_assign_base<T, E> [with T = arrow::internal::Uri; E = GraphArchive::Status]’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:2681:33: required from ‘class cpp::bitwizeshift::result<arrow::internal::Uri, GraphArchive::Status>’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:79:78: required from here
/usr/include/c++/11/type_traits:1017:25: error: invalid use of incomplete type ‘class arrow::internal::Uri’
1017 | = __bool_constant<__is_nothrow_constructible(_Tp, _Args...)>;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/arrow/filesystem/api.h:30,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:21:
/usr/include/arrow/filesystem/localfs.h:29:7: note: forward declaration of ‘class arrow::internal::Uri’
29 | class Uri;
| ^~~
In file included from /usr/include/c++/11/bits/move.h:57,
from /usr/include/c++/11/bits/stl_pair.h:59,
from /usr/include/c++/11/bits/stl_algobase.h:64,
from /usr/include/c++/11/memory:63,
from /usr/include/arrow/adapters/orc/adapter.h:21,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:17:
/usr/include/c++/11/type_traits: In instantiation of ‘struct std::is_nothrow_move_constructible<arrow::internal::Uri>’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1286:46: required by substitution of ‘template<class T, class E> using result_move_assign_base = cpp::bitwizeshift::detail::conditionally_nest_type<(((std::is_nothrow_move_constructible<_Tp>::value && std::is_nothrow_move_constructible<_Head>::value) && std::is_move_assignable<typename std::conditional<std::is_lvalue_reference< <template-parameter-1-1> >::value, std::reference_wrapper<typename std::remove_reference<_Tp>::type>, typename std::remove_const<_Tp>::type>::type>::value) && std::is_move_assignable<_T2>::value), cpp::bitwizeshift::detail::disable_copy_assignment<T, E> > [with T = arrow::internal::Uri; E = GraphArchive::Status]’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1298:11: required by substitution of ‘template<class T, class E> using result_storage = cpp::bitwizeshift::detail::result_move_assign_base<T, E> [with T = arrow::internal::Uri; E = GraphArchive::Status]’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:2681:33: required from ‘class cpp::bitwizeshift::result<arrow::internal::Uri, GraphArchive::Status>’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:79:78: required from here
/usr/include/c++/11/type_traits:1077:12: error: no type named ‘type’ in ‘struct std::__is_nothrow_move_constructible_impl<arrow::internal::Uri, true>’
1077 | struct is_nothrow_move_constructible
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1080:52: error: static assertion failed: template argument must be a complete class or an unbounded array
1080 | static_assert(std::__is_complete_or_unbounded(__type_identity<_Tp>{}),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1080:52: note: ‘std::__is_complete_or_unbounded<std::__type_identity<arrow::internal::Uri> >((std::__type_identity<arrow::internal::Uri>{}, std::__type_identity<arrow::internal::Uri>()))’ evaluates to false
In file included from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/fwd.h:26,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:26:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp: In substitution of ‘template<class T, class E> using result_move_assign_base = cpp::bitwizeshift::detail::conditionally_nest_type<(((std::is_nothrow_move_constructible<_Tp>::value && std::is_nothrow_move_constructible<_Head>::value) && std::is_move_assignable<typename std::conditional<std::is_lvalue_reference< <template-parameter-1-1> >::value, std::reference_wrapper<typename std::remove_reference<_Tp>::type>, typename std::remove_const<_Tp>::type>::type>::value) && std::is_move_assignable<_T2>::value), cpp::bitwizeshift::detail::disable_copy_assignment<T, E> > [with T = arrow::internal::Uri; E = GraphArchive::Status]’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1298:11: required by substitution of ‘template<class T, class E> using result_storage = cpp::bitwizeshift::detail::result_move_assign_base<T, E> [with T = arrow::internal::Uri; E = GraphArchive::Status]’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:2681:33: required from ‘class cpp::bitwizeshift::result<arrow::internal::Uri, GraphArchive::Status>’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:79:78: required from here
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1286:46: error: ‘value’ is not a member of ‘std::is_nothrow_move_constructible<arrow::internal::Uri>’
1286 | std::is_nothrow_move_constructible<T>::value &&
| ^~~~~
In file included from /usr/include/c++/11/bits/move.h:57,
from /usr/include/c++/11/bits/stl_pair.h:59,
from /usr/include/c++/11/bits/stl_algobase.h:64,
from /usr/include/c++/11/memory:63,
from /usr/include/arrow/adapters/orc/adapter.h:21,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:17:
/usr/include/c++/11/type_traits: In instantiation of ‘struct std::is_move_assignable<arrow::internal::Uri>’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1288:56: required by substitution of ‘template<class T, class E> using result_move_assign_base = cpp::bitwizeshift::detail::conditionally_nest_type<(((std::is_nothrow_move_constructible<_Tp>::value && std::is_nothrow_move_constructible<_Head>::value) && std::is_move_assignable<typename std::conditional<std::is_lvalue_reference< <template-parameter-1-1> >::value, std::reference_wrapper<typename std::remove_reference<_Tp>::type>, typename std::remove_const<_Tp>::type>::type>::value) && std::is_move_assignable<_T2>::value), cpp::bitwizeshift::detail::disable_copy_assignment<T, E> > [with T = arrow::internal::Uri; E = GraphArchive::Status]’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:1298:11: required by substitution of ‘template<class T, class E> using result_storage = cpp::bitwizeshift::detail::result_move_assign_base<T, E> [with T = arrow::internal::Uri; E = GraphArchive::Status]’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:2681:33: required from ‘class cpp::bitwizeshift::result<arrow::internal::Uri, GraphArchive::Status>’
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:79:78: required from here
/usr/include/c++/11/type_traits:1131:52: error: static assertion failed: template argument must be a complete class or an unbounded array
1131 | static_assert(std::__is_complete_or_unbounded(__type_identity<_Tp>{}),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1131:52: note: ‘std::__is_complete_or_unbounded<std::__type_identity<arrow::internal::Uri> >((std::__type_identity<arrow::internal::Uri>{}, std::__type_identity<arrow::internal::Uri>()))’ evaluates to false
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc: In function ‘GraphArchive::Result<arrow::internal::Uri> GraphArchive::detail::ParseFileSystemUri(const string&)’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:80:24: error: aggregate ‘arrow::internal::Uri uri’ has incomplete type and cannot be defined
80 | arrow::internal::Uri uri;
| ^~~
[ 36%] Running code generation for vineyard_graph.
[ 36%] Built target vineyard_graph_gen
In file included from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/fwd.h:26,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:26:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp: In instantiation of ‘constexpr bool cpp::bitwizeshift::result< <template-parameter-1-1>, <template-parameter-1-2> >::has_error() const [with T = arrow::internal::Uri; E = GraphArchive::Status]’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:289:3: required from here
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:4675:11: error: using invalid field ‘cpp::bitwizeshift::result< <template-parameter-1-1>, <template-parameter-1-2> >::m_storage’
4675 | return !m_storage.storage.m_has_value;
| ^~~~~~~~~
In file included from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/util/filesystem.h:26,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:28:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc: In function ‘GraphArchive::Result<std::shared_ptr<GraphArchive::FileSystem> > GraphArchive::FileSystemFromUriOrPath(const string&, std::string*)’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:289:28: error: ‘arrow::internal::Uri uri’ has incomplete type
289 | GAR_ASSIGN_OR_RAISE(auto uri, detail::ParseFileSystemUri(uri_string));
| ^~~
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/util/result.h:29:3: note: in definition of macro ‘GAR_ASSIGN_OR_RAISE_IMPL’
29 | lhs = std::move(result_name).value();
| ^~~
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:289:3: note: in expansion of macro ‘GAR_ASSIGN_OR_RAISE’
289 | GAR_ASSIGN_OR_RAISE(auto uri, detail::ParseFileSystemUri(uri_string));
| ^~~~~~~~~~~~~~~~~~~
[ 36%] Building CXX object thirdparty/cpprestsdk/Release/src/CMakeFiles/cpprest.dir/http/common/http_compression.cpp.o
In file included from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/fwd.h:26,
from /tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:26:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp: In instantiation of ‘constexpr E cpp::bitwizeshift::result< <template-parameter-1-1>, <template-parameter-1-2> >::error() const & [with T = arrow::internal::Uri; E = GraphArchive::Status]’:
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/src/filesystem.cc:289:3: required from here
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:4765:10: error: using invalid field ‘cpp::bitwizeshift::result< <template-parameter-1-1>, <template-parameter-1-2> >::m_storage’
4765 | return m_storage.storage.m_has_value
| ^~~~~~~~~
/tmp/gs-local-deps/v6d-0.22.0/modules/graph/thirdparty/GraphAr/cpp/include/gar/external/result.hpp:4767:7: error: using invalid field ‘cpp::bitwizeshift::result< <template-parameter-1-1>, <template-parameter-1-2> >::m_storage’
4767 | : m_storage.storage.m_error;
which seems to be the problem of the submodule GraphAr. It seems to be the problem of latest arrow.
Describe the bug, including details regarding any error messages, version, and platform.
When I build
v6d
from source, I got errorwhich seems to be the problem of the submodule
GraphAr
. It seems to be the problem of latest arrow.Component(s)
C++