]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libstdc++-v3/include/debug/unordered_map
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / include / debug / unordered_map
index 6dde32ae3befe6b595b403ce6ca05af4a92ec63f..7be1d2ee95267f542056962c46e2535176a41125 100644 (file)
@@ -1,6 +1,6 @@
 // Debugging unordered_map/unordered_multimap implementation -*- C++ -*-
 
-// Copyright (C) 2003-2019 Free Software Foundation, Inc.
+// Copyright (C) 2003-2020 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -611,7 +611,7 @@ namespace __debug
       _M_check_rehashed(size_type __prev_count)
       {
        if (__prev_count != this->bucket_count())
-         this->_M_invalidate_locals();
+         this->_M_invalidate_all();
       }
 
       void
@@ -651,6 +651,8 @@ namespace __debug
           typename _Pred = equal_to<__iter_key_t<_InputIterator>>,
           typename _Allocator = allocator<__iter_to_alloc_t<_InputIterator>>,
           typename = _RequireInputIter<_InputIterator>,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
+          typename = _RequireNotAllocator<_Pred>,
           typename = _RequireAllocator<_Allocator>>
     unordered_map(_InputIterator, _InputIterator,
                  typename unordered_map<int, int>::size_type = {},
@@ -662,6 +664,8 @@ namespace __debug
   template<typename _Key, typename _Tp, typename _Hash = hash<_Key>,
           typename _Pred = equal_to<_Key>,
           typename _Allocator = allocator<pair<const _Key, _Tp>>,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
+          typename = _RequireNotAllocator<_Pred>,
           typename = _RequireAllocator<_Allocator>>
     unordered_map(initializer_list<pair<_Key, _Tp>>,
                  typename unordered_map<int, int>::size_type = {},
@@ -691,6 +695,7 @@ namespace __debug
 
   template<typename _InputIterator, typename _Hash, typename _Allocator,
           typename = _RequireInputIter<_InputIterator>,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
           typename = _RequireAllocator<_Allocator>>
     unordered_map(_InputIterator, _InputIterator,
                  typename unordered_map<int, int>::size_type,
@@ -712,6 +717,7 @@ namespace __debug
     -> unordered_map<_Key, _Tp, hash<_Key>, equal_to<_Key>, _Allocator>;
 
   template<typename _Key, typename _Tp, typename _Hash, typename _Allocator,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
           typename = _RequireAllocator<_Allocator>>
     unordered_map(initializer_list<pair<_Key, _Tp>>,
                  typename unordered_map<int, int>::size_type,
@@ -752,7 +758,8 @@ namespace __debug
       : public __gnu_debug::_Safe_container<
        unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>, _Alloc,
        __gnu_debug::_Safe_unordered_container>,
-       public _GLIBCXX_STD_C::unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>
+       public _GLIBCXX_STD_C::unordered_multimap<
+       _Key, _Tp, _Hash, _Pred, _Alloc>
     {
       typedef _GLIBCXX_STD_C::unordered_multimap<_Key, _Tp, _Hash,
                                                 _Pred, _Alloc>         _Base;
@@ -1210,7 +1217,7 @@ namespace __debug
       _M_check_rehashed(size_type __prev_count)
       {
        if (__prev_count != this->bucket_count())
-         this->_M_invalidate_locals();
+         this->_M_invalidate_all();
       }
 
       void
@@ -1250,6 +1257,8 @@ namespace __debug
           typename _Pred = equal_to<__iter_key_t<_InputIterator>>,
           typename _Allocator = allocator<__iter_to_alloc_t<_InputIterator>>,
           typename = _RequireInputIter<_InputIterator>,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
+          typename = _RequireNotAllocator<_Pred>,
           typename = _RequireAllocator<_Allocator>>
     unordered_multimap(_InputIterator, _InputIterator,
                       unordered_multimap<int, int>::size_type = {},
@@ -1262,6 +1271,8 @@ namespace __debug
   template<typename _Key, typename _Tp, typename _Hash = hash<_Key>,
           typename _Pred = equal_to<_Key>,
           typename _Allocator = allocator<pair<const _Key, _Tp>>,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
+          typename = _RequireNotAllocator<_Pred>,
           typename = _RequireAllocator<_Allocator>>
     unordered_multimap(initializer_list<pair<_Key, _Tp>>,
                       unordered_multimap<int, int>::size_type = {},
@@ -1290,6 +1301,7 @@ namespace __debug
 
   template<typename _InputIterator, typename _Hash, typename _Allocator,
           typename = _RequireInputIter<_InputIterator>,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
           typename = _RequireAllocator<_Allocator>>
     unordered_multimap(_InputIterator, _InputIterator,
                       unordered_multimap<int, int>::size_type, _Hash,
@@ -1311,6 +1323,7 @@ namespace __debug
     -> unordered_multimap<_Key, _Tp, hash<_Key>, equal_to<_Key>, _Allocator>;
 
   template<typename _Key, typename _Tp, typename _Hash, typename _Allocator,
+          typename = _RequireNotAllocatorOrIntegral<_Hash>,
           typename = _RequireAllocator<_Allocator>>
     unordered_multimap(initializer_list<pair<_Key, _Tp>>,
                       unordered_multimap<int, int>::size_type,