
Hi, I am trying to use hash feature with the graph library. Here are the various details: Solaris: SunOS 5.7 Compiler: KAI 4.0 STL: Native Sun Hash: A hacked up version of SGI/STLPort I can get graph to work with vectors/lists. I can't get it to work with the hash_set or hash_map. I get a message from the "concept_checks.h" file in my hash which essentially tells me that the hash function is not defined. I am reproducing the message from the compiler at the bottom. I am trying to make all this work by using the adjacency_list.cpp file in the examples directory. Here is the change I have made to that file: typedef adjacency_list<hash_setS, listS, undirectedS, VertexProperty, EdgeProperty> Graph; // New typedef adjacency_list<vecS, listS, undirectedS, VertexProperty, EdgeProperty> Graph; // Old Can you please help? Has anyone used the has feature in the graph library. I had to edit the line number 166 in adjacency_list.hpp to replace hash_set with hash_map. Thanks -Sandeep The message: "/lsi/home/bhutani/hash/include/concept_checks.h", line 289: error: call of an object of a class type without appropriate operator() or conversion functions to pointer-to-function type return __f(__arg); ^ detected during instantiation of "_Ret _STL_UNARY_FUNCTION_ERROR<_Func, _Ret, _Arg>::__unary_function_requirement_violation(_Func &, const _Arg &) [with _Func=std::hash<boost::detail::adj_list_gen<boost::adjacenc y_list<boost::hash_setS, boost::listS, boost::undirectedS, boost::property<boost::vertex_index_t, size_t, boost::property<boost::vertex_color_t, boost::default_color_type, boost::no_property>>, boost::property<boost::edge_name_t, std::string, boost::no_property>, boost::no_property, boost::listS>, boost::listS, boost::hash_setS, boost::undirectedS, boost::property<boost::vertex_index_t, size_t, boost::property<boost::vertex_color_t, boost::default_color_type, boost::no_property>>, boost::property<boost::edge_name_t, std::string, boost::no_property>, boost::no_property, boost::listS>::config::StoredEdge>, _Ret=size_t, _Arg=boost::detail::adj_list_gen<boost::adjacency_list<boos t::hash_setS, boost::listS, boost::undirectedS, boost::property<boost::vertex_index_t, size_t, boost::property<boost::vertex_color_t, boost::default_color_type, boost::no_property>>, boost::property<boost::edge_name_t, std::string, boost::no_property>, boost::no_property, boost::listS>, boost::listS, boost::hash_setS, boost::undirectedS, boost::property<boost::vertex_index_t, size_t, boost::property<boost::vertex_color_t, boost::default_color_type, boost::no_property>>, boost::property<boost::edge_name_t, std::string, boost::no_property>, boost::no_property, boost::listS>::config::StoredEdge]" at line 95 of "adjacency_list.cpp" 1 error detected in the compilation of "adjacency_list.cpp". KCC: Compilation failed. boost::property<boost::vertex_color_t, boost::default_color_type, boost::no_property>>, boost::property<boost::edge_name_t, std::string, boost::no_property>, boost::no_property, boost::listS>, boost::listS, boost::hash_setS, boost::undirectedS, boost::property<boost::vertex_index_t, size_t, boost::property<boost::vertex_color_t, boost::default_color_type, boost::no_property>>, boost::property<boost::edge_name_t, std::string, boost::no_property>, boost::no_property, boost::listS>::config::StoredEdge]" at line 95 of "adjacency_list.cpp" 1 error detected in the compilation of "adjacency_list.cpp". KCC: Compilation failed.