hashtable cleanup + new testsuite files

François Dumont frs.dumont@gmail.com
Mon Nov 28 20:30:00 GMT 2011


Hi

     After last hashtable patch there is no more risk of exceptions in 
_M_rehash method, the attached patch remove the useless code. I have 
also added some checks in testsuite and add tests to challenge an issue 
I detected last time thanks to a side effect of debug mode.

2011-11-28  François Dumont <fdumont@gcc.gnu.org>

         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Remove code
         useless now that the hashtable implementation put the hash code in
         cache if the hash functor throws.
         * testsuite/23_containers/unordered_set/erase/1.cc: Enhance test by
         checking also distance between begin and end iterators to validate
         underlying data model.
         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
         * testsuire/23_containers/unordered_map/erase/1.cc: Likewise.
         * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
         * testsuite/23_containers/unordered_multiset/erase/2.cc: New.
         * testsuite/23_containers/unordered_multimap/erase/2.cc: New.

Tested under linux x86_64.

Ok to commit in trunk ?

François
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hashtable.patch
Type: text/x-patch
Size: 23648 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20111128/e4156f3b/attachment.bin>


More information about the Libstdc++ mailing list