diff --git a/include/boost/fusion/sequence/container/deque/back_extended_deque.hpp b/include/boost/fusion/sequence/container/deque/back_extended_deque.hpp index f9dbf489..f028dd1f 100644 --- a/include/boost/fusion/sequence/container/deque/back_extended_deque.hpp +++ b/include/boost/fusion/sequence/container/deque/back_extended_deque.hpp @@ -13,6 +13,7 @@ #include #include #include +#include #include #include @@ -20,7 +21,8 @@ namespace boost { namespace fusion { template struct back_extended_deque - : detail::keyed_element + : detail::keyed_element, + sequence_base > { typedef detail::keyed_element base; typedef typename Deque::next_down next_down; diff --git a/include/boost/fusion/sequence/container/deque/deque.hpp b/include/boost/fusion/sequence/container/deque/deque.hpp index cb36bb17..2dde4d81 100644 --- a/include/boost/fusion/sequence/container/deque/deque.hpp +++ b/include/boost/fusion/sequence/container/deque/deque.hpp @@ -28,6 +28,8 @@ #include #include +#include + namespace boost { namespace fusion { struct deque_tag; @@ -39,7 +41,8 @@ namespace boost { namespace fusion { template struct deque : - detail::deque_keyed_values::type + detail::deque_keyed_values::type, + sequence_base > { typedef deque_tag fusion_tag; typedef typename detail::deque_keyed_values::type base; diff --git a/include/boost/fusion/sequence/container/deque/detail/keyed_element.hpp b/include/boost/fusion/sequence/container/deque/detail/keyed_element.hpp index 0acc07bd..4244c529 100644 --- a/include/boost/fusion/sequence/container/deque/detail/keyed_element.hpp +++ b/include/boost/fusion/sequence/container/deque/detail/keyed_element.hpp @@ -9,7 +9,6 @@ #if !defined(BOOST_FUSION_DEQUE_DETAIL_KEYED_ELEMENT_26112006_1330) #define BOOST_FUSION_DEQUE_DETAIL_KEYED_ELEMENT_26112006_1330 -#include #include #include @@ -20,7 +19,6 @@ namespace boost { namespace fusion { namespace detail { struct nil_keyed_element - : sequence_base { typedef fusion_sequence_tag tag; void get(); diff --git a/include/boost/fusion/sequence/container/deque/front_extended_deque.hpp b/include/boost/fusion/sequence/container/deque/front_extended_deque.hpp index 802cb0d3..b3a3bec6 100644 --- a/include/boost/fusion/sequence/container/deque/front_extended_deque.hpp +++ b/include/boost/fusion/sequence/container/deque/front_extended_deque.hpp @@ -18,10 +18,13 @@ #include #include +#include + namespace boost { namespace fusion { template struct front_extended_deque - : detail::keyed_element + : detail::keyed_element, + sequence_base > { typedef detail::keyed_element base; typedef mpl::int_ >::value> next_down;