id summary reporter owner description type status milestone component version severity resolution keywords cc 6714 utree::insert return begin() if position == end() sairony@… Joel de Guzman This seems intentional by looking at the source, but it makes utree::insert differ from stl in a subtle and very dangerous way. It also makes using insert excessively cumbersome, as you need to special case for position == end. Offending function is at BOOST/SPIRIT/HOME/SUPPORT/UTREE/DETAIL/UTREE_DETAIL2.HPP @ ~1037 ( inline utree::iterator utree::insert(iterator pos, T const& val) ). Bugs closed To Be Determined spirit Boost 1.48.0 Problem fixed