In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp: In instantiation of 'HashTable<Key, Value, Hash, KeyEqual>::Iterator HashTable<Key, Value, Hash, KeyEqual>::find(const Key&) [with Key = int; Value = int; Hash = std::hash<int>; KeyEqual = std::equal_to<int>]':
/in/driver/main.cpp:101:34: required from here
/in/hashtable.hpp:256:27: error: conversion to 'int' from 'std::size_t {aka long unsigned int}' may alter its value [-Werror=conversion]
int i = hash(key) | bucketSize();
/in/hashtable.hpp:257:18: error: conversion from 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}' to non-scalar type 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' requested
Iterator it = buckets[i].begin();
^~
/in/hashtable.hpp:259:16: error: no match for 'operator=' (operand types are 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' and 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}')
it = buckets[i].end();
/in/hashtable.hpp:91:19: note: candidate: constexpr HashTable<Key, Value, Hash, KeyEqual>::Iterator& HashTable<Key, Value, Hash, KeyEqual>::Iterator::operator=(const HashTable<Key, Value, Hash, KeyEqual>::Iterator&) [with Key = int; Value = int; Hash = std::hash<int>; KeyEqual = std::equal_to<int>]
Iterator &operator=(const Iterator &) = default;
^~~~~~~~
/in/hashtable.hpp:91:19: note: no known conversion for argument 1 from 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}' to 'const HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator&'
/in/hashtable.hpp:263:19: error: no match for 'operator!=' (operand types are 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' and 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}')
while (it != buckets[i].end()) {
/in/hashtable.hpp:110:14: note: candidate: bool HashTable<Key, Value, Hash, KeyEqual>::Iterator::operator!=(const HashTable<Key, Value, Hash, KeyEqual>::Iterator&) const [with Key = int; Value = int; Hash = std::hash<int>; KeyEqual = std::equal_to<int>]
bool operator!=(const Iterator &that) const {
^~~~~~~~
/in/hashtable.hpp:110:14: note: no known conversion for argument 1 from 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}' to 'const HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator&'
In file included from /usr/include/c++/7/vector:64:0,
from /usr/include/c++/7/functional:61,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/bits/stl_vector.h:1625:5: note: candidate: template<class _Tp, class _Alloc> bool std::operator!=(const std::vector<_Tp, _Alloc>&, const std::vector<_Tp, _Alloc>&)
operator!=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
^~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:1625:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::vector<_Tp, _Alloc>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/unordered_map:48:0,
from /usr/include/c++/7/functional:60,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/bits/unordered_map.h:1922:5: note: candidate: template<class _Key, class _Tp, class _Hash, class _Pred, class _Alloc> bool std::operator!=(const std::unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>&, const std::unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>&)
operator!=(const unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>& __x,
^~~~~~~~
/usr/include/c++/7/bits/unordered_map.h:1922:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/unordered_map:48:0,
from /usr/include/c++/7/functional:60,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/bits/unordered_map.h:1910:5: note: candidate: template<class _Key, class _Tp, class _Hash, class _Pred, class _Alloc> bool std::operator!=(const std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>&, const std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>&)
operator!=(const unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>& __x,
^~~~~~~~
/usr/include/c++/7/bits/unordered_map.h:1910:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/node_handle.h:39:0,
from /usr/include/c++/7/bits/hashtable.h:37,
from /usr/include/c++/7/unordered_map:47,
from /usr/include/c++/7/functional:60,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/optional:922:5: note: candidate: template<class _Tp, class _Up> constexpr std::__optional_relop_t<decltype ((declval<_Up>() != declval<_Tp>()))> std::operator!=(const _Up&, const std::optional<_Tp>&)
operator!=(const _Up& __lhs, const optional<_Tp>& __rhs)
^~~~~~~~
/usr/include/c++/7/optional:922:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}' is not derived from 'const std::optional<_Tp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/node_handle.h:39:0,
from /usr/include/c++/7/bits/hashtable.h:37,
from /usr/include/c++/7/unordered_map:47,
from /usr/include/c++/7/functional:60,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/optional:916:5: note: candidate: template<class _Tp, class _Up> constexpr std::__optional_relop_t<decltype ((declval<_Tp>() != declval<_Up>()))> std::operator!=(const std::optional<_Tp>&, const _Up&)
operator!=(const optional<_Tp>& __lhs, const _Up& __rhs)
^~~~~~~~
/usr/include/c++/7/optional:916:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::optional<_Tp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/node_handle.h:39:0,
from /usr/include/c++/7/bits/hashtable.h:37,
from /usr/include/c++/7/unordered_map:47,
from /usr/include/c++/7/functional:60,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/optional:858:5: note: candidate: template<class _Tp> constexpr bool std::operator!=(std::nullopt_t, const std::optional<_Tp>&)
operator!=(nullopt_t, const optional<_Tp>& __rhs) noexcept
^~~~~~~~
/usr/include/c++/7/optional:858:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}' is not derived from 'const std::optional<_Tp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/node_handle.h:39:0,
from /usr/include/c++/7/bits/hashtable.h:37,
from /usr/include/c++/7/unordered_map:47,
from /usr/include/c++/7/functional:60,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/optional:853:5: note: candidate: template<class _Tp> constexpr bool std::operator!=(const std::optional<_Tp>&, std::nullopt_t)
operator!=(const optional<_Tp>& __lhs, nullopt_t) noexcept
^~~~~~~~
/usr/include/c++/7/optional:853:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::optional<_Tp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/node_handle.h:39:0,
from /usr/include/c++/7/bits/hashtable.h:37,
from /usr/include/c++/7/unordered_map:47,
from /usr/include/c++/7/functional:60,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/optional:801:5: note: candidate: template<class _Tp, class _Up> constexpr std::__optional_relop_t<decltype ((declval<_Tp>() != declval<_Up>()))> std::operator!=(const std::optional<_Tp>&, const std::optional<_Up>&)
operator!=(const optional<_Tp>& __lhs, const optional<_Up>& __rhs)
^~~~~~~~
/usr/include/c++/7/optional:801:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::optional<_Tp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/functional:58:0,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/bits/std_function.h:788:5: note: candidate: template<class _Res, class ... _Args> bool std::operator!=(std::nullptr_t, const std::function<_Res(_ArgTypes ...)>&)
operator!=(nullptr_t, const function<_Res(_Args...)>& __f) noexcept
^~~~~~~~
/usr/include/c++/7/bits/std_function.h:788:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}' is not derived from 'const std::function<_Res(_ArgTypes ...)>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/functional:58:0,
from /in/hashtable.hpp:6,
from /in/driver/main.cpp:5:
/usr/include/c++/7/bits/std_function.h:782:5: note: candidate: template<class _Res, class ... _Args> bool std::operator!=(const std::function<_Res(_ArgTypes ...)>&, std::nullptr_t)
operator!=(const function<_Res(_Args...)>& __f, nullptr_t) noexcept
^~~~~~~~
/usr/include/c++/7/bits/std_function.h:782:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::function<_Res(_ArgTypes ...)>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/forward_list:38:0,
from /in/hashtable.hpp:5,
from /in/driver/main.cpp:5:
/usr/include/c++/7/bits/forward_list.h:1396:5: note: candidate: template<class _Tp, class _Alloc> bool std::operator!=(const std::forward_list<_Tp, _Alloc>&, const std::forward_list<_Tp, _Alloc>&)
operator!=(const forward_list<_Tp, _Alloc>& __lx,
^~~~~~~~
/usr/include/c++/7/bits/forward_list.h:1396:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::forward_list<_Tp, _Alloc>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/forward_list:38:0,
from /in/hashtable.hpp:5,
from /in/driver/main.cpp:5:
/usr/include/c++/7/bits/forward_list.h:266:5: note: candidate: template<class _Tp> bool std::operator!=(const std::_Fwd_list_iterator<_Tp>&, const std::_Fwd_list_const_iterator<_Tp>&)
operator!=(const _Fwd_list_iterator<_Tp>& __x,
^~~~~~~~
/usr/include/c++/7/bits/forward_list.h:266:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::_Fwd_list_iterator<_Tp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
from /usr/include/c++/7/locale:43,
from /usr/include/c++/7/iomanip:43,
from /in/driver/main.cpp:2:
/usr/include/c++/7/bits/unique_ptr.h:707:5: note: candidate: template<class _Tp, class _Dp> bool std::operator!=(std::nullptr_t, const std::unique_ptr<_Tp, _Dp>&)
operator!=(nullptr_t, const unique_ptr<_Tp, _Dp>& __x) noexcept
^~~~~~~~
/usr/include/c++/7/bits/unique_ptr.h:707:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'std::forward_list<std::pair<const int, int>, std::allocator<std::pair<const int, int> > >::iterator {aka std::_Fwd_list_iterator<std::pair<const int, int> >}' is not derived from 'const std::unique_ptr<_Tp, _Dp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
from /usr/include/c++/7/locale:43,
from /usr/include/c++/7/iomanip:43,
from /in/driver/main.cpp:2:
/usr/include/c++/7/bits/unique_ptr.h:702:5: note: candidate: template<class _Tp, class _Dp> bool std::operator!=(const std::unique_ptr<_Tp, _Dp>&, std::nullptr_t)
operator!=(const unique_ptr<_Tp, _Dp>& __x, nullptr_t) noexcept
^~~~~~~~
/usr/include/c++/7/bits/unique_ptr.h:702:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::unique_ptr<_Tp, _Dp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
from /usr/include/c++/7/locale:43,
from /usr/include/c++/7/iomanip:43,
from /in/driver/main.cpp:2:
/usr/include/c++/7/bits/unique_ptr.h:696:5: note: candidate: template<class _Tp, class _Dp, class _Up, class _Ep> bool std::operator!=(const std::unique_ptr<_Tp, _Dp>&, const std::unique_ptr<_Up, _Ep>&)
operator!=(const unique_ptr<_Tp, _Dp>& __x,
^~~~~~~~
/usr/include/c++/7/bits/unique_ptr.h:696:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::unique_ptr<_Tp, _Dp>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/unique_ptr.h:37:0,
from /usr/include/c++/7/bits/locale_conv.h:41,
from /usr/include/c++/7/locale:43,
from /usr/include/c++/7/iomanip:43,
from /in/driver/main.cpp:2:
/usr/include/c++/7/tuple:1423:5: note: candidate: template<class ... _TElements, class ... _UElements> constexpr bool std::operator!=(const std::tuple<_Tps ...>&, const std::tuple<_Elements ...>&)
operator!=(const tuple<_TElements...>& __t,
^~~~~~~~
/usr/include/c++/7/tuple:1423:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::tuple<_Tps ...>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/tuple:39:0,
from /usr/include/c++/7/bits/unique_ptr.h:37,
from /usr/include/c++/7/bits/locale_conv.h:41,
from /usr/include/c++/7/locale:43,
from /usr/include/c++/7/iomanip:43,
from /in/driver/main.cpp:2:
/usr/include/c++/7/array:257:5: note: candidate: template<class _Tp, long unsigned int _Nm> bool std::operator!=(const std::array<_Tp, _Nm>&, const std::array<_Tp, _Nm>&)
operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
^~~~~~~~
/usr/include/c++/7/array:257:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::array<_Tp, _Nm>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/locale_facets.h:48:0,
from /usr/include/c++/7/bits/basic_ios.h:37,
from /usr/include/c++/7/ios:44,
from /usr/include/c++/7/ostream:38,
from /usr/include/c++/7/iostream:39,
from /in/driver/main.cpp:1:
/usr/include/c++/7/bits/streambuf_iterator.h:210:5: note: candidate: template<class _CharT, class _Traits> bool std::operator!=(const std::istreambuf_iterator<_CharT, _Traits>&, const std::istreambuf_iterator<_CharT, _Traits>&)
operator!=(const istreambuf_iterator<_CharT, _Traits>& __a,
^~~~~~~~
/usr/include/c++/7/bits/streambuf_iterator.h:210:5: note: template argument deduction/substitution failed:
In file included from /in/driver/main.cpp:5:0:
/in/hashtable.hpp:263:19: note: 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>'
while (it != buckets[i].end()) {
In file included from /usr/include/c++/7/bits/ios_base.h:46:0,
from /usr/include/c++/7/ios:42,
from /usr/include/c++/7/ostream:38,
from /usr/include/c++/7/iostream:39,
from /in/driver/main.cpp:1:
/usr/include/c++/7/system_error:331:3: note: candidate: bool std::operator!=(const std::error_condition&, const std::error_condition&)
operator!=(const error_condition& __lhs,
^~~~~~~~
/usr/include/c++/7/system_error:331:3: note: no known conversion for argument 1 from 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' to 'const std::error_condition&'
/usr/include/c++/7/system_error:327:3: note: candidate: bool std::operator!=(const std::error_condition&, const std::error_code&)
operator!=(const error_condition& __lhs, const error_code& __rhs) noexcept
^~~~~~~~
/usr/include/c++/7/system_error:327:3: note: no known conversion for argument 1 from 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' to 'const std::error_condition&'
/usr/include/c++/7/system_error:323:3: note: candidate: bool std::operator!=(const std::error_code&, const std::error_condition&)
operator!=(const error_code& __lhs, const error_condition& __rhs) noexcept
^~~~~~~~
/usr/include/c++/7/system_error:323:3: note: no known conversion for argument 1 from 'HashTable<int, int, std::hash<int>, std::equal_to<int> >::Iterator' to 'const std::error_cod