Subject: [Boost-bugs] [Boost C++ Libraries] #3078: Assert failure caused by property_map with BGL bundled properties if compiled in Debug mode in VS2008 SP1
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-05-25 11:33:40
#3078: Assert failure caused by property_map with BGL bundled properties if
compiled in Debug mode in VS2008 SP1
------------------------------------------------------+---------------------
Reporter: Artyom Arabadji <sneg.vx_at_[hidden]> | Owner: dgregor
Type: Bugs | Status: new
Milestone: | Component: property_map
Version: Boost 1.38.0 | Severity: Problem
Keywords: bgl, property_map, vs2008 |
------------------------------------------------------+---------------------
The program attached compiles in Debug but causes an assertion failure if
the graph contains bundled properties. The same code was tested with no
properties attached to vertices/edges and no errors were observed.
Here is the error:
vector, line 160.
Assertion Failed: Expression("this->_Has_container()", 0)
This corresponds to the earlier call to a function on line 351 in
property_map.hpp:
inline R operator[](key_type v) const { return *(iter + get(index, v)) ; }
Full stack frame from this call is:
////////////////////////
std::_Vector_const_iterator<unsigned int,std::allocator<unsigned int>
>::operator+=(int _Off=47) Line 160
std::_Vector_iterator<unsigned int,std::allocator<unsigned int>
>::operator+=(int _Off=47) Line 376
std::_Vector_iterator<unsigned int,std::allocator<unsigned int>
>::operator+(int _Off=47) Line 382
>
boost::iterator_property_map<std::_Vector_iterator<unsigned
int,std::allocator<unsigned int>
>,boost::vec_adj_list_vertex_id_map<boost::property<enum
boost::vertex_bundle_t,Clip_t,boost::no_property>,unsigned int>,unsigned
int,unsigned int &>::operator[](unsigned int v=47) Line 351
boost::put<boost::iterator_property_map<std::_Vector_iterator<unsigned
int,std::allocator<unsigned int>
>,boost::vec_adj_list_vertex_id_map<boost::property<enum
boost::vertex_bundle_t,Clip_t,boost::no_property>,unsigned int>,unsigned
int,unsigned int &>,unsigned int &,unsigned int,unsigned int>(const
boost::put_get_helper<unsigned int
&,boost::iterator_property_map<std::_Vector_iterator<unsigned
int,std::allocator<unsigned int>
>,boost::vec_adj_list_vertex_id_map<boost::property<enum
boost::vertex_bundle_t,Clip_t,boost::no_property>,unsigned int>,unsigned
int,unsigned int &> > & pa={...}, unsigned int k=47, const unsigned int &
v=27) Line 321
////////////////////////
This happens if program is compiled on VS2008 SP1 in DEBUG mode. If
compiled in Release mode, program works as expected with no errors
(atleast none that I can see). The program uses boost 1.38.0.
Arty
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/3078> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:00 UTC