diff options
author | François Dumont <fdumont@gcc.gnu.org> | 2013-01-28 20:52:13 +0000 |
---|---|---|
committer | François Dumont <fdumont@gcc.gnu.org> | 2013-01-28 20:52:13 +0000 |
commit | 5b3be7cf99e5b833c073c119be2b60c84db7ec35 (patch) | |
tree | 8545a60d6c1448b1ab73d4df8cbd0068780d2f08 /gcc | |
parent | 5a579c3b65d5571b3d10d2b7e22d4c1915cc6b1c (diff) | |
download | gcc-5b3be7cf99e5b833c073c119be2b60c84db7ec35.zip gcc-5b3be7cf99e5b833c073c119be2b60c84db7ec35.tar.gz gcc-5b3be7cf99e5b833c073c119be2b60c84db7ec35.tar.bz2 |
hashtable_policy.h (_Local_iterator_base): Use _Hashtable_ebo_helper to embed functors into the local_iterator when necessary.
2013-01-28 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable_policy.h (_Local_iterator_base): Use
_Hashtable_ebo_helper to embed functors into the local_iterator
when necessary. Pass information about functors involved in hash
code by copy.
* include/bits/hashtable.h (__cache_default): Do not cache for
builtin integral types unless the hash functor is not noexcept
qualified or is not default constructible. Adapt static assertions
and local iterator instantiations.
* include/debug/unordered_set
(std::__debug::unordered_set<>::erase): Detect local iterators to
invalidate using contained node rather than generating a dummy
local_iterator instance.
(std::__debug::unordered_multiset<>::erase): Likewise.
* include/debug/unordered_map
(std::__debug::unordered_map<>::erase): Likewise.
(std::__debug::unordered_multimap<>::erase): Likewise.
* testsuite/performance/23_containers/insert_erase/41975.cc: Test
std::tr1 and std versions of unordered_set regardless of any
macro. Add test on default cache behavior.
* testsuite/performance/23_containers/insert/54075.cc: Likewise.
* testsuite/23_containers/unordered_set/instantiation_neg.cc:
Adapt line number.
* testsuite/23_containers/unordered_set/
not_default_constructible_hash_neg.cc: New.
* testsuite/23_containers/unordered_set/buckets/swap.cc: New.
From-SVN: r195517
Diffstat (limited to 'gcc')
0 files changed, 0 insertions, 0 deletions