Boost logo

Boost Users :

From: lr (leonidr_at_[hidden])
Date: 2004-01-27 01:06:51


hello all,

i was wondering if anyone could help me with this compilation error.
gcc indicates that the error is in put(), specifically it cannot match
the operator for [bool&] on property_map.hpp:316. the full
output is included below.

the origin of the error is caused in destructor code (when objects get
out of scope in testgdlgraph.cpp).

if i need to supply more information about the code i am writing let me
know. i am hesitant because it is fairly complicated, as i am having
trouble trying to replicate this problem in a simple example.

thanks

leonid

ps. boost rocks, keep up the good work!

the compiler error:

/usr/include/boost/property_map.hpp: In function `void boost::put(const
   boost::put_get_helper<Reference, PropertyMap>&, K, const V&) [with
   PropertyMap = boost::adj_list_edge_property_map<boost::bidirectional_tag,
   ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*&, void*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t,
   dv_t>*, boost::no_property> >, ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag>, Reference = ngdl::GDLtable<par_t,
   dv_t, test1()::ser_t>*&, K = bool, V = const ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*]':
testgdlgraph.cpp:1488: instantiated from `void boost::put(Property, boost::adj_list_helper<Config, Base>&, const Key&, const Value&) [with Config = boost::detail::adj_list_gen<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>, boost::listS, boost::setS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boo
st::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>::config, Base = boost::bidirectional_graph_helper_with_property<boost::detail::adj_list_gen<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*
,
st1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>, boost::listS, boost::setS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>::config>, Property = ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, Key = bool, Value = const ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*]'
testgdlgraph.cpp:533: instantiated from `boost::graph_traits<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_table_tag, ngdl::GDLtable<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::no_property, boost::listS> >::edge_descriptor ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::add_edge(boost::graph_traits<boost::adjacency_list<boost::
setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_table_tag, ngdl::GDLtable<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::no_property, boost::listS> >::vertex_descriptor&, boost::graph_traits<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex
<p
roperty<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_table_tag, ngdl::GDLtable<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::no_property, boost::listS> >::vertex_descriptor&) [with parameter_t = par_t, domain_value_t = dv_t, sr_element_t = test1()::ser_t]'
testgdlgraph.cpp:104: instantiated from here
/usr/include/boost/property_map.hpp:316: no match for `const
   boost::adj_list_edge_property_map<boost::bidirectional_tag,
   ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*&, void*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t,
   dv_t>*, boost::no_property> >, ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag>& [bool&]' operator
/usr/include/boost/graph/detail/adjacency_list.hpp:2383: candidates are: Ref
   boost::adj_list_edge_property_map<Directed, Value, Ref, Vertex, Property,
   Tag>::operator[](boost::detail::edge_desc_impl<Directed, Vertex>) const
   [with Directed = boost::bidirectional_tag, Value = ngdl::GDLtable<par_t,
   dv_t, test1()::ser_t>*, Ref = ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*&,
   Vertex = void*, Property = boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t,
   dv_t>*, boost::no_property> >, Tag = ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag]
/usr/include/boost/property_map.hpp: In function `void boost::put(const
   boost::put_get_helper<Reference, PropertyMap>&, K, const V&) [with
   PropertyMap = boost::adj_list_edge_property_map<boost::bidirectional_tag,
   const ngdl::domain_map<par_t, dv_t>*, const ngdl::domain_map<par_t, dv_t>*&,
   void*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t,
   dv_t>*, boost::no_property> >, ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag>, Reference = const
   ngdl::domain_map<par_t, dv_t>*&, K = bool, V = const ngdl::domain_map<par_t,
   dv_t>*]':
testgdlgraph.cpp:1488: instantiated from `void boost::put(Property, boost::adj_list_helper<Config, Base>&, const Key&, const Value&) [with Config = boost::detail::adj_list_gen<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>, boost::listS, boost::setS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boo
st::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>::config, Base = boost::bidirectional_graph_helper_with_property<boost::detail::adj_list_gen<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*
,
st1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>, boost::listS, boost::setS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_vertex_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t, test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t, dv_t>*, boost::no_property> >, boost::no_property, boost::listS>::config>, Property = ngdl::GDLgraph<par_t, dv_t, test1()::ser_t>::GDL_edge_domain_map_tag, Key = bool, Value = const ngdl::domain_map<par_t, dv_t>*]'
testgdlgraph.cpp:537: instantiated from `boost::graph_traits<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_table_tag, ngdl::GDLtable<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::no_property, boost::listS> >::edge_descriptor ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::add_edge(boost::graph_traits<boost::adjacency_list<boost::
setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_table_tag, ngdl::GDLtable<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::no_property, boost::listS> >::vertex_descriptor&, boost::graph_traits<boost::adjacency_list<boost::setS, boost::listS, boost::bidirectionalS, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_vertex_tag, ngdl::GDLvertex
<p
roperty<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_vertex_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_table_tag, ngdl::GDLtable<parameter_t, domain_value_t, sr_element_t>*, boost::property<ngdl::GDLgraph<parameter_t, domain_value_t, sr_element_t>::GDL_edge_domain_map_tag, ngdl::GDLvertex<parameter_t, domain_value_t, sr_element_t>::domain_map_type*, boost::no_property> >, boost::no_property, boost::listS> >::vertex_descriptor&) [with parameter_t = par_t, domain_value_t = dv_t, sr_element_t = test1()::ser_t]'
testgdlgraph.cpp:104: instantiated from here
/usr/include/boost/property_map.hpp:316: no match for `const
   boost::adj_list_edge_property_map<boost::bidirectional_tag, const
   ngdl::domain_map<par_t, dv_t>*, const ngdl::domain_map<par_t, dv_t>*&,
   void*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t,
   dv_t>*, boost::no_property> >, ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag>& [bool&]' operator
/usr/include/boost/graph/detail/adjacency_list.hpp:2383: candidates are: Ref
   boost::adj_list_edge_property_map<Directed, Value, Ref, Vertex, Property,
   Tag>::operator[](boost::detail::edge_desc_impl<Directed, Vertex>) const
   [with Directed = boost::bidirectional_tag, Value = const
   ngdl::domain_map<par_t, dv_t>*, Ref = const ngdl::domain_map<par_t, dv_t>*&,
   Vertex = void*, Property = boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_table_tag, ngdl::GDLtable<par_t, dv_t,
   test1()::ser_t>*, boost::property<ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag, const ngdl::domain_map<par_t,
   dv_t>*, boost::no_property> >, Tag = ngdl::GDLgraph<par_t, dv_t,
   test1()::ser_t>::GDL_edge_domain_map_tag]
make[2]: *** [testgdlgraph.o] Error 1
make[1]: *** [check-am] Error 2
make: *** [check-recursive] Error 1


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net