Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clang-8: error: static_assert failed due to requirement 'integral_constant<bool, false>::value' "the specified hash does not meet the Hash requirements" #309

Open
yurivict opened this issue Oct 27, 2019 · 0 comments

Comments

@yurivict
Copy link

In file included from /usr/include/c++/v1/unordered_map:408:
/usr/include/c++/v1/__hash_table:868:5: error: static_assert failed due to requirement 'integral_constant<bool, false>::value' "the specified hash does not meet the Hash requirements"
    static_assert(__check_hash_requirements<_Key, _Hash>::value,
    ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/v1/__hash_table:883:1: note: in instantiation of template class 'std::__1::__enforce_unordered_container_requirements<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >' requested here
typename __enforce_unordered_container_requirements<_Key, _Hash, _Equal>::type
^
/usr/include/c++/v1/unordered_map:856:26: note: while substituting explicitly-specified template arguments into function template '__diagnose_unordered_container_requirements' 
    static_assert(sizeof(__diagnose_unordered_container_requirements<_Key, _Hash, _Pred>(0)), "");
                         ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/include/Hashtable.hpp:33:40: note: in instantiation of template class 'std::__1::unordered_map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void *, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void *> > >' requested here
        std::unordered_map<std::string,void*> my_map;
                                              ^
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:27:
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/include/Hashtable.hpp:28:
/usr/include/c++/v1/unordered_map:444:17: error: type 'const std::__1::hash<std::__1::basic_string<char> >' does not provide a call operator
        {return static_cast<const _Hash&>(*this)(__x);}
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/v1/__hash_table:2487:21: note: in instantiation of member function 'std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::hash<std::__1::basic_string<char> >, true>::operator()' requested here
    size_t __hash = hash_function()(__k);
                    ^
/usr/include/c++/v1/__hash_table:2716:35: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > > > >::find<std::__1::basic_string<char> >' requested here
    return static_cast<size_type>(find(__k) != end());
                                  ^
/usr/include/c++/v1/unordered_map:1278:65: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > > > >::__count_unique<std::__1::basic_string<char> >' requested here
    size_type count(const key_type& __k) const {return __table_.__count_unique(__k);}
                                                                ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/libs/libarchfpga/src/physical_types.h:111:22: note: in instantiation of member function 'std::__1::unordered_map<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> >, std::__1::hash<std::__1::basic_string<char> >, std::__1::equal_to<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > > > >::count' requested here
        return this->count(key) >= 1;
                     ^
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:27:
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/include/Hashtable.hpp:28:
In file included from /usr/include/c++/v1/unordered_map:408:
/usr/include/c++/v1/__hash_table:2104:21: error: no matching function for call to object of type 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > > > >::hasher' (aka 'std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::hash<std::__1::basic_string<char> >, true>')
    size_t __hash = hash_function()(__k);
                    ^~~~~~~~~~~~~~~
/usr/include/c++/v1/__hash_table:1090:16: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > > > >::__emplace_unique_key_args<std::__1::basic_string<char>, std::__1::basic_string<char> &, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >' requested here
        return __emplace_unique_key_args(__f, _VSTD::forward<_First>(__f),
               ^
/usr/include/c++/v1/unordered_map:1080:25: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > > > >::__emplace_unique<std::__1::basic_string<char> &, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >' requested here
        return __table_.__emplace_unique(_VSTD::forward<_Args>(__args)...);
                        ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/libs/libarchfpga/src/physical_types.h:144:36: note: in instantiation of function template specialization 'std::__1::unordered_map<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> >, std::__1::hash<std::__1::basic_string<char> >, std::__1::equal_to<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > > > >::emplace<std::__1::basic_string<char> &, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >' requested here
        auto iter_inserted = this->emplace(key, std::vector<t_metadata_value>());
                                   ^
/usr/include/c++/v1/unordered_map:440:12: note: candidate function not viable: no known conversion from 'const std::__1::basic_string<char>' to 'const std::__1::__hash_value_type<std::__1::basic_string<char>, std::__1::vector<t_metadata_value, std::__1::allocator<t_metadata_value> > >' for 1st argument
    size_t operator()(const _Cp& __x) const
           ^
/usr/include/c++/v1/unordered_map:444:17: error: type 'const std::__1::hash<std::__1::basic_string<char> >' does not provide a call operator
        {return static_cast<const _Hash&>(*this)(__x);}
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/v1/__hash_table:2104:21: note: in instantiation of member function 'std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>::operator()' requested here
    size_t __hash = hash_function()(__k);
                    ^
/usr/include/c++/v1/__hash_table:1130:14: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::__emplace_unique_key_args<std::__1::basic_string<char>, std::__1::pair<const std::__1::basic_string<char>, void *> >' requested here
      return __emplace_unique_key_args(_NodeTypes::__get_key(__x), _VSTD::move(__x));
             ^
/usr/include/c++/v1/unordered_map:1043:26: note: in instantiation of member function 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::__insert_unique' requested here
        {return __table_.__insert_unique(_VSTD::move(__x));}
                         ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:39:15: note: in instantiation of member function 'std::__1::unordered_map<std::__1::basic_string<char>, void *, std::__1::hash<std::__1::basic_string<char> >, std::__1::equal_to<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, void *> > >::insert' requested here
        this->my_map.insert({key,item});
                     ^
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:27:
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/include/Hashtable.hpp:28:
In file included from /usr/include/c++/v1/unordered_map:408:
/usr/include/c++/v1/__hash_table:2456:21: error: no matching function for call to object of type 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::hasher' (aka 'std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>')
    size_t __hash = hash_function()(__k);
                    ^~~~~~~~~~~~~~~
/usr/include/c++/v1/unordered_map:1274:69: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::find<std::__1::basic_string<char> >' requested here
    iterator       find(const key_type& __k)       {return __table_.find(__k);}
                                                                    ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:45:24: note: in instantiation of member function 'std::__1::unordered_map<std::__1::basic_string<char>, void *, std::__1::hash<std::__1::basic_string<char> >, std::__1::equal_to<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, void *> > >::find' requested here
        auto v = this->my_map.find(key);
                              ^
/usr/include/c++/v1/unordered_map:440:12: note: candidate function not viable: no known conversion from 'const std::__1::basic_string<char>' to 'const std::__1::__hash_value_type<std::__1::basic_string<char>, void *>' for 1st argument
    size_t operator()(const _Cp& __x) const
           ^
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:27:
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/include/Hashtable.hpp:28:
In file included from /usr/include/c++/v1/unordered_map:408:
/usr/include/c++/v1/__hash_table:2104:21: error: no matching function for call to object of type 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::hasher' (aka 'std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>')
    size_t __hash = hash_function()(__k);
                    ^~~~~~~~~~~~~~~
/usr/include/c++/v1/unordered_map:1558:21: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::__emplace_unique_key_args<std::__1::basic_string<char>, const std::__1::piecewise_construct_t &, std::__1::tuple<const std::__1::basic_string<char> &>, std::__1::tuple<> >' requested here
    return __table_.__emplace_unique_key_args(__k,
                    ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:48:23: note: in instantiation of member function 'std::__1::unordered_map<std::__1::basic_string<char>, void *, std::__1::hash<std::__1::basic_string<char> >, std::__1::equal_to<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, void *> > >::operator[]' requested here
                value = this->my_map[key];
                                    ^
/usr/include/c++/v1/unordered_map:440:12: note: candidate function not viable: no known conversion from 'const std::__1::basic_string<char>' to 'const std::__1::__hash_value_type<std::__1::basic_string<char>, void *>' for 1st argument
    size_t operator()(const _Cp& __x) const
           ^
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:27:
In file included from /usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/include/Hashtable.hpp:28:
In file included from /usr/include/c++/v1/unordered_map:408:
/usr/include/c++/v1/__hash_table:2633:14: error: no viable conversion from 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::const_iterator' (aka '__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *>') to 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::iterator' (aka '__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *>')
    iterator __i = find(__k);
             ^     ~~~~~~~~~
/usr/include/c++/v1/unordered_map:1191:59: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::__erase_unique<std::__1::basic_string<char> >' requested here
    size_type erase(const key_type& __k) {return __table_.__erase_unique(__k);}
                                                          ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:49:16: note: in instantiation of member function 'std::__1::unordered_map<std::__1::basic_string<char>, void *, std::__1::hash<std::__1::basic_string<char> >, std::__1::equal_to<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, void *> > >::erase' requested here
                this->my_map.erase(key);
                             ^
/usr/include/c++/v1/__hash_table:283:28: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::const_iterator' (aka '__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *>') to 'const std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *> &' for 1st argument
class _LIBCPP_TEMPLATE_VIS __hash_iterator
                           ^
/usr/include/c++/v1/__hash_table:283:28: note: candidate constructor (the implicit move constructor) not viable: no known conversion from 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::const_iterator' (aka '__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *>') to 'std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *> &&' for 1st argument
class _LIBCPP_TEMPLATE_VIS __hash_iterator
                           ^
/usr/include/c++/v1/__hash_table:377:5: note: candidate constructor not viable: no known conversion from 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::const_iterator' (aka '__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *>') to 'std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *>::__next_pointer' (aka 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, void *> *> *') for 1st argument
    __hash_iterator(__next_pointer __node) _NOEXCEPT
    ^
/usr/include/c++/v1/__hash_table:2487:21: error: no matching function for call to object of type 'const std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::hasher' (aka 'const std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>')
    size_t __hash = hash_function()(__k);
                    ^~~~~~~~~~~~~~~
/usr/include/c++/v1/__hash_table:2633:20: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::find<std::__1::basic_string<char> >' requested here
    iterator __i = find(__k);
                   ^
/usr/include/c++/v1/unordered_map:1191:59: note: in instantiation of function template specialization 'std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::__unordered_map_hasher<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::hash<std::__1::basic_string<char> >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char>, std::__1::__hash_value_type<std::__1::basic_string<char>, void *>, std::__1::equal_to<std::__1::basic_string<char> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char>, void *> > >::__erase_unique<std::__1::basic_string<char> >' requested here
    size_type erase(const key_type& __k) {return __table_.__erase_unique(__k);}
                                                          ^
/usr/ports/cad/vtr-verilog-to-routing/work/vtr-verilog-to-routing-596caca/ODIN_II/SRC/Hashtable.cpp:49:16: note: in instantiation of member function 'std::__1::unordered_map<std::__1::basic_string<char>, void *, std::__1::hash<std::__1::basic_string<char> >, std::__1::equal_to<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, void *> > >::erase' requested here
                this->my_map.erase(key);
                             ^
/usr/include/c++/v1/unordered_map:440:12: note: candidate function not viable: no known conversion from 'const std::__1::basic_string<char>' to 'const std::__1::__hash_value_type<std::__1::basic_string<char>, void *>' for 1st argument
    size_t operator()(const _Cp& __x) const
           ^
8 errors generated.

FreeBSD 12

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant