id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 7215,string::insert returns a wrong iterator,anonymous,Ion Gaztañaga,"{{{iterator insert(const_iterator p, CharT c)}}} returns an iterator witch refers to a character behind the inserted character. (Boost 1.50.0, MSVC 9.0) {{{ #include #include #include int main() { std::string ss(""1""); boost::container::string bs(""1""); std::cout << *ss.insert(ss.begin(), '0') << std::endl; std::cout << *bs.insert(bs.begin(), '0') << std::endl; return 0; } Output: 0 1 }}} In boost/container/string.hpp: {{{ iterator insert(const_iterator p, CharT c) { size_type new_offset = p - this->priv_addr() + 1; this->insert(p, cvalue_iterator(c, 1), cvalue_iterator()); return this->priv_addr() + new_offset; } }}} I think that ""+ 1"" is unnecessary.",Bugs,closed,To Be Determined,container,Boost 1.50.0,Problem,fixed,,