diff --git a/doc/changes.qbk b/doc/changes.qbk
index 45267739..03fe1987 100644
--- a/doc/changes.qbk
+++ b/doc/changes.qbk
@@ -281,7 +281,6 @@ C++11 support has resulted in some breaking changes:
[h2 Boost 1.63.0]
-* Implement missing allocator aware constructors.
* Check hint iterator in `insert`/`emplace_hint`.
* Fix some warnings, mostly in the tests.
* Manually write out `emplace_args` for small numbers of arguments -
diff --git a/doc/ref.php b/doc/ref.php
index 8ca01919..d2fb2b42 100644
--- a/doc/ref.php
+++ b/doc/ref.php
@@ -246,12 +246,7 @@ EOL;
allocator_type()
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
+ Constructs an empty container with at least n buckets, using hf as the hash function, eq as the key equality predicate, a as the allocator and a maximum load factor of 1.0 and inserts the elements from [f, l) into it.
If the defaults are used, hasher
, key_equal
and
@@ -315,168 +310,6 @@ EOL;
Constructs an container, copying x
's contained elements, hash function, predicate, maximum load factor, but using allocator a
.
-
-
- &&
-
-
- Allocator const&
-
-
- Construct a container moving x
's contained elements, and having the hash function, predicate and maximum load factor, but using allocate a
.
-
-
- This is implemented using Boost.Move.
-
-
-
- value_type
is move insertable.
-
-
-
-
-
- initializer_list<value_type>
-
-
- size_type
- implementation-defined
-
-
- hasher const&
- hasher()
-
-
- key_equal const&
- key_equal()
-
-
- allocator_type const&
- allocator_type()
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from il
into it.
-
-
-
- If the defaults are used, hasher
, key_equal
and
- allocator_type
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default hash function and key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- hasher
and key_equal
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using a
as the allocator, with the
- default hash function and key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- hasher
, key_equal
need to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- a
as the allocator, with the
- default key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
The destructor is applied to every element, and all memory is deallocated
diff --git a/doc/ref.xml b/doc/ref.xml
index cb77d263..d03e8dd3 100644
--- a/doc/ref.xml
+++ b/doc/ref.xml
@@ -187,12 +187,7 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
allocator_type()
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
+ Constructs an empty container with at least n buckets, using hf as the hash function, eq as the key equality predicate, a as the allocator and a maximum load factor of 1.0 and inserts the elements from [f, l) into it.
If the defaults are used, hasher
, key_equal
and
@@ -256,168 +251,6 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Constructs an container, copying x
's contained elements, hash function, predicate, maximum load factor, but using allocator a
.
-
-
- unordered_set &&
-
-
- Allocator const&
-
-
- Construct a container moving x
's contained elements, and having the hash function, predicate and maximum load factor, but using allocate a
.
-
-
- This is implemented using Boost.Move.
-
-
-
- value_type
is move insertable.
-
-
-
-
-
- initializer_list<value_type>
-
-
- size_type
- implementation-defined
-
-
- hasher const&
- hasher()
-
-
- key_equal const&
- key_equal()
-
-
- allocator_type const&
- allocator_type()
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from il
into it.
-
-
-
- If the defaults are used, hasher
, key_equal
and
- allocator_type
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default hash function and key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- hasher
and key_equal
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using a
as the allocator, with the
- default hash function and key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- hasher
, key_equal
need to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- a
as the allocator, with the
- default key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
The destructor is applied to every element, and all memory is deallocated
@@ -1428,12 +1261,7 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
allocator_type()
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
+ Constructs an empty container with at least n buckets, using hf as the hash function, eq as the key equality predicate, a as the allocator and a maximum load factor of 1.0 and inserts the elements from [f, l) into it.
If the defaults are used, hasher
, key_equal
and
@@ -1497,168 +1325,6 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Constructs an container, copying x
's contained elements, hash function, predicate, maximum load factor, but using allocator a
.
-
-
- unordered_multiset &&
-
-
- Allocator const&
-
-
- Construct a container moving x
's contained elements, and having the hash function, predicate and maximum load factor, but using allocate a
.
-
-
- This is implemented using Boost.Move.
-
-
-
- value_type
is move insertable.
-
-
-
-
-
- initializer_list<value_type>
-
-
- size_type
- implementation-defined
-
-
- hasher const&
- hasher()
-
-
- key_equal const&
- key_equal()
-
-
- allocator_type const&
- allocator_type()
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from il
into it.
-
-
-
- If the defaults are used, hasher
, key_equal
and
- allocator_type
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default hash function and key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- hasher
and key_equal
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using a
as the allocator, with the
- default hash function and key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- hasher
, key_equal
need to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- a
as the allocator, with the
- default key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
The destructor is applied to every element, and all memory is deallocated
@@ -2678,12 +2344,7 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
allocator_type()
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
+ Constructs an empty container with at least n buckets, using hf as the hash function, eq as the key equality predicate, a as the allocator and a maximum load factor of 1.0 and inserts the elements from [f, l) into it.
If the defaults are used, hasher
, key_equal
and
@@ -2747,168 +2408,6 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Constructs an container, copying x
's contained elements, hash function, predicate, maximum load factor, but using allocator a
.
-
-
- unordered_map &&
-
-
- Allocator const&
-
-
- Construct a container moving x
's contained elements, and having the hash function, predicate and maximum load factor, but using allocate a
.
-
-
- This is implemented using Boost.Move.
-
-
-
- value_type
is move insertable.
-
-
-
-
-
- initializer_list<value_type>
-
-
- size_type
- implementation-defined
-
-
- hasher const&
- hasher()
-
-
- key_equal const&
- key_equal()
-
-
- allocator_type const&
- allocator_type()
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from il
into it.
-
-
-
- If the defaults are used, hasher
, key_equal
and
- allocator_type
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default hash function and key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- hasher
and key_equal
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using a
as the allocator, with the
- default hash function and key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- hasher
, key_equal
need to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- a
as the allocator, with the
- default key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
The destructor is applied to every element, and all memory is deallocated
@@ -3966,12 +3465,7 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
allocator_type()
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
+ Constructs an empty container with at least n buckets, using hf as the hash function, eq as the key equality predicate, a as the allocator and a maximum load factor of 1.0 and inserts the elements from [f, l) into it.
If the defaults are used, hasher
, key_equal
and
@@ -4035,168 +3529,6 @@ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Constructs an container, copying x
's contained elements, hash function, predicate, maximum load factor, but using allocator a
.
-
-
- unordered_multimap &&
-
-
- Allocator const&
-
-
- Construct a container moving x
's contained elements, and having the hash function, predicate and maximum load factor, but using allocate a
.
-
-
- This is implemented using Boost.Move.
-
-
-
- value_type
is move insertable.
-
-
-
-
-
- initializer_list<value_type>
-
-
- size_type
- implementation-defined
-
-
- hasher const&
- hasher()
-
-
- key_equal const&
- key_equal()
-
-
- allocator_type const&
- allocator_type()
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- eq
as the key equality predicate,
- a
as the allocator and a maximum load factor of 1.0
- and inserts the elements from il
into it.
-
-
-
- If the defaults are used, hasher
, key_equal
and
- allocator_type
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default hash function and key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- hasher
and key_equal
need to be DefaultConstructible
.
-
-
-
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- size() == 0
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- the default key equality predicate,
- a
as the allocator and a maximum load factor of 1.0.
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using a
as the allocator, with the
- default hash function and key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- hasher
, key_equal
need to be DefaultConstructible
.
-
-
-
-
-
-
-
-
-
- InputIterator
-
-
- InputIterator
-
-
- size_type
-
-
- hasher const&
-
-
- allocator_type const&
-
-
- Constructs an empty container with at least n
buckets,
- using hf
as the hash function,
- a
as the allocator, with the
- default key equality predicate
- and a maximum load factor of 1.0
- and inserts the elements from [f, l) into it.
-
-
-
- key_equal
needs to be DefaultConstructible
.
-
-
-
The destructor is applied to every element, and all memory is deallocated
diff --git a/include/boost/unordered/unordered_map.hpp b/include/boost/unordered/unordered_map.hpp
index 75b39d0f..fc6fbe0e 100644
--- a/include/boost/unordered/unordered_map.hpp
+++ b/include/boost/unordered/unordered_map.hpp
@@ -108,19 +108,6 @@ namespace unordered
const key_equal&,
const allocator_type&);
- template
- unordered_map(
- InputIt, InputIt,
- size_type,
- const hasher&,
- const allocator_type&);
-
- template
- unordered_map(
- InputIt, InputIt,
- size_type,
- const allocator_type&);
-
// copy/move constructors
unordered_map(unordered_map const&);
@@ -152,15 +139,6 @@ namespace unordered
const hasher& = hasher(),
const key_equal&l = key_equal(),
const allocator_type& = allocator_type());
- unordered_map(
- std::initializer_list,
- size_type,
- const hasher&,
- const allocator_type&);
- unordered_map(
- std::initializer_list,
- size_type,
- const allocator_type&);
#endif
// Destructor
@@ -592,13 +570,6 @@ namespace unordered
const hasher& = hasher(),
const key_equal& = key_equal(),
const allocator_type& = allocator_type());
- explicit unordered_multimap(
- size_type,
- const allocator_type&);
- explicit unordered_multimap(
- size_type,
- const hasher&,
- const allocator_type&);
explicit unordered_multimap(allocator_type const&);
@@ -620,25 +591,11 @@ namespace unordered
const key_equal&,
const allocator_type&);
- template
- unordered_multimap(
- InputIt, InputIt,
- size_type,
- const hasher&,
- const allocator_type&);
-
- template
- unordered_multimap(
- InputIt, InputIt,
- size_type,
- const allocator_type&);
-
// copy/move constructors
unordered_multimap(unordered_multimap const&);
unordered_multimap(unordered_multimap const&, allocator_type const&);
- unordered_multimap(BOOST_RV_REF(unordered_multimap), allocator_type const&);
#if defined(BOOST_UNORDERED_USE_MOVE)
unordered_multimap(BOOST_RV_REF(unordered_multimap) other)
@@ -654,6 +611,10 @@ namespace unordered
}
#endif
+#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
+ unordered_multimap(unordered_multimap&&, allocator_type const&);
+#endif
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
unordered_multimap(
std::initializer_list,
@@ -661,15 +622,6 @@ namespace unordered
const hasher& = hasher(),
const key_equal&l = key_equal(),
const allocator_type& = allocator_type());
- unordered_multimap(
- std::initializer_list,
- size_type,
- const hasher&,
- const allocator_type&);
- unordered_multimap(
- std::initializer_list,
- size_type,
- const allocator_type&);
#endif
// Destructor
@@ -1107,31 +1059,6 @@ namespace unordered
table_.insert_range(f, l);
}
- template
- template
- unordered_map::unordered_map(
- InputIt f, InputIt l,
- size_type n,
- const hasher &hf,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hf, key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
- template
- template
- unordered_map::unordered_map(
- InputIt f, InputIt l,
- size_type n,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
template
unordered_map::~unordered_map() BOOST_NOEXCEPT {}
@@ -1167,30 +1094,6 @@ namespace unordered
table_.insert_range(list.begin(), list.end());
}
- template
- unordered_map::unordered_map(
- std::initializer_list list, size_type n,
- const hasher &hf, const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hf, key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
- template
- unordered_map::unordered_map(
- std::initializer_list list, size_type n,
- const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
template
unordered_map& unordered_map::operator=(
std::initializer_list list)
@@ -1489,31 +1392,6 @@ namespace unordered
table_.insert_range(f, l);
}
- template
- template
- unordered_multimap::unordered_multimap(
- InputIt f, InputIt l,
- size_type n,
- const hasher &hf,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hf, key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
- template
- template
- unordered_multimap::unordered_multimap(
- InputIt f, InputIt l,
- size_type n,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
template
unordered_multimap::~unordered_multimap() BOOST_NOEXCEPT {}
@@ -1549,30 +1427,6 @@ namespace unordered
table_.insert_range(list.begin(), list.end());
}
- template
- unordered_multimap::unordered_multimap(
- std::initializer_list list, size_type n,
- const hasher &hf, const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hf, key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
- template
- unordered_multimap::unordered_multimap(
- std::initializer_list list, size_type n,
- const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
template
unordered_multimap& unordered_multimap::operator=(
std::initializer_list list)
diff --git a/include/boost/unordered/unordered_set.hpp b/include/boost/unordered/unordered_set.hpp
index 044cf1ac..aa9911bc 100644
--- a/include/boost/unordered/unordered_set.hpp
+++ b/include/boost/unordered/unordered_set.hpp
@@ -105,19 +105,6 @@ namespace unordered
const key_equal&,
const allocator_type&);
- template
- unordered_set(
- InputIt, InputIt,
- size_type,
- const hasher&,
- const allocator_type&);
-
- template
- unordered_set(
- InputIt, InputIt,
- size_type,
- const allocator_type&);
-
// copy/move constructors
unordered_set(unordered_set const&);
@@ -149,15 +136,6 @@ namespace unordered
const hasher& = hasher(),
const key_equal&l = key_equal(),
const allocator_type& = allocator_type());
- unordered_set(
- std::initializer_list,
- size_type,
- const hasher&,
- const allocator_type&);
- unordered_set(
- std::initializer_list,
- size_type,
- const allocator_type&);
#endif
// Destructor
@@ -596,19 +574,6 @@ namespace unordered
const key_equal&,
const allocator_type&);
- template
- unordered_multiset(
- InputIt, InputIt,
- size_type,
- const hasher&,
- const allocator_type&);
-
- template
- unordered_multiset(
- InputIt, InputIt,
- size_type,
- const allocator_type&);
-
// copy/move constructors
unordered_multiset(unordered_multiset const&);
@@ -640,15 +605,6 @@ namespace unordered
const hasher& = hasher(),
const key_equal&l = key_equal(),
const allocator_type& = allocator_type());
- unordered_multiset(
- std::initializer_list,
- size_type,
- const hasher&,
- const allocator_type&);
- unordered_multiset(
- std::initializer_list,
- size_type,
- const allocator_type&);
#endif
// Destructor
@@ -1077,31 +1033,6 @@ namespace unordered
table_.insert_range(f, l);
}
- template
- template
- unordered_set::unordered_set(
- InputIt f, InputIt l,
- size_type n,
- const hasher &hf,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hf, key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
- template
- template
- unordered_set::unordered_set(
- InputIt f, InputIt l,
- size_type n,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
template
unordered_set::~unordered_set() BOOST_NOEXCEPT {}
@@ -1137,30 +1068,6 @@ namespace unordered
table_.insert_range(list.begin(), list.end());
}
- template
- unordered_set::unordered_set(
- std::initializer_list list, size_type n,
- const hasher &hf, const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hf, key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
- template
- unordered_set::unordered_set(
- std::initializer_list list, size_type n,
- const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
template
unordered_set& unordered_set::operator=(
std::initializer_list list)
@@ -1410,31 +1317,6 @@ namespace unordered
table_.insert_range(f, l);
}
- template
- template
- unordered_multiset::unordered_multiset(
- InputIt f, InputIt l,
- size_type n,
- const hasher &hf,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hf, key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
- template
- template
- unordered_multiset::unordered_multiset(
- InputIt f, InputIt l,
- size_type n,
- const allocator_type &a)
- : table_(boost::unordered::detail::initial_size(f, l, n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(f, l);
- }
-
template
unordered_multiset::~unordered_multiset() BOOST_NOEXCEPT {}
@@ -1470,30 +1352,6 @@ namespace unordered
table_.insert_range(list.begin(), list.end());
}
- template
- unordered_multiset::unordered_multiset(
- std::initializer_list list, size_type n,
- const hasher &hf, const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hf, key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
- template
- unordered_multiset::unordered_multiset(
- std::initializer_list list, size_type n,
- const allocator_type &a)
- : table_(
- boost::unordered::detail::initial_size(
- list.begin(), list.end(), n),
- hasher(), key_equal(), a)
- {
- table_.insert_range(list.begin(), list.end());
- }
-
template
unordered_multiset& unordered_multiset::operator=(
std::initializer_list list)
diff --git a/test/unordered/compile_tests.hpp b/test/unordered/compile_tests.hpp
index fb9a864d..12c72c9e 100644
--- a/test/unordered/compile_tests.hpp
+++ b/test/unordered/compile_tests.hpp
@@ -111,7 +111,6 @@ void container_test(X& r, T const&)
sink(X(a));
X u2(a);
X u3 = a;
- X u4(rvalue(a_const));
a.swap(b);
boost::swap(a, b);
@@ -121,24 +120,12 @@ void container_test(X& r, T const&)
typedef BOOST_DEDUCED_TYPENAME X::allocator_type allocator_type;
test::check_return_type::equals(a_const.get_allocator());
-
- allocator_type m = a.get_allocator();
- sink(X(m));
- X c(m);
- sink(X(a_const, m));
- X c2(a_const, m);
- sink(X(rvalue(a_const), m));
- X c3(rvalue(a_const), m);
// Avoid unused variable warnings:
sink(u);
sink(u2);
sink(u3);
- sink(u4);
- sink(c);
- sink(c2);
- sink(c3);
}
template
@@ -462,15 +449,14 @@ void unordered_copyable_test(X& x, Key& k, T& t, Hash& hf, Pred& eq)
typedef BOOST_DEDUCED_TYPENAME X::iterator iterator;
typedef BOOST_DEDUCED_TYPENAME X::const_iterator const_iterator;
- typedef BOOST_DEDUCED_TYPENAME X::allocator_type allocator_type;
X a;
- allocator_type m = a.get_allocator();
BOOST_DEDUCED_TYPENAME X::value_type* i = 0;
BOOST_DEDUCED_TYPENAME X::value_type* j = 0;
X(i, j, 10, hf, eq);
+
X a5(i, j, 10, hf, eq);
X(i, j, 10, hf);
X a6(i, j, 10, hf);
@@ -479,22 +465,6 @@ void unordered_copyable_test(X& x, Key& k, T& t, Hash& hf, Pred& eq)
X(i, j);
X a8(i, j);
- X(i, j, 10, hf, m);
- X(i, j, 10, m);
- //X(i, j, m);
-
-#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
- std::size_t min_buckets = 10;
- X({t});
- X({t}, min_buckets);
- X({t}, min_buckets, hf);
- X({t}, min_buckets, hf, eq);
- //X({t}, m);
- X({t}, min_buckets, m);
- X({t}, min_buckets, hf, m);
- X({t}, min_buckets, hf, eq, m);
-#endif
-
X const b;
sink(X(b));
X a9(b);