Opened 10 years ago
Closed 10 years ago
#7269 closed Bugs (fixed)
vector::insert inserts in reverse order
| Reported by: | Owned by: | Ion Gaztañaga | |
|---|---|---|---|
| Milestone: | To Be Determined | Component: | container |
| Version: | Boost 1.50.0 | Severity: | Problem |
| Keywords: | Cc: |
Description
When inserting an input range into a boost.container vector, the items are inserted in the reverse order, or the program crashes.
The problem appears to be in
template <class InIt>
void priv_range_insert(const_iterator pos, InIt first, InIt last, std::input_iterator_tag)
{
for(;first != last; ++first){
this->emplace(pos, *first);
}
}
where pos is not updated after each insertion.
In the attached file, v1 is ok, but v2 is reversed. If v2.reserve(5) is removed, the program crashes.
Attachments (1)
Change History (2)
by , 10 years ago
| Attachment: | container_vector_bug.cpp added |
|---|
comment:1 by , 10 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
Note:
See TracTickets
for help on using tickets.

Thanks for the report fixed in trunk at revision: 80172