[v3] libstdc++/57065
Paolo Carlini
paolo.carlini@oracle.com
Thu Apr 25 09:44:00 GMT 2013
Hi,
tested make check/check-debug on x86_64-linux, committed to mainline.
Thanks,
Paolo.
/////////////////////
-------------- next part --------------
2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/57065
* include/debug/unordered_map (unordered_map, unordered_multimap):
Fix default allocator type.
* include/profile/unordered_map (unordered_map, unordered_multimap):
Likewise.
* include/bits/unordered_map.h: Fix comments.
-------------- next part --------------
Index: include/bits/unordered_map.h
===================================================================
--- include/bits/unordered_map.h (revision 198275)
+++ include/bits/unordered_map.h (working copy)
@@ -75,12 +75,13 @@
*
* @ingroup unordered_associative_containers
*
- * @tparam _Key Type of key objects.
- * @tparam _Tp Type of mapped objects.
- * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
- * @tparam _Pred Predicate function object type, defaults
- * to equal_to<_Value>.
- * @tparam _Alloc Allocator type, defaults to allocator<_Key>.
+ * @tparam _Key Type of key objects.
+ * @tparam _Tp Type of mapped objects.
+ * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
+ * @tparam _Pred Predicate function object type, defaults
+ * to equal_to<_Value>.
+ * @tparam _Alloc Allocator type, defaults to
+ * std::allocator<std::pair<const _Key, _Tp>>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
@@ -786,12 +787,13 @@
*
* @ingroup unordered_associative_containers
*
- * @tparam _Key Type of key objects.
- * @tparam _Tp Type of mapped objects.
- * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
- * @tparam _Pred Predicate function object type, defaults
- * to equal_to<_Value>.
- * @tparam _Alloc Allocator type, defaults to allocator<_Key>.
+ * @tparam _Key Type of key objects.
+ * @tparam _Tp Type of mapped objects.
+ * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
+ * @tparam _Pred Predicate function object type, defaults
+ * to equal_to<_Value>.
+ * @tparam _Alloc Allocator type, defaults to
+ * std::allocator<std::pair<const _Key, _Tp>>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
Index: include/debug/unordered_map
===================================================================
--- include/debug/unordered_map (revision 198275)
+++ include/debug/unordered_map (working copy)
@@ -46,7 +46,7 @@
template<typename _Key, typename _Tp,
typename _Hash = std::hash<_Key>,
typename _Pred = std::equal_to<_Key>,
- typename _Alloc = std::allocator<_Key> >
+ typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
class unordered_map
: public _GLIBCXX_STD_C::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>,
public __gnu_debug::_Safe_unordered_container<unordered_map<_Key, _Tp,
@@ -500,7 +500,7 @@
template<typename _Key, typename _Tp,
typename _Hash = std::hash<_Key>,
typename _Pred = std::equal_to<_Key>,
- typename _Alloc = std::allocator<_Key> >
+ typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
class unordered_multimap
: public _GLIBCXX_STD_C::unordered_multimap<_Key, _Tp, _Hash,
_Pred, _Alloc>,
Index: include/profile/unordered_map
===================================================================
--- include/profile/unordered_map (revision 198275)
+++ include/profile/unordered_map (working copy)
@@ -44,9 +44,9 @@
{
/// Class std::unordered_map wrapper with performance instrumentation.
template<typename _Key, typename _Tp,
- typename _Hash = std::hash<_Key>,
+ typename _Hash = std::hash<_Key>,
typename _Pred = std::equal_to<_Key>,
- typename _Alloc = std::allocator<_Key> >
+ typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
class unordered_map
: public _GLIBCXX_STD_BASE
{
@@ -346,9 +346,9 @@
/// Class std::unordered_multimap wrapper with performance instrumentation.
template<typename _Key, typename _Tp,
- typename _Hash = std::hash<_Key>,
+ typename _Hash = std::hash<_Key>,
typename _Pred = std::equal_to<_Key>,
- typename _Alloc = std::allocator<_Key> >
+ typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
class unordered_multimap
: public _GLIBCXX_STD_BASE
{
More information about the Libstdc++
mailing list