[Bug libstdc++/54296] using the object in the map to erase element from the map crashes
fdumont at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Aug 27 07:59:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54296
--- Comment #7 from François Dumont <fdumont at gcc dot gnu.org> 2012-08-27 07:58:49 UTC ---
I confirm that it is an old issue, it has surely always be there. I managed to
reproduce it from the testsuite. The problem is that the current code works
fine when the key instance is taken from the container keys but doesn't work
when it is extracted from the container values.
The current address check is not reliable because the passed key instance could
be anywhere within the mapped value. I am preparing a patch to separate the
loop used to find the nodes to erase from the loop used to deallocate them.
More information about the Gcc-bugs
mailing list