In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h: In instantiation of ‘constexpr bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Iterator2 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’:
/usr/include/c++/11/bits/stl_algo.h:5624:12: required from ‘constexpr _ForwardIterator std::__min_element(_ForwardIterator, _ForwardIterator, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/usr/include/c++/11/bits/stl_algo.h:5648:43: required from ‘constexpr _FIter std::min_element(_FIter, _FIter) [with _FIter = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
a.cpp:46:27: required from here
/usr/include/c++/11/bits/predefined_ops.h:45:23: error: no match for ‘operator<’ (operand types are ‘std::pair<double, Point>’ and ‘std::pair<double, Point>’)
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:67,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/stl_iterator.h:1129:5: note: candidate: ‘template<class _IteratorL, class _IteratorR, class _Container> constexpr std::__detail::__synth3way_t<_IteratorR, _IteratorL> __gnu_cxx::operator<=>(const __gnu_cxx::__normal_iterator<_IteratorL, _Container>&, const __gnu_cxx::__normal_iterator<_IteratorR, _Container>&)’ (reversed)
1129 | operator<=>(const __normal_iterator<_IteratorL, _Container>& __lhs,
| ^~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:1129:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:67,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/stl_iterator.h:538:5: note: candidate: ‘template<class _IteratorL, class _IteratorR> requires three_way_comparable_with<_IteratorR, _IteratorL, std::partial_ordering> constexpr std::compare_three_way_result_t<_IteratorL, _IteratorR> std::operator<=>(const std::reverse_iterator<_IteratorL>&, const std::reverse_iterator<_IteratorR>&)’ (reversed)
538 | operator<=>(const reverse_iterator<_IteratorL>& __x,
| ^~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:538:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::reverse_iterator<_IteratorL>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:67,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/stl_iterator.h:1596:5: note: candidate: ‘template<class _IteratorL, class _IteratorR> requires three_way_comparable_with<_IteratorR, _IteratorL, std::partial_ordering> constexpr std::compare_three_way_result_t<_IteratorL, _IteratorR> std::operator<=>(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)’ (reversed)
1596 | operator<=>(const move_iterator<_IteratorL>& __x,
| ^~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:1596:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::move_iterator<_IteratorL>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/basic_string.h:48,
from /usr/include/c++/11/string:55,
from /usr/include/c++/11/bits/locale_classes.h:40,
from /usr/include/c++/11/bits/ios_base.h:41,
from /usr/include/c++/11/ios:42,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/string_view:556:5: note: candidate: ‘template<class _CharT, class _Traits> constexpr decltype (__char_traits_cmp_cat<_Traits>(0)) std::operator<=>(std::basic_string_view<_CharT, _Traits>, std::__type_identity_t<std::basic_string_view<_CharT, _Traits> >)’ (reversed)
556 | operator<=>(basic_string_view<_CharT, _Traits> __x,
| ^~~~~~~~
/usr/include/c++/11/string_view:556:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘std::basic_string_view<_CharT, _Traits>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/string:55,
from /usr/include/c++/11/bits/locale_classes.h:40,
from /usr/include/c++/11/bits/ios_base.h:41,
from /usr/include/c++/11/ios:42,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/basic_string.h:6276:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> decltype (__char_traits_cmp_cat<_Traits>(0)) std::operator<=>(const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>&, const _CharT*)’ (reversed)
6276 | operator<=>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
| ^~~~~~~~
/usr/include/c++/11/bits/basic_string.h:6276:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/unique_ptr.h:37,
from /usr/include/c++/11/bits/locale_conv.h:41,
from /usr/include/c++/11/locale:43,
from /usr/include/c++/11/iomanip:43,
from a.cpp:4:
/usr/include/c++/11/tuple:1557:5: note: candidate: ‘template<class ... _Tps, class ... _Ups> constexpr std::common_comparison_category_t<decltype (std::__detail::__synth3way(declval<_Tps&>(), declval<_Ups&>()))...> std::operator<=>(const std::tuple<_Tps ...>&, const std::tuple<_UTypes ...>&)’ (reversed)
1557 | operator<=>(const tuple<_Tps...>& __t, const tuple<_Ups...>& __u)
| ^~~~~~~~
/usr/include/c++/11/tuple:1557:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::tuple<_Tps ...>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/locale_conv.h:41,
from /usr/include/c++/11/locale:43,
from /usr/include/c++/11/iomanip:43,
from a.cpp:4:
/usr/include/c++/11/bits/unique_ptr.h:895:5: note: candidate: ‘template<class _Tp, class _Dp, class _Up, class _Ep> requires three_way_comparable_with<typename std::unique_ptr<_Tp, _Dp>::pointer, typename std::unique_ptr<_Up, _Ep>::pointer, std::partial_ordering> std::compare_three_way_result_t<typename std::unique_ptr<_Tp, _Dp>::pointer, typename std::unique_ptr<_Up, _Ep>::pointer> std::operator<=>(const std::unique_ptr<_Tp, _Dp>&, const std::unique_ptr<_Up, _Ep>&)’ (reversed)
895 | operator<=>(const unique_ptr<_Tp, _Dp>& __x,
| ^~~~~~~~
/usr/include/c++/11/bits/unique_ptr.h:895:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::unique_ptr<_Tp, _Dp>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/locale_conv.h:41,
from /usr/include/c++/11/locale:43,
from /usr/include/c++/11/iomanip:43,
from a.cpp:4:
/usr/include/c++/11/bits/unique_ptr.h:903:5: note: candidate: ‘template<class _Tp, class _Dp> requires three_way_comparable<typename std::unique_ptr<_Tp, _Dp>::pointer, std::partial_ordering> std::compare_three_way_result_t<typename std::unique_ptr<_Tp, _Dp>::pointer> std::operator<=>(const std::unique_ptr<_Tp, _Dp>&, std::nullptr_t)’ (reversed)
903 | operator<=>(const unique_ptr<_Tp, _Dp>& __x, nullptr_t)
| ^~~~~~~~
/usr/include/c++/11/bits/unique_ptr.h:903:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::unique_ptr<_Tp, _Dp>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:67,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/stl_iterator.h:1146:5: note: candidate: ‘template<class _Iterator, class _Container> constexpr std::__detail::__synth3way_t<_T1> __gnu_cxx::operator<=>(const __gnu_cxx::__normal_iterator<_Iterator, _Container>&, const __gnu_cxx::__normal_iterator<_Iterator, _Container>&)’ (rewritten)
1146 | operator<=>(const __normal_iterator<_Iterator, _Container>& __lhs,
| ^~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:1146:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:64,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/stl_pair.h:473:5: note: candidate: ‘template<class _T1, class _T2> constexpr std::common_comparison_category_t<decltype (std::__detail::__synth3way(declval<_T1&>(), declval<_T1&>())), decltype (std::__detail::__synth3way(declval<_T2&>(), declval<_T2&>()))> std::operator<=>(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&)’ (rewritten)
473 | operator<=>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
| ^~~~~~~~
/usr/include/c++/11/bits/stl_pair.h:473:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_pair.h:65,
from /usr/include/c++/11/bits/stl_algobase.h:64,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/compare: In substitution of ‘template<class _T1, class _T2> constexpr std::common_comparison_category_t<decltype (std::__detail::__synth3way(declval<_T1&>(), declval<_T1&>())), decltype (std::__detail::__synth3way(declval<_T2&>(), declval<_T2&>()))> std::operator<=>(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&) [with _T1 = double; _T2 = Point]’:
/usr/include/c++/11/bits/predefined_ops.h:45:23: required from ‘constexpr bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Iterator2 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
/usr/include/c++/11/bits/stl_algo.h:5624:12: required from ‘constexpr _ForwardIterator std::__min_element(_ForwardIterator, _ForwardIterator, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/usr/include/c++/11/bits/stl_algo.h:5648:43: required from ‘constexpr _FIter std::min_element(_FIter, _FIter) [with _FIter = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
a.cpp:46:27: required from here
/usr/include/c++/11/compare:915:41: error: no match for call to ‘(const std::__detail::_Synth3way) (Point&, Point&)’
915 | = decltype(__detail::__synth3way(std::declval<_Tp&>(),
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
916 | std::declval<_Up&>()));
| ~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/compare:890:9: note: candidate: ‘template<class _Tp, class _Up> constexpr auto std::__detail::_Synth3way::operator()(const _Tp&, const _Up&) const requires requires{{std::__detail::_Synth3way::operator()::__t < std::__detail::_Synth3way::operator()::__u} -> decltype(auto) [requires std::__detail::__boolean_testable<<placeholder>, >];{std::__detail::_Synth3way::operator()::__u < std::__detail::_Synth3way::operator()::__t} -> decltype(auto) [requires std::__detail::__boolean_testable<<placeholder>, >];}’
890 | operator()(const _Tp& __t, const _Up& __u) const
| ^~~~~~~~
/usr/include/c++/11/compare:890:9: note: template argument deduction/substitution failed:
/usr/include/c++/11/compare:890:9: note: constraints not satisfied
/usr/include/c++/11/compare: In substitution of ‘template<class _Tp, class _Up> constexpr auto std::__detail::_Synth3way::operator()(const _Tp&, const _Up&) const requires requires{{__t < __u} -> decltype(auto) [requires std::__detail::__boolean_testable<<placeholder>, >];{__u < __t} -> decltype(auto) [requires std::__detail::__boolean_testable<<placeholder>, >];} [with _Tp = Point; _Up = Point]’:
/usr/include/c++/11/compare:915:34: required by substitution of ‘template<class _T1, class _T2> constexpr std::common_comparison_category_t<decltype (std::__detail::__synth3way(declval<_T1&>(), declval<_T1&>())), decltype (std::__detail::__synth3way(declval<_T2&>(), declval<_T2&>()))> std::operator<=>(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&) [with _T1 = double; _T2 = Point]’
/usr/include/c++/11/bits/predefined_ops.h:45:23: required from ‘constexpr bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Iterator2 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
/usr/include/c++/11/bits/stl_algo.h:5624:12: required from ‘constexpr _ForwardIterator std::__min_element(_ForwardIterator, _ForwardIterator, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/usr/include/c++/11/bits/stl_algo.h:5648:43: required from ‘constexpr _FIter std::min_element(_FIter, _FIter) [with _FIter = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
a.cpp:46:27: required from here
/usr/include/c++/11/compare:890:2: required by the constraints of ‘template<class _Tp, class _Up> constexpr auto std::__detail::_Synth3way::operator()(const _Tp&, const _Up&) const requires requires{{__t < __u} -> decltype(auto) [requires std::__detail::__boolean_testable<<placeholder>, >];{__u < __t} -> decltype(auto) [requires std::__detail::__boolean_testable<<placeholder>, >];}’
/usr/include/c++/11/compare:892:11: in requirements [with _Up = Point; _Tp = Point]
/usr/include/c++/11/compare:894:17: note: the required expression ‘(__t < __u)’ is invalid
894 | { __t < __u } -> __boolean_testable;
| ~~~~^~~~~
/usr/include/c++/11/compare:895:17: note: the required expression ‘(__u < __t)’ is invalid
895 | { __u < __t } -> __boolean_testable;
| ~~~~^~~~~
/usr/include/c++/11/compare: In substitution of ‘template<class _T1, class _T2> constexpr std::common_comparison_category_t<decltype (std::__detail::__synth3way(declval<_T1&>(), declval<_T1&>())), decltype (std::__detail::__synth3way(declval<_T2&>(), declval<_T2&>()))> std::operator<=>(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&) [with _T1 = double; _T2 = Point]’:
/usr/include/c++/11/bits/predefined_ops.h:45:23: required from ‘constexpr bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Iterator2 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
/usr/include/c++/11/bits/stl_algo.h:5624:12: required from ‘constexpr _ForwardIterator std::__min_element(_ForwardIterator, _ForwardIterator, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/usr/include/c++/11/bits/stl_algo.h:5648:43: required from ‘constexpr _FIter std::min_element(_FIter, _FIter) [with _FIter = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
a.cpp:46:27: required from here
cc1plus: note: set ‘-fconcepts-diagnostics-depth=’ to at least 2 for more detail
In file included from /usr/include/c++/11/bits/stl_algobase.h:67,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h: In instantiation of ‘constexpr bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Iterator2 = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’:
/usr/include/c++/11/bits/stl_algo.h:5624:12: required from ‘constexpr _ForwardIterator std::__min_element(_ForwardIterator, _ForwardIterator, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/usr/include/c++/11/bits/stl_algo.h:5648:43: required from ‘constexpr _FIter std::min_element(_FIter, _FIter) [with _FIter = __gnu_cxx::__normal_iterator<std::pair<double, Point>*, std::vector<std::pair<double, Point> > >]’
a.cpp:46:27: required from here
/usr/include/c++/11/bits/stl_iterator.h:554:5: note: candidate: ‘template<class _Iterator> requires three_way_comparable<_Iterator, std::partial_ordering> constexpr std::compare_three_way_result_t<_Iterator, _Iterator> std::operator<=>(const std::reverse_iterator<_IteratorL>&, const std::reverse_iterator<_IteratorL>&)’ (rewritten)
554 | operator<=>(const reverse_iterator<_Iterator>& __x,
| ^~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:554:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::reverse_iterator<_IteratorL>’
45 | { return *__it1 < *__it2; }
| ~~~~~~~^~~~~~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:67,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/stl_iterator.h:1655:5: note: candidate: ‘template<class _Iterator> requires three_way_comparable<_Iterator, std::partial_ordering> constexpr std::compare_three_way_result_t<_Iterator, _Iterator> std::operator<=>(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorL>&)’ (rewritten)
1655 | operator<=>(const move_iterator<_Iterator>& __x,
| ^~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:1655:5: note: template argument deduction/substitution failed:
In file included from /usr/include/c++/11/bits/stl_algobase.h:71,
from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/ios:40,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from a.cpp:1:
/usr/include/c++/11/bits/predefined_ops.h:45:23: note: ‘std::pair<double, Point>’ is not derived from ‘const std::move_iterator<_IteratorL>’根据报错修改
最新发布