Unordered: Fix forwarding from emplace.

[SVN r75856]
This commit is contained in:
Daniel James
2011-12-07 19:18:11 +00:00
parent a61e876300
commit 8f982c8b27
2 changed files with 73 additions and 25 deletions

View File

@@ -249,7 +249,8 @@ namespace unordered
std::pair<iterator, bool> emplace(BOOST_FWD_REF(A0) a0)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0))
);
}
@@ -257,7 +258,8 @@ namespace unordered
iterator emplace_hint(const_iterator, BOOST_FWD_REF(A0) a0)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0))
).first;
}
@@ -267,7 +269,9 @@ namespace unordered
BOOST_FWD_REF(A1) a1)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1))
);
}
@@ -277,7 +281,9 @@ namespace unordered
BOOST_FWD_REF(A1) a1)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1))
).first;
}
@@ -288,7 +294,10 @@ namespace unordered
BOOST_FWD_REF(A2) a2)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1, a2)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1),
boost::forward<A2>(a2))
);
}
@@ -299,7 +308,10 @@ namespace unordered
BOOST_FWD_REF(A2) a2)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1, a2)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1),
boost::forward<A2>(a2))
).first;
}
@@ -683,7 +695,8 @@ namespace unordered
iterator emplace(BOOST_FWD_REF(A0) a0)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0))
);
}
@@ -691,7 +704,8 @@ namespace unordered
iterator emplace_hint(const_iterator, BOOST_FWD_REF(A0) a0)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0))
);
}
@@ -701,7 +715,9 @@ namespace unordered
BOOST_FWD_REF(A1) a1)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1))
);
}
@@ -711,7 +727,9 @@ namespace unordered
BOOST_FWD_REF(A1) a1)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1))
);
}
@@ -722,7 +740,10 @@ namespace unordered
BOOST_FWD_REF(A2) a2)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1, a2)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1),
boost::forward<A2>(a2))
);
}
@@ -733,7 +754,10 @@ namespace unordered
BOOST_FWD_REF(A2) a2)
{
return table_.emplace(
boost::unordered::detail::create_emplace_args(a0, a1, a2)
boost::unordered::detail::create_emplace_args(
boost::forward<A0>(a0),
boost::forward<A1>(a1),
boost::forward<A2>(a2))
);
}