mirror of
https://github.com/boostorg/fusion.git
synced 2025-07-30 20:47:31 +02:00
Fix overload resolution failure.
Because the ctor `deque(U &&...)` is also performed as `deque(U const&...)`.
This commit is contained in:
@ -127,12 +127,6 @@ namespace boost { namespace fusion
|
|||||||
: base(detail::deque_keyed_values<Head, Tail...>::construct(head, tail...))
|
: base(detail::deque_keyed_values<Head, Tail...>::construct(head, tail...))
|
||||||
{}
|
{}
|
||||||
|
|
||||||
template <typename Head_, typename ...Tail_>
|
|
||||||
BOOST_FUSION_GPU_ENABLED
|
|
||||||
explicit deque(Head_ const& head, Tail_ const&... tail)
|
|
||||||
: base(detail::deque_keyed_values<Head_, Tail_...>::construct(head, tail...))
|
|
||||||
{}
|
|
||||||
|
|
||||||
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
||||||
template <typename Head_, typename ...Tail_, typename =
|
template <typename Head_, typename ...Tail_, typename =
|
||||||
typename enable_if<is_convertible<Head_, Head> >::type
|
typename enable_if<is_convertible<Head_, Head> >::type
|
||||||
@ -142,6 +136,14 @@ namespace boost { namespace fusion
|
|||||||
: base(detail::deque_keyed_values<Head, Tail...>
|
: base(detail::deque_keyed_values<Head, Tail...>
|
||||||
::forward_(BOOST_FUSION_FWD_ELEM(Head_, head), BOOST_FUSION_FWD_ELEM(Tail_, tail)...))
|
::forward_(BOOST_FUSION_FWD_ELEM(Head_, head), BOOST_FUSION_FWD_ELEM(Tail_, tail)...))
|
||||||
{}
|
{}
|
||||||
|
#else
|
||||||
|
template <typename Head_, typename ...Tail_, typename =
|
||||||
|
typename enable_if<is_convertible<Head_, Head> >::type
|
||||||
|
>
|
||||||
|
BOOST_FUSION_GPU_ENABLED
|
||||||
|
explicit deque(Head_ const& head, Tail_ const&... tail)
|
||||||
|
: base(detail::deque_keyed_values<Head_, Tail_...>::construct(head, tail...))
|
||||||
|
{}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
template <typename Sequence>
|
template <typename Sequence>
|
||||||
|
Reference in New Issue
Block a user