From c8224c8bdfc5e96a85a4e531ff1fa681af24873c Mon Sep 17 00:00:00 2001 From: Joel de Guzman Date: Wed, 18 Apr 2012 01:18:10 +0000 Subject: [PATCH] deque fix for ambiguity and making ctors explicit [SVN r78056] --- include/boost/fusion/container/deque/cpp11_deque.hpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/include/boost/fusion/container/deque/cpp11_deque.hpp b/include/boost/fusion/container/deque/cpp11_deque.hpp index bcb6c6c8..f4f645ae 100644 --- a/include/boost/fusion/container/deque/cpp11_deque.hpp +++ b/include/boost/fusion/container/deque/cpp11_deque.hpp @@ -31,7 +31,9 @@ namespace boost { namespace fusion struct deque_tag; template - struct deque; + struct deque : detail::nil_keyed_element + { + }; template struct deque @@ -49,22 +51,18 @@ namespace boost { namespace fusion deque() {} - explicit deque(typename add_reference::type>::type elem) - : base(elem, detail::nil_keyed_element()) - {} - template deque(deque const& seq) : base(seq) {} - deque(typename add_reference::type>::type head + explicit deque(typename add_reference::type>::type head , typename add_reference::type>::type... tail) : base(detail::deque_keyed_values::call(head, tail...)) {} template - deque(Sequence const& seq + explicit deque(Sequence const& seq , typename disable_if >::type* /*dummy*/ = 0) : base(base::from_iterator(fusion::begin(seq))) {}