-
- Downloads
libstdc++: Always instantiate key_type to compute hash code [PR115285]
Even if it is possible to compute a hash code from the inserted arguments we need to instantiate the key_type to guaranty hash code consistency. Preserve the lazy instantiation of the mapped_type in the context of associative containers. libstdc++-v3/ChangeLog: PR libstdc++/115285 * include/bits/hashtable.h (_S_forward_key<_Kt>): Always return a temporary key_type instance. * testsuite/23_containers/unordered_map/96088.cc: Adapt to additional instanciation. Also check that mapped_type is not instantiated when there is no insertion. * testsuite/23_containers/unordered_multimap/96088.cc: Adapt to additional instanciation. * testsuite/23_containers/unordered_multiset/96088.cc: Likewise. * testsuite/23_containers/unordered_set/96088.cc: Likewise. * testsuite/23_containers/unordered_set/pr115285.cc: New test case.
Showing
- libstdc++-v3/include/bits/hashtable.h 1 addition, 4 deletionslibstdc++-v3/include/bits/hashtable.h
- libstdc++-v3/testsuite/23_containers/unordered_map/96088.cc 43 additions, 43 deletionslibstdc++-v3/testsuite/23_containers/unordered_map/96088.cc
- libstdc++-v3/testsuite/23_containers/unordered_multimap/96088.cc 8 additions, 9 deletions...++-v3/testsuite/23_containers/unordered_multimap/96088.cc
- libstdc++-v3/testsuite/23_containers/unordered_multiset/96088.cc 2 additions, 3 deletions...++-v3/testsuite/23_containers/unordered_multiset/96088.cc
- libstdc++-v3/testsuite/23_containers/unordered_set/96088.cc 7 additions, 8 deletionslibstdc++-v3/testsuite/23_containers/unordered_set/96088.cc
- libstdc++-v3/testsuite/23_containers/unordered_set/pr115285.cc 40 additions, 0 deletions...dc++-v3/testsuite/23_containers/unordered_set/pr115285.cc
Loading
Please register or sign in to comment