In file included from main.cpp:16:0:
find.h: In instantiation of 'RIterator Binary(const T&, RIterator, RIterator) [with T = int; RIterator = std::_List_iterator<int>]':
find.h:27:30: required from 'Iterator Find(const T&, Iterator, Iterator) [with T = int; Iterator = std::_List_iterator<int>]'
main.cpp:83:57: required from here
find.h:12:35: error: no match for 'operator-' (operand types are 'std::_List_iterator<int>' and 'std::_List_iterator<int>')
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/deque:64:0,
from /usr/include/c++/7/queue:60,
from main.cpp:9:
/usr/include/c++/7/bits/stl_deque.h:363:5: note: candidate: template<class _Tp, class _RefL, class _PtrL, class _RefR, class _PtrR> typename std::_Deque_iterator<_Tp, _Ref, _Ptr>::difference_type std::operator-(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _RefR, _PtrR>&)
operator-(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_deque.h:363:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<int>' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/deque:64:0,
from /usr/include/c++/7/queue:60,
from main.cpp:9:
/usr/include/c++/7/bits/stl_deque.h:351:5: note: candidate: template<class _Tp, class _Ref, class _Ptr> typename std::_Deque_iterator<_Tp, _Ref, _Ptr>::difference_type std::operator-(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _Ref, _Ptr>&)
operator-(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_deque.h:351:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<int>' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/vector:65:0,
from /usr/include/c++/7/functional:61,
from main.cpp:6:
/usr/include/c++/7/bits/stl_bvector.h:208:3: note: candidate: std::ptrdiff_t std::operator-(const std::_Bit_iterator_base&, const std::_Bit_iterator_base&)
operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
^~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:208:3: note: no known conversion for argument 1 from 'std::_List_iterator<int>' to 'const std::_Bit_iterator_base&'
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:1194:5: note: candidate: template<class _IteratorL, class _IteratorR> constexpr decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)
operator-(const move_iterator<_IteratorL>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:1194:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<int>' is not derived from 'const std::move_iterator<_IteratorL>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:392:5: note: candidate: template<class _IteratorL, class _IteratorR> constexpr decltype ((__y.base() - __x.base())) std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)
operator-(const reverse_iterator<_IteratorL>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:392:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<int>' is not derived from 'const std::reverse_iterator<_Iterator>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
find.h:14:48: error: no match for 'operator+' (operand types are 'std::_List_iterator<int>' and 'int')
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/deque:64:0,
from /usr/include/c++/7/queue:60,
from main.cpp:9:
/usr/include/c++/7/bits/stl_deque.h:374:5: note: candidate: template<class _Tp, class _Ref, class _Ptr> std::_Deque_iterator<_Tp, _Ref, _Ptr> std::operator+(std::ptrdiff_t, const std::_Deque_iterator<_Tp, _Ref, _Ptr>&)
operator+(ptrdiff_t __n, const _Deque_iterator<_Tp, _Ref, _Ptr>& __x)
^~~~~~~~
/usr/include/c++/7/bits/stl_deque.h:374:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/vector:65:0,
from /usr/include/c++/7/functional:61,
from main.cpp:6:
/usr/include/c++/7/bits/stl_bvector.h:387:3: note: candidate: std::_Bit_const_iterator std::operator+(std::ptrdiff_t, const std::_Bit_const_iterator&)
operator+(ptrdiff_t __n, const _Bit_const_iterator& __x)
^~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:387:3: note: no known conversion for argument 1 from 'std::_List_iterator<int>' to 'std::ptrdiff_t {aka long int}'
/usr/include/c++/7/bits/stl_bvector.h:297:3: note: candidate: std::_Bit_iterator std::operator+(std::ptrdiff_t, const std::_Bit_iterator&)
operator+(ptrdiff_t __n, const _Bit_iterator& __x)
^~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:297:3: note: no known conversion for argument 1 from 'std::_List_iterator<int>' to 'std::ptrdiff_t {aka long int}'
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5995:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, _CharT)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5995:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5989:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _CharT*)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5989:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5983:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(_CharT __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5983:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5977:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(const _CharT* __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5977:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const _CharT*' and 'std::_List_iterator<int>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5965:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5965:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5959:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5959:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5953:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5953:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5941:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, _CharT)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5941:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5925:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5925:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:53:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.tcc:1173:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Alloc>& __rhs)
^~~~~~~~
/usr/include/c++/7/bits/basic_string.tcc:1173:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:53:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.tcc:1157:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(const _CharT* __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.tcc:1157:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const _CharT*' and 'std::_List_iterator<int>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5888:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5888:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<int>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:1201:5: note: candidate: template<class _Iterator> constexpr std::move_iterator<_IteratorL> std::operator+(typename std::move_iterator<_IteratorL>::difference_type, const std::move_iterator<_IteratorL>&)
operator+(typename move_iterator<_Iterator>::difference_type __n,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:1201:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::move_iterator<_IteratorL>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:400:5: note: candidate: template<class _Iterator> constexpr std::reverse_iterator<_Iterator> std::operator+(typename std::reverse_iterator<_Iterator>::difference_type, const std::reverse_iterator<_Iterator>&)
operator+(typename reverse_iterator<_Iterator>::difference_type __n,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:400:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::reverse_iterator<_Iterator>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
find.h: In instantiation of 'RIterator Binary(const T&, RIterator, RIterator) [with T = Test; RIterator = std::_List_iterator<Test>]':
find.h:27:30: required from 'Iterator Find(const T&, Iterator, Iterator) [with T = Test; Iterator = std::_List_iterator<Test>]'
main.cpp:101:63: required from here
find.h:12:35: error: no match for 'operator-' (operand types are 'std::_List_iterator<Test>' and 'std::_List_iterator<Test>')
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/deque:64:0,
from /usr/include/c++/7/queue:60,
from main.cpp:9:
/usr/include/c++/7/bits/stl_deque.h:363:5: note: candidate: template<class _Tp, class _RefL, class _PtrL, class _RefR, class _PtrR> typename std::_Deque_iterator<_Tp, _Ref, _Ptr>::difference_type std::operator-(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _RefR, _PtrR>&)
operator-(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_deque.h:363:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<Test>' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/deque:64:0,
from /usr/include/c++/7/queue:60,
from main.cpp:9:
/usr/include/c++/7/bits/stl_deque.h:351:5: note: candidate: template<class _Tp, class _Ref, class _Ptr> typename std::_Deque_iterator<_Tp, _Ref, _Ptr>::difference_type std::operator-(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _Ref, _Ptr>&)
operator-(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_deque.h:351:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<Test>' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/vector:65:0,
from /usr/include/c++/7/functional:61,
from main.cpp:6:
/usr/include/c++/7/bits/stl_bvector.h:208:3: note: candidate: std::ptrdiff_t std::operator-(const std::_Bit_iterator_base&, const std::_Bit_iterator_base&)
operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
^~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:208:3: note: no known conversion for argument 1 from 'std::_List_iterator<Test>' to 'const std::_Bit_iterator_base&'
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:1194:5: note: candidate: template<class _IteratorL, class _IteratorR> constexpr decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)
operator-(const move_iterator<_IteratorL>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:1194:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<Test>' is not derived from 'const std::move_iterator<_IteratorL>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:392:5: note: candidate: template<class _IteratorL, class _IteratorR> constexpr decltype ((__y.base() - __x.base())) std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)
operator-(const reverse_iterator<_IteratorL>& __x,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:392:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:12:35: note: 'std::_List_iterator<Test>' is not derived from 'const std::reverse_iterator<_Iterator>'
RIterator mid = first + (last - first) / 2;
~~~~~~^~~~~~~~
find.h:14:48: error: no match for 'operator+' (operand types are 'std::_List_iterator<Test>' and 'int')
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/deque:64:0,
from /usr/include/c++/7/queue:60,
from main.cpp:9:
/usr/include/c++/7/bits/stl_deque.h:374:5: note: candidate: template<class _Tp, class _Ref, class _Ptr> std::_Deque_iterator<_Tp, _Ref, _Ptr> std::operator+(std::ptrdiff_t, const std::_Deque_iterator<_Tp, _Ref, _Ptr>&)
operator+(ptrdiff_t __n, const _Deque_iterator<_Tp, _Ref, _Ptr>& __x)
^~~~~~~~
/usr/include/c++/7/bits/stl_deque.h:374:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/vector:65:0,
from /usr/include/c++/7/functional:61,
from main.cpp:6:
/usr/include/c++/7/bits/stl_bvector.h:387:3: note: candidate: std::_Bit_const_iterator std::operator+(std::ptrdiff_t, const std::_Bit_const_iterator&)
operator+(ptrdiff_t __n, const _Bit_const_iterator& __x)
^~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:387:3: note: no known conversion for argument 1 from 'std::_List_iterator<Test>' to 'std::ptrdiff_t {aka long int}'
/usr/include/c++/7/bits/stl_bvector.h:297:3: note: candidate: std::_Bit_iterator std::operator+(std::ptrdiff_t, const std::_Bit_iterator&)
operator+(ptrdiff_t __n, const _Bit_iterator& __x)
^~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:297:3: note: no known conversion for argument 1 from 'std::_List_iterator<Test>' to 'std::ptrdiff_t {aka long int}'
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5995:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, _CharT)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5995:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5989:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _CharT*)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5989:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5983:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(_CharT __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5983:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5977:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(const _CharT* __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5977:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const _CharT*' and 'std::_List_iterator<Test>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5965:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5965:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5959:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5959:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5953:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5953:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5941:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, _CharT)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5941:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5925:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5925:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:53:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.tcc:1173:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Alloc>& __rhs)
^~~~~~~~
/usr/include/c++/7/bits/basic_string.tcc:1173:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:53:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.tcc:1157:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(const _CharT* __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.tcc:1157:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const _CharT*' and 'std::_List_iterator<Test>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/string:52:0,
from /usr/include/c++/7/stdexcept:39,
from /usr/include/c++/7/array:39,
from /usr/include/c++/7/tuple:39,
from /usr/include/c++/7/functional:54,
from main.cpp:6:
/usr/include/c++/7/bits/basic_string.h:5888:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5888:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: 'std::_List_iterator<Test>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:1201:5: note: candidate: template<class _Iterator> constexpr std::move_iterator<_IteratorL> std::operator+(typename std::move_iterator<_IteratorL>::difference_type, const std::move_iterator<_IteratorL>&)
operator+(typename move_iterator<_Iterator>::difference_type __n,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:1201:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::move_iterator<_IteratorL>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/algorithm:61,
from main.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h:400:5: note: candidate: template<class _Iterator> constexpr std::reverse_iterator<_Iterator> std::operator+(typename std::reverse_iterator<_Iterator>::difference_type, const std::reverse_iterator<_Iterator>&)
operator+(typename reverse_iterator<_Iterator>::difference_type __n,
^~~~~~~~
/usr/include/c++/7/bits/stl_iterator.h:400:5: note: template argument deduction/substitution failed:
In file included from main.cpp:16:0:
find.h:14:48: note: mismatched types 'const std::reverse_iterator<_Iterator>' and 'int'
if (*mid < value) return Binary(value, mid + 1, last);
~~~~^~~
|